介绍:
dirsearch是一个基于python3的命令行工具,常用于暴力扫描页面结构,包括网页中的目录和文件。相比其他扫描工具disearch的特点是:
- 支持HTTP代理
- 多线程
- 支持多种形式的网页(asp,php)
- 生成报告(纯文本,JSON)
- 启发式检测无效的网页
- 递归扫描
- 用户代理随机化
- 批量处理
- 扫描器与字典(注:字典必须是文本文件)
一、安装
前提:需要使用到python
安装:pip install dirsearch
使用:window下面打开cmd输入dirsearch -h即可简单使用
二、使用
1.简单测试
dirsearch -u https://target
:对https://target进行扫描,使用默认的字典,具体参数Extensions: php, aspx, jsp, html, js | HTTP method: GET | Threads: 25 | Wordlist size: 11460
2.过滤器
解释:对扫描的内容进行简单过滤
参数:
-e css
:它将只搜索具有.css扩展名的文件,但是dirsearch仍然会执行目录和文件的枚举
3.递归扫描
解释:就是发现递归扫描设置的参数时,进入已经发现的目录继续扫描,请注意这样可能会消耗过多资源和时间
例子:
dirsearch -e php,html,js -u https://target -r
参数:
-r
:表示启用递归扫描
4.多线程扫描
解释:默认启用25个线程进行扫描,可以通过参数进行调整扫描的线程数,线程数量越多相对扫描越快,不过也不能设置太多否则对服务器产生过大影响,产生DOS效果,还有要考虑服务器正常承载能力
参数:
-t 5
:表示开启5个线程扫描
5.指定字典
解释:dirsearch默认使用了一个小字典,不过我们可以使用自己的字典
命令:dirsearch -e css -u <目标URL> -w E:\zd.txt
三、技巧
1.防限制扫描
背景:服务器对扫描做出一定限制
解决:使用代理多个服务器,将多个代理服务器放在文件里面然后交给dirsearch去轮询(HTTP多服务器代理命令)
HTTP基础代理:dirsearch -u <目标URL> --proxy 127.0.0.1:1080
HTTP多服务器代理命令:dirsearch -u <目标URL> -e <扩展名> --proxy-list 代理文件.txt
2.只扫描目录
解释:不扫描文件而是只扫描目录
命令:dirsearch -e css -u <目标URL> --remove-extensions
参数:
--remove-extensions
:删除字典中的扩展(例如字典中的: admin.php -> admin)