介绍

根据名称可以推断出这是一个目录扫描(搜索)工具。其名称中的"dir"表示目录,而"search"则表示搜索。

此外,这个工具是一个开源工具,使用Python语言。

项目信息

技术栈:Python

Github地址:https://github.com/maurosoria/dirsearch

使用

安装

要求:Python3.7或更高版本

安装方式:

  • Git克隆安装
  • ZIP安装
  • Docker安装
  • PyPi安装
  • Kali Linux源安装

我们这里只介绍Git克隆安装、PyPi安装和Kali Linux源安装。

Git克隆安装

1
2
git clone https://github.com/maurosoria/dirsearch.git --depth 1
python setup.py install

PyPi安装

1
pip3 install dirsearch

Kali中apt安装

1
apt install dirsearch

使用情景

  • 扫描一个网站的目录
1
python3 dirsearch.py -u https://target
  • 扫描一个网站的php、html文件
1
python3 dirsearch.py -e php,html -u https://target
  • 使用一个字典扫描其中的php、html文件
1
python3 dirsearch.py -e php,html -u https://target -w /path/to/wordlist

递归爆破

递归暴力破解是在找到的目录之后连续暴力破解。例如,如果 dirsearch 找到admin/,它将进行暴力破解admin/**就是暴力破解的地方)。要启用此功能,请使用**-r**(或**–recursive**)标志。

1
python3 dirsearch.py -e php,html -u https://target -r 

特殊选项

可以使用--max-recursion- depth设置最大递归深度,并使用--recursion-status设置递归状态代码。

1
python3 dirsearch.py -e php,html -u https://target -r --max-recursion-depth 3 --recursion-status 200-399
  • 还有 2 个选项:–force-recursive和**–deep-recursive**
  • 强制递归:暴力递归所有找到的路径,而不仅仅是以结尾的路径/
  • 深度递归:递归暴力破解路径的所有深度(a/b/c=> add a/, a/b/

如果不想递归地暴力破解某些子目录,请使用--exclude-subdirs

1
python3 dirsearch.py -e php,html -u https://target -r --exclude-subdirs image/,media/,css/

暂停进度

使用Ctrl + C暂停扫描进度,从这里您可以保存进度(并稍后继续)、跳过当前目标或跳过当前子目录。

线程数

线程号(-t | --threads)反映了分离的暴力破解进程的数量。因此线程数越大,dirsearch 运行得越快。默认情况下,线程数为 25,但如果您想加快进度,可以增加它。

尽管如此,速度仍然在很大程度上取决于服务器的响应时间。作为警告,我们建议您不要让线程数太大,因为它可能会导致 DoS(拒绝服务)。

1
python3 dirsearch.py -e php,htm,js,bak,zip,tgz,txt -u https://target -t 20 

扫描子目录

从 URL 中,您可以使用–subdirs扫描子目录列表。

1
python3 dirsearch.py -e php,html,js -u https://target --subdirs /,admin/,folder/ 

代理

dirsearch 支持 SOCKS 和 HTTP 代理,有两个选项:代理服务器或代理服务器列表。

1
python3 dirsearch.py -e php,html,js -u https://target --proxy 127.0.0.1:8080
1
python3 dirsearch.py -e php,html,js -u https://target --proxy socks5://10.10.0.1:8080
1
python3 dirsearch.py -e php,html,js -u https://target --proxylist proxyservers.txt

报告

支持的报告格式:simple , plain , json , xml , md , csv , html , sqlite

1
python3 dirsearch.py -e php -l URLs.txt --format plain -o report.txt
1
python3 dirsearch.py -e php -u https://target --format html -o target.json

更多示例命令

1
2
3
4
cat urls.txt | python3 dirsearch.py --stdin
python3 dirsearch.py -u https://target --max-time 360
python3 dirsearch.py -u https://target --auth admin:pass --auth-type basic
python3 dirsearch.py -u https://target --header-list rate-limit-bypasses.txt