Skip to content
/ dirfy Public

an async webpath scanner based on asyhttp

Notifications You must be signed in to change notification settings

pyno/dirfy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dirfy

an async webpath scanner based on asyhttp.

install

To install simply cone the repository and install the requirements.

$ git clone [email protected]:pyno/dirfy.git
$ cd dirfy
$ pip3 install -r dependencies.txt

usage

Simple usage:

$ python3 dirfy.py -u http://url.to.test

get help:

$ python3 dirfy.py -h

features

Main features of dirfy:

  • cmdline
  • Asynchronous HTTP(S)
  • Proxy support (-p)
  • Extensions search (-e)
  • Configurable path dictionary (-d)
  • Configurable speed (-c)
  • Configurable redirection behaviour (-r)
  • Support for false positives detection (-f)
  • Request logging (-n to disalbe)
  • Custom headers (-H)

advaced usage

false positives

Some typicall advanced usages includes the false positives exclusions. Dirfy detects the presence of a page by looking at the HTTP return code: 200 means we found something. Oftentimes, especially when following redirects, this leads to false positives:

HTTP/1.1 200 OK
Content-Length: 57
Content-Type: text/html
Connection: Closed

<html>
  <body>
    Resource not found
  </body>
</hmtml>
HTTP/1.1 200 OK
Content-Length: 57
Content-Type: text/html
Connection: Closed

<html>
  <body>
    Please log-in
    ...
  </body>
</hmtml>

To exclude such responses from results, just include in the file false_pos.txt

Resource not found
Please log-in

and invoke dirfy as follow:

$ python3 dirfy.py -u http://url.to.test -f false_pos.txt

Note that each line of the file is treated as an indicator of a false positive.

log

Dirfy logs each request made in a file named log.txt. To disable logging, just run it with -n option.