Commit graph

134 commits

Author SHA1 Message Date
Joona Hoikkala
b56de007d4
Print results found during interactive mode after exiting it (#445) 2021-05-14 00:13:24 +03:00
Samuel Erb
5ad06815cd
Add TLS SNI Support (#441)
* add SNI support to ffuf

* remove change to keywordPresent

* Update CONTRIBUTORS.md

* Update CHANGELOG.md
2021-05-13 23:46:29 +03:00
Joona Hoikkala
ee0705e224
Fix an issue where output file was created regardless of -or (#444)
* Fix an issue where output file was created regardless of -or

* Add CHANGELOG entry
2021-05-13 19:07:00 +03:00
Joona Hoikkala
958f738b7d
Prepare for release v1.3.1 (#439) 2021-04-27 23:33:55 +03:00
Joona Hoikkala
33f3ecb65c
Trim the newline at the end of raw request file (#438) 2021-04-27 09:01:15 +03:00
Joona Hoikkala
25fc4e4b49
Fixed an issue with storing the matches for recursion jobs (#437) 2021-04-27 00:10:11 +03:00
Joona Hoikkala
8ffe1bd64e
Add a cli flag to disable interactive mode (#436) 2021-04-26 23:04:12 +03:00
Joona Hoikkala
aaa8f31865
Fix header canonicalization (#435) 2021-04-26 22:48:44 +03:00
Joona Hoikkala
d6b273332b
Fix size calculation (#434)
* Fix size calculation
2021-04-26 22:39:08 +03:00
Massimo Prencipe
a513e2767e Fix: Create output directory recursively instead of silently failing to produce output (#413)
* Fix: Create output directory recursively instead of silently failing to write output. Fixes issue #395.

* Update changelog, contributors
2021-04-18 13:40:44 +03:00
Joona Hoikkala
f97c2f7600
Interactive mode and recursion-strategy (#426)
* Add new feature: recursion-strategy

* Implementation of interactive mode (#8)

* Add interactive mode documentation (#9)

* Prepare for release 1.3.0 (#11)
2021-04-18 12:54:17 +03:00
Joona Hoikkala
ac63d5357e
More convenient version string handling (#411) 2021-03-15 19:58:40 +02:00
Joona Hoikkala
fb1be906f0
Move version output to a function (#407)
* Version info as function (#3)

* Opportunistic coloring
2021-03-04 22:04:04 +02:00
Alexandre ZANNI
f1c39bec3a
replace badchar with a space (#390)
* replace badchar with a space

* add noraj to contribs

* add changelog

* remove PR ref & shoutouts

Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>

* re-order

Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>
2021-02-23 13:49:54 +02:00
layton
0c991947a7
Adding Content-Type to all output formats (#336) (#341)
* adding content-type to csv and json output (#336)

* added to contributors and changelog

* changed 'type' to 'content-type'

* added content-type for html and md output

* updated changelog

Co-authored-by: layton <layton@desktop-manjaro.fritz.box>
Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>
2021-02-21 15:52:41 +02:00
Joona Hoikkala
825bd3231d
Prepare 1.3.0 (#382) 2021-01-24 22:43:10 +02:00
Joona Hoikkala
407969eb2a
Release 1.2.1 (#381) 2021-01-24 22:33:38 +02:00
Joona Hoikkala
7648afd5db
Post-release 1.2.0 (#380) 2021-01-24 19:32:15 +02:00
Joona Hoikkala
9a5a067bca
Prepare release 1.2.0 (#378) 2021-01-24 19:02:46 +02:00
Jesus Galvan
5b75e9018f
Allow input-shell option (#344)
* Allow input-shell option

* Markdown files

* Changelog
* Contributors
2021-01-24 18:55:23 +02:00
Stefan Stojanovski
6a7bdc0f93
Added 405 Method Not Allowed to the list of status codes matched by default (#373)
* Update .ffufrc to match 405 status code responses by default

* Updated README.md with the new default match status codes

* Updated default match codes to include 405 Method Not Allowed

405 Method not Allowed is returned by many api endpoints when accessed via an improper method. ffuf sends GET reqeusts by default and if an endpoint only supports POST it will return 405 and ffuf will not think it's a valid endpoint unless specifically told to match 405 status codes

* Added choket to contributors

* Update CHANGELOG.md
2021-01-24 18:54:30 +02:00
Joona Hoikkala
4bea474ae6
Fix filter tests (#368) 2020-12-28 13:53:09 +02:00
Bp0lr
bc5e61ecc3
Empty filter (#330)
* add support to filter empty result files.

* update readme

* add contributors.

* add changelog

* Update ffufrc.example
2020-11-23 20:39:06 +02:00
M. Ángel Jimeno
c6a6293499
pkg/ffuf: fix panic in Windows when parsing wordlist flag (#335)
This change addresses two panics that happened while parsing the provided
wordlist flag in Windows systems.

- pkg/ffuf/util.go:40: panic happened when the provided path was
invalid. Example: ".\wordlist.txt:" as the os.Stat call returned an
error different than os.ErrNotExist.

- pkg/ffuf/optionsparser.go:179: panic happened when the provided value
did not existed and did not contain a colon character. Example:
".\asdf.txt" when the local file ".\asdf.txt" did not exist. This panic
happened due to strings.LastIndex returning -1 when the provided
substring does not appear. Therefore, v[:-1] panicking.

Fixes #333

Signed-off-by: Miguel Ángel Jimeno <miguelangel4b@gmail.com>
2020-10-26 23:43:09 +02:00
Joona Hoikkala
5b00f2b4e1
Fix HTTP method & data bug when parsing raw request from file (#339) 2020-10-25 15:47:52 +02:00
Fabio
2be8b878f8
issue/274 * made links in HTML report clickable (#323)
* issue/274 * made links in HTML report clickable

* issue/274 * updated changelog and contributors

* fixed contributors order
2020-10-05 11:05:02 +03:00
Joona Hoikkala
99100e0608
Add linter workflow as GitHub action (#325)
* Add linter workflow as GitHub action

* Fix linter issues

* More fixes
2020-10-03 11:29:18 +03:00
bjhulst
2abc72018d
Bug 231 (#312)
* Update filter.go

* Upsert filter options

Insert or update filter options.

* Indent.

* Updated CHANGELOG.md

fix for: Option -ac overwriting other existing filters #231
2020-10-03 11:20:21 +03:00
M. Ángel Jimeno
19937c4929
pkg: handle gosimple linter findings (#322)
This change is an attempt to handle gosimple linter finfings in order to
make the code easier to follow. It includes the following changes:

- use strings.Contains instead of strings.Index != -1
- use time.Since which is the standard library helper. See https://github.com/golang/go/blob/go1.15.2/src/time/time.go#L866-L867
- remove unneeded return statements at the end of methods
- preallocate maps when their capacity is known
- avoid underscoring values when they can be omitted
- avoid fmt.Sprintf() calls when the only argument is already a string

Signed-off-by: Miguel Ángel Jimeno <miguelangel4b@gmail.com>
2020-10-03 10:45:07 +03:00
M. Ángel Jimeno
7099b61f2d
pkg/output/stdout: use Error() method from error interface when possible (#321)
Signed-off-by: Miguel Ángel Jimeno <miguelangel4b@gmail.com>
2020-10-02 17:14:48 +03:00
M. Ángel Jimeno
8156fd1917
pkg: use {strings,bytes}.ReplaceAll when possible (#320)
Use the ReplaceAll helper from the standard library in order to make the
code easier to read. Requires Go 1.12 or higher.

Fixes #301

Signed-off-by: Miguel Ángel Jimeno <miguelangel4b@gmail.com>
2020-10-02 17:12:40 +03:00
Joona Hoikkala
bde943cc5d
Add support for configuration files for ffuf (#308)
* Refactor config and job creation

* ConfigOptions defaults

* Structure ConfigOptions for config file parser

* Sort options

* Finalize the configuration file reading and add examples and documentation

* Fix issues with opts -> config translation
2020-09-27 19:24:06 +03:00
Kiblyn11
79fe3c0c91
Change banner logging to stderr (#282)
* Change banner logging to stderr

* Edit CHANGELOG and CONTRIBUTORS

* fix: add to contributors according to sort order
2020-09-24 12:09:03 +03:00
Joona Hoikkala
dc24ad2639
Make SIGINT more responsive, and handle zombied TCP connections properly (#302) 2020-09-24 12:04:31 +03:00
M. Ángel Jimeno
47c8cafadc
job: remove duplicate if statement (#283)
* job: remove duplicate if statement

Signed-off-by: Miguel Ángel Jimeno <miguelangel4b@gmail.com>

* contributors: add Miguel Jimeno to CONTRIBUTORS.md

Signed-off-by: Miguel Ángel Jimeno <miguelangel4b@gmail.com>
2020-08-30 15:24:13 +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
Joona Hoikkala
126157438b
Prepare 1.2.0-git (#268) 2020-07-23 13:49:27 +03:00
Joona Hoikkala
d61ceb3eb2
Release 1.1 (#266) 2020-07-23 13:38:56 +03:00
Joona Hoikkala
bef2dc04ed
Fix crash with 3xx requests without location header (#265)
Co-authored-by: Joona Hoikkala <joohoi@io.fi>
2020-07-23 13:13:27 +03:00
bjhulst
9bb613050e
Update random seed logic (#262)
* Update util.go

* Update job.go

rand.Seed updated just before usage

* Update util.go

revert

* Updated CHANGELOG.MD with a description of the bug fix.

Co-authored-by: Joona Hoikkala <joohoi@users.noreply.github.com>
2020-07-23 12:28:31 +03:00
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