一、项目介绍
dirsearch 是一款高效、多线程的 Web 路径扫描工具,专为渗透测试人员和网络安全研究人员设计,用于发现目标网站的隐藏目录、敏感文件及未授权接口。其支持自定义字典、代理配置、请求头伪装等功能,适用于红队渗透、漏洞挖掘及资产测绘等场景。
1.1 核心功能
- 多线程扫描:默认 20 线程,可自定义调整以提高效率。
- 智能错误处理:自动过滤重复状态码(如 404),降低误报率。
- 灵活扩展支持:
-
- 支持自定义字典(如
-w
指定字典文件)。 - 支持多种扩展名扫描(如
-e php,asp,aspx
)。
- 支持自定义字典(如
- 结果输出:生成可读性强的报告(TXT/JSON/CSV),便于后续分析。
- 绕过检测:支持随机 User-Agent、代理池、请求延迟等隐蔽扫描策略。
1.2 适用场景
- 红队渗透 :快速定位网站后台、敏感文件(如
admin.php
、backup.zip
)。 - 漏洞验证 :发现未授权访问的 API 接口(如
/api/v1/users
)。 - 资产梳理:扫描企业网站的暴露面资产(如遗留测试页面)。
二、安装教程
2.1 环境要求
- 操作系统:全平台兼容(Windows/Linux/macOS)。
- Python 版本:3.7+(推荐 Python 3.9)。
2.2 安装方法
方法一:Git 克隆(推荐)
git clone https://github.com/maurosoria/dirsearch.git
cd dirsearch
pip install -r requirements.txt
方法二:Kali Linux 直接安装
sudo apt update
sudo apt install dirsearch
方法三:Docker 部署
docker pull quay.io/dirsearch/dirsearch
docker run -it --rm quay.io/dirsearch/dirsearch -u http://example.com
三、基础使用教程
3.1 常用命令参数
|------------------|--------------------------------------------|
| 参数 | 功能说明 |
| -u URL
| 指定目标 URL(如 http://example.com
)。 |
| -w FILE
| 指定自定义字典文件(默认使用 dictionaries/common.txt
)。 |
| -e EXTENSIONS
| 扫描指定扩展名(如 php,html,zip
)。 |
| -t THREADS
| 设置线程数(默认 20,建议不超过 50)。 |
| --timeout SEC
| 设置请求超时时间(默认 30 秒)。 |
| --random-agent
| 启用随机 User-Agent。 |
3.2 基础扫描示例
-
扫描单个目标:
python3 dirsearch.py -u http://example.com -e php,html
-
使用自定义字典:
python3 dirsearch.py -u http://example.com -w /path/to/custom_wordlist.txt
-
过滤状态码:
python3 dirsearch.py -u http://example.com --exclude-status 403,500
四、进阶使用教程
4.1 代理与隐蔽扫描
-
通过代理扫描:
python3 dirsearch.py -u http://example.com --proxy http://127.0.0.1:8080
-
设置请求延迟:
python3 dirsearch.py -u http://example.com --delay 2 # 单位:秒
-
随机 User-Agent:
python3 dirsearch.py -u http://example.com --random-agent
4.2 递归扫描与深度控制
python3 dirsearch.py -u http://example.com --recursive -R 3 # 递归深度 3
4.3 结果处理与报告生成
-
导出 JSON 报告:
python3 dirsearch.py -u http://example.com -o report.json --format json
-
结合其他工具处理结果:
cat report.json | jq '.results[] | .url' | httpx -status-code
4.4 高级字典策略
- 动态生成字典:
-
-
使用工具(如
CeWL
)抓取目标网站内容生成字典:cewl http://example.com -d 3 -m 5 -w custom_words.txt
-
-
-
合并字典并去重:
cat dict1.txt dict2.txt | sort -u > merged_dict.txt
-
五、官方下载地址
六、注意事项
- 合法授权:仅在授权范围内使用,禁止非法入侵。
- 性能调优:
-
- 避免线程数过高导致目标服务器过载或被封禁。
- 内网环境可适当增加线程(如
-t 50
)。
- 误报处理:
-
- 结合人工验证排除误报(如 403 Forbidden 可能是权限问题而非路径存在)。
- 使用
--exclude-text
过滤特定响应内容(如 "Not Found")。
通过 dirsearch ,用户可高效完成 Web 路径的探测任务,建议结合 nmap (端口扫描)和 httpx(HTTP 探测)构建完整的攻击链。