Commit graph

144 commits

Author SHA1 Message Date
Joona Hoikkala
0633fb6b0a
Fixed behavior of wordlist:keyword separator in Windows (#240) 2020-05-16 15:49:57 +03:00
Joona Hoikkala
08ec6bad2a
Add Host information to JSON output file (#223) 2020-04-23 00:53:28 +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
Dave Walker
e4628ff481
Increase default rows per page on html report (#217)
* Increase default rows per page on html report

Previously 10 results were displayed per-page, as the
default of DataTables.  This change increases the default to
250 results per page and also adds the option for 250, 500,
1000, 2500 and ALL results.

In addition, materialize css default was blocking the
viewing of the option to display alternative results
per-page.  This is resolved by calling .formSelect as per
https://stackoverflow.com/questions/28258106/materialize-css-select-doesnt-seem-to-render

Fixes ffuf/ffuf#216

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>

* Updated CONTRIBUTORS.md to be alphabetical

Signed-off-by: Dave Walker (Daviey) <email@daviey.com>
2020-04-19 12:04:33 +03:00
helpermika
7021c2f211
Add the wordlists to the header information (#211)
* Add the wordlists to the header information (#197)

* Add the requested change
2020-04-15 13:39:01 +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
ccdd377930
Fix for #193 (#194)
* Fix for #193

* Fix for #193 - Changelog
2020-03-20 12:41:13 +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
Joona Hoikkala
2d165e6179
Prepare for 1.1.0-git (#176) 2020-02-21 22:52:23 +02:00
Joona Hoikkala
7c6b20a552
Prepare point release v1.0.2 (#175) 2020-02-21 22:46:41 +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
a5d9bb5c18
Calculate req/sec correctly when recursing (#168) 2020-02-17 01:02:00 +02:00
Joona Hoikkala
ff1bc2a3c2
Handle relative URLs in redirects properly (#167) 2020-02-17 00:56:38 +02:00
Joona Hoikkala
a19741daa6
Save POST body correctly (#161) 2020-02-09 13:29:12 +02:00
Joona Hoikkala
a3e3dc5246
Prepare v1.1 again (#154) 2020-02-02 15:32:50 +02:00
Joona Hoikkala
46755d8f7c
Prepare for point release 1.0.1 (#153) 2020-02-02 15:28:47 +02:00
Joona Hoikkala
6868aff865
Fix bug in regex matching when writing responses to file (#150)
* Fix bug in regex matching when writing responses to file

* Add changelog entry
2020-02-01 02:36:03 +02:00
Joona Hoikkala
875ee38f59
Prepare 1.1-git (#146)
* Prepare 1.1-git

* Changelog too...
2020-01-30 00:55:01 +02:00
Joona Hoikkala
bb59f50cbe
Prepare for release 1.0 (#144) 2020-01-30 00:28:28 +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
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
f5609a2d13 fuzzing input in result, resolves #76 (#124)
* regexp filter had a copy-paste error talking about size filter, fixed

* implement -mr/-fr FUZZ, detecting if fuzzed input is present in response. resolves #76

* quote regexp control characters to obtain exact matches (according to joohoi's comment)

* allow keywords as part of regexp matching/filtering

* updated changelog

Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>
2019-12-23 13:29:24 +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
d04a2d80ae
Prepare 1.0 (#105) 2019-11-16 18:34:58 +02:00
Joona Hoikkala
d4e88ade95
Prepare release 0.12 (#104) 2019-11-16 18:19:07 +02:00
Joona Hoikkala
6059ead533
Verbose banner information (#102) 2019-11-16 17:28:34 +02:00
Joona Hoikkala
ec480844a8
Add SIGTERM monitoring (#101) 2019-11-16 16:51:29 +02:00
Joona Hoikkala
3949e49b3b
Implement -v (verbose) flag (#100) 2019-11-16 16:32:11 +02:00
Joona Hoikkala
8807dc119d
Add DataTables support to HTML output (#98) 2019-11-16 15:42:25 +02:00
Joona Hoikkala
7b0542a5a7
Show RedirectLocation and full URL in output files (#97) 2019-11-16 15:29:09 +02:00
Joona Hoikkala
3ad8ce2716
Log errors to --debug-log (#95) 2019-11-16 10:45:45 +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
73922822f9
Prepare v0.12git (#89) 2019-11-11 00:10:52 +02:00
Joona Hoikkala
ba1931641c
Release 0.11 (#88) 2019-11-11 00:03:01 +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
Ossi Väänänen
8d057ea177 Match both %ext% and %EXT% in DirSearch compatibility mode (#81)
* Match both %ext% and %EXT%

* Match both %ext% and %EXT%

* Case insensitive regex search & replace
2019-10-24 13:25:07 +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
Daniel Lawson
adec6a9074 Modified thresholds on autocalibrate filter to > 0 instead of > 1 (#80) 2019-10-15 15:35:20 +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
Joona Hoikkala
0210d423de
Prepare v0.11git (#42) 2019-06-17 00:50:10 +03:00
Joona Hoikkala
58069582ca
Release010 (#41)
* Prepare release 0.10

* Readme fixes
2019-06-17 00:46:43 +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
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
45bffbffca
Refactor progress functionality to correct modules (#33) 2019-04-28 01:08:09 +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
11ece7db17
Release 0.9 done (#28) 2019-04-13 16:28:47 +03:00
Joona Hoikkala
4ba34331ae
Release 0.9 (#27) 2019-04-13 16:24:43 +03:00
Joona Hoikkala
5cae980767
Add wildcard option to status code matcher (#26) 2019-04-13 16:02:00 +03:00
Joona Hoikkala
87c4e11674 Correctly add entries without extension identifier 2019-04-11 01:46:48 +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
SolomonSklash
ddf2a4d5d5 Fixed typo. (#16)
Recieving -> Receiving.
2019-04-05 10:43:23 +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
a8b7b56348
Bump version (#10) 2019-03-30 01:54:27 +02:00
Joona Hoikkala
81c398eeb0
Make regex filter match headers too 2019-03-30 01:38:37 +02: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
Joona Hoikkala
e9f2dfd1c9
New flag to stop on spurious 403 responses 2019-03-28 14:23:33 +02:00
Joona Hoikkala
3f3b5c31db
Prepare for v0.8 2019-01-21 22:43:50 +02:00
Joona Hoikkala
582aa00833
Added proxy functionality 2019-01-21 22:43:04 +02:00
Joona Hoikkala
4563a93b46
Add delay option to ffuf 2018-12-06 00:57:42 +02:00
Joona Hoikkala
66c46c35c0
Bump the version and add -V 2018-11-15 10:47:43 +02:00
Joona Hoikkala
c9217e39f5
Get rid of the last external dependency 2018-11-15 00:18:43 +02:00
Joona Hoikkala
4116bedc92
Prepare for release 0.5 2018-11-14 22:38:56 +02:00
Joona Hoikkala
13ab12dd0a
Tests and performance fixes 2018-11-14 22:38:13 +02:00
Joona Hoikkala
a686f49ccb
Release v0.4 2018-11-12 23:28:02 +02:00
Joona Hoikkala
c304f04308
Request rate stats and performance tuning 2018-11-12 20:51:29 +02:00
Joona Hoikkala
8b2291dcfe
Added regexp filter / matcher 2018-11-12 19:47:49 +02:00
Joona Hoikkala
1a8bcdfdfc
Correct error messages for filters/matchers 2018-11-12 19:07:31 +02:00
Joona Hoikkala
fbafd82c62
Add word filter / matcher 2018-11-12 19:06:49 +02:00
Joona Hoikkala
36a0a103e7
Colors 2018-11-09 15:21:23 +02:00
Joona Hoikkala
cee6b2f25b
Progress and duration 2018-11-09 14:26:55 +02:00
Joona Hoikkala
d869393b81
Added version to user-agent string and prepared for next release 2018-11-08 16:16:55 +02:00
Joona Hoikkala
a3c59eeb09
Higher timeout value for requests 2018-11-08 16:07:43 +02:00
Joona Hoikkala
8287881a84
Print error messages to stderr to help with piping -s output 2018-11-08 15:54:12 +02:00
Joona Hoikkala
466a011db9
Added POST data fuzzing 2018-11-08 11:49:06 +02:00
Joona Hoikkala
ad2296f55b
Initial commit, v0.1 2018-11-08 11:26:32 +02:00