Commit graph

66 commits

Author SHA1 Message Date
Joona Hoikkala
a4b3154484
Better pre-flight errors (#288) 2020-08-30 15:22:06 +03:00
Joona Hoikkala
0ce941326b
Throttle rate of requests per second (#287)
* Add the functionality to perform req/sec limiting (for humans)

* Add documentation
2020-08-30 13:51:41 +03:00
C_Sto
27fcbee730
fix file get thing (#226)
* fix file get thing

* update doco
2020-07-23 12:15:36 +03:00
Joona Hoikkala
0633fb6b0a
Fixed behavior of wordlist:keyword separator in Windows (#240) 2020-05-16 15:49:57 +03:00
Dave Walker
88720dfdc9
Support outputting all file formats concurrently (#218)
* Support outputting all file formats concurrently

Previously ffuf would allow outputting to a single
file-format, ie Markdown (md), json or HTML.  It was not
possible to output in multiple formats in the same
execution.

This change allows specifying an output (-of) of "all",
which means that the output filename (-o) is used, but the
appropriate suffix is added.

As an example,
... -of all -o output/report

Will output:
 - output/report.json
 - output/report.html
 - output/report.csv
 - ... etc

Fixes ffuf/ffuf#215

Signed-off-by: Dave Walker (Daviey) <email@daviey.com>

* Updated Changelog and added myself to CONTRIBUTORS

Signed-off-by: Dave Walker (Daviey) <email@daviey.com>

* Fix file extension for 'ecsv' when 'all' is used

.. And fix CONTRIBUTORS.md to be alphabetical

Signed-off-by: Dave Walker (Daviey) <email@daviey.com>
2020-04-19 12:11:15 +03:00
bjhulst
ef1aac3a1e
Feature178 (#186)
* feature 178

* sync

* sync

* sync

* sync

Co-authored-by: bjhulst <bjhulst>
2020-03-20 12:42:54 +02:00
Damian Schwyrz
7ffd74d87e
Fix for issue #179 (#180)
* Fix for issue #179

* additional changes after review | #179

* Further info -> README.md regarding #179 & CONTRIBUTORS.md

* Further info -> README.md regarding #179 & CONTRIBUTORS.md

* Further info -> README.md regarding #179

* Fix for removed "Changes"

* Fix for removed "Changes"
2020-02-27 15:19:07 +02:00
bjhulst
5f0d0faeb7
Make defining User-agent header case insensitive #171 (#173)
* Takes the User-Agent header from a list.

* typo

* base

* Make defining User-agent header case insensitive #171

* -whitespaces

* Make canonical http headers and set default User-Agent only once.

* clean-up

* formatting, canonical customer headers, docs updated

* cleanup

* fmt

* Checking userdefined headers for excluding in canonicalization.

* resolving one conflict

* moved logic back and less resolve conflicts

Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>
2020-02-21 22:43:19 +02:00
Joona Hoikkala
b58c30625e
Detect -u properly after last change (#174) 2020-02-19 09:04:21 +02:00
Joona Hoikkala
1e57e6d0a9
Fix issue when -request is used in conjunction with -u (#172) 2020-02-18 19:20:30 +02:00
Joona Hoikkala
afece7bf2b
Better usage information and -help. Ignore -mc default value if any matcher is manually set (#143) 2020-01-30 00:23:58 +02:00
Joona Hoikkala
b0a632e6cd
Replay matches using a chosen proxy (#140)
* Replay matches using a custom proxy

* Add changelog entry
2020-01-17 09:49:25 +02:00
Ice3man
3d8e233097 Added ignore comment option (#138)
* Added ignore comment option

* Ignore blank lines & added changelog entry
2020-01-15 11:19:18 +02:00
Ice3man
01e516988d Added raw request parsing option (#137)
* Added request body option

* Update CHANGELOG.md

* Update CONTRIBUTORS.md

* Removed typo

* Fixed the URL in path issue

* Misc changes to align to codebase
2020-01-15 11:08:24 +02:00
Joona Hoikkala
ac2b447dfd
Write configuration to output JSON (#135)
* Config to json output, filters and matchers

* optRange marshaling

* Add CHANGELOG entry
2020-01-07 18:27:43 +02:00
Shaked Klein Orbach
1b45085191 remove -k flag support, convert to dummy flag (#134)
* remove -k flag support, convert to dummy flag

* update changelog and contributors
2020-01-07 18:25:42 +02:00
Joona Hoikkala
b4adeae872
Recursive jobs support (#129) 2019-12-31 14:19:27 +02:00
Tapio Vuorinen
7032f0eb47 -maxtime cli flag to limit running time of ffuf. resolves #85 (#127) 2019-12-30 12:49:34 +02:00
Joona Hoikkala
15524003b8
Write requests and responses to filesystem if requested (#126) 2019-12-28 17:46:44 +02:00
Tapio Vuorinen
918d5dcc8f count also 429 response codes if -sa (stop on all error cases) is used (#113)
* count also 429 response codes if -sa (stop on all error cases) is used. resolves #83

* Update README.md

Co-Authored-By: Joona Hoikkala <joohoi@users.noreply.github.com>

* Update main.go

Co-Authored-By: Joona Hoikkala <joohoi@users.noreply.github.com>

* lowered the 429 threshold to 20%

Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>
2019-12-20 20:23:54 +02:00
Joona Hoikkala
c33a431716
Limit the use of -e to a single keyword (#106)
* Limit the use of extension to a single wordlist

* Update README
2019-11-16 22:22:14 +02:00
Joona Hoikkala
3949e49b3b
Implement -v (verbose) flag (#100) 2019-11-16 16:32:11 +02:00
Joona Hoikkala
7aad9c6051
Fix JSON output regression and Stdout race condition issues (#94)
* Fix json output regression and improve stdout printing

* Add changelog entry
2019-11-16 01:48:00 +02:00
Joona Hoikkala
ac141e5e34
Fix the multi wordlist bug and add a new mode of operation (#93)
* Fix the multi wordlist bug and add a new mode

* Add a README entry
2019-11-16 00:40:04 +02:00
Joona Hoikkala
5456a37f72
Multiple wordlist support (#79)
* Multiple wordlist support

* Display error correctly if wordlist file could not be opened

* Add back the redirect location

* Support multiple keywords in HTML output and fix wordlist positioning

* Support multiple wordlists for md output

* Support multiple keywords in CSV output

* Improve output for multi keyword runs

* Add changelog entry

* Switch the wordlist filename <-> keyword around to allow tab completion

* Fix the usage example in README
2019-11-10 23:30:54 +02:00
SakiiR
e200bd11f7 Added lines count to filter/matcher and stdout + csv + json (#71)
* Added HTML and Markdown output support

* Add HTML color code in HTML template

* Added lines count

* Added content lines to json + csv

* Added changelog entry

* Fixed copy paste mistake

* Changed the html report to be grepable :)

* Grepable output fixed

* Fixed lines count
2019-11-09 22:09:12 +02:00
SakiiR
826ebbc21c Added HTML and Markdown output support (#63)
* Added HTML and Markdown output support

* Add HTML color code in HTML template

* Added changelog entry

* Fixed copy paste mistake

* Changed the html report to be grepable :)

* Grepable output fixed
2019-11-08 16:18:27 +02:00
Cory
492253b67b Add option for -debug-log. (#74)
* Add options for -disable-logging and -logfile.

Both of these options have to do with the logging surrounding issues
such as #39. Where in that issue the server was returning data after
the connection was closed. Therefore, I added two options one for
completely disabling all of the internal logging functionality aka
sending it to /dev/null. Another for writing the logging information
to a file so it can be retrieved later if need be.

* Changed to automatically disable internal logging.

Per the changes requested by @joohoi, changed to a single
flag `-debug-log` which will place all of the internal logging
into the specified file. If the file fails to be opened or is
not specified it will disable the logging.

* Update readme with the changes for -debug-log.
2019-10-20 18:38:11 +03:00
Tapio Vuorinen
44723e2b06 Custom autocalibration strings (#56)
* removed dead(?) code

* Added -acc for custom auto-calibration strings. Resolves #53

* don't use the calibration url templates when custom calibration paths are given

* added changelog entry about -acc flag
2019-10-15 15:38:45 +03:00
SakiiR
081e40f97e Added redirect location in stdout output (#59)
* Added redirect location in stdout output

* Keep conditional logic outside of the resultNormal function + Better help message for redirect location

* Moved GetRedirectLocation as a Response public method

* Added changelog entry + (Redirect become ->)
2019-10-14 11:29:37 +03:00
Tapio Vuorinen
55662e607a Http verb fuzzing (#57)
* typo fix

* Allow fuzzing of http method. Resolves #54
2019-09-02 17:18:36 +03:00
Tapio Vuorinen
08c4cb4f6f Added support for using ranges in size, word count or status code matching/filtering (#47)
* allow ranges on response size matching/filtering

* allow ranges on word count matching/filtering

* allow ranges on http status matching/filtering

* documentation update about using ranges in size, word count and status code filtering/matching

* moved valuerange code to ffuf main package
2019-06-27 18:26:19 +03:00
Tapio Vuorinen
cb37501616 Support for more curl opts (-i, --data-ascii/-binary, -b/--cookie) (#38)
* added -data-ascii and -data-binary for curl compatibility

* README update

* README update regarding -i and -cookie

* README update on -data-ascii and -data-binary
2019-06-26 22:44:52 +03:00
Joona Hoikkala
8883aea432
New input provider --input-cmd (#40)
* New input provider: command

* Set env var and move to Windows and POSIX constants for shell instead of CLI flag.

* Display position instead of input payload when --input-cmd is used

* Update README

* Fix README and flags help

* Add an example to README
2019-06-17 00:42:42 +03:00
Joona Hoikkala
cab7657257
Copy as curl compatibility (#37) 2019-06-05 00:26:27 +03:00
Tapio Vuorinen
0295abb917 Wordlist standard input mode (#36)
* ignore the compiled binary

* added possibility to read wordlist from standard input with -w -

* Update README.md

Co-Authored-By: Joona Hoikkala <joohoi@users.noreply.github.com>

* Update main.go

Co-Authored-By: Joona Hoikkala <joohoi@users.noreply.github.com>

* updated changelog about the wordlist standard input mode

* Update README.md

Co-Authored-By: Joona Hoikkala <joohoi@users.noreply.github.com>
2019-06-04 15:20:31 +03:00
Joona Hoikkala
7fe5786c24
Refactor calibration and filter addition / removal to correct modules. (#34) 2019-04-28 19:36:48 +03:00
Joona Hoikkala
5264d85fc6
Update README.md and help texts (#32) 2019-04-27 10:47:24 +03:00
Corben Leo
752002d56b Add -timeout flag for customizable HTTP Request timeouts (#31)
* Add -timeout flag to specify HTTP request timeouts
2019-04-27 10:29:05 +03:00
Joona Hoikkala
4d0977a7d8
Feature to autocalibrate the size and word count filters (#30) 2019-04-20 20:46:43 +03:00
Joona Hoikkala
5cae980767
Add wildcard option to status code matcher (#26) 2019-04-13 16:02:00 +03:00
Joona Hoikkala
4b0be687f2 Add -e flag to append extensions to wordlist entries and -D for DirSearch wordlist format compatiiblity 2019-04-11 01:46:48 +03:00
Corben Leo
d1e87c3ce5 Add -e flag for Extensions. Replaces %EXT% in the given wordlist 2019-04-11 01:46:48 +03:00
Joona Hoikkala
950a9e8c8f
Fix verifytls (#22)
* Fix wording and make tls verify more intuitive

* Fix README.md
2019-04-06 18:54:27 +03:00
europa
404e413d47 skip ssl check by default (#17) 2019-04-06 18:37:42 +03:00
Joona Hoikkala
b9c9c92418
Connection error handling, and options to stop execution (#15) 2019-04-03 23:11:49 +03:00
Sebastian Lawniczak
53361352aa Add option to follow redirects (#13) 2019-04-03 12:54:32 +03:00
Sebastian Lawniczak
9934cfdfc3 Add output to CSV file (#12) 2019-04-03 12:51:42 +03:00
Joona Hoikkala
35f02c622b
Merge remote-tracking branch 'origin/master' into json_out 2019-03-30 01:09:49 +02:00
Joona Hoikkala
baa8bdb6b5
Option for JSON file output 2019-03-30 01:02:41 +02:00