22. dirmap:高级 Web 目录与文件扫描工具
1.1 项目介绍
dirmap 是一款功能强大的 Web 目录与文件扫描工具,专注于快速发现目标网站的隐藏路径、敏感文件及未授权接口。其通过多线程、递归扫描和智能过滤机制,显著提升扫描效率与准确性,适用于红队渗透、漏洞挖掘及资产测绘等场景。
1.1.1 核心功能
- 多线程扫描:默认 50 线程,可自定义调整以平衡性能与隐蔽性。
- 智能结果过滤:
-
- 自动排除重复状态码(如 404)。
- 支持正则匹配响应内容,识别动态路由(如
/user/{id}
)。
- 递归扫描:深度遍历子目录,支持自定义递归层级(如
-r 3
)。 - 扩展支持:
-
- 内置多种字典(如
common.txt
、big.txt
),支持自定义字典文件。 - 兼容 Burp Suite 日志文件(
-l burp.log
),快速复用历史请求。
- 内置多种字典(如
1.1.2 适用场景
- 红队渗透:发现后台路径(如
/admin
)、敏感文件(如config.php.bak
)。 - 漏洞验证:定位未授权接口(如
/api/v1/users
)或调试端点(如/actuator
)。 - 资产测绘:自动化整理企业 Web 应用的暴露面目录结构。
1.2 安装教程
1.2.1 环境要求
- 操作系统:全平台兼容(Windows/Linux/macOS)。
- Python 版本:3.6+(推荐 3.8+)。
1.2.2 安装步骤
- 克隆仓库:
git clone https://github.com/H4ckForJob/dirmap.git
cd dirmap
- 安装依赖:
pip3 install -r requirements.txt
注意:若安装失败,需检查 Python 环境及网络代理配置。
- 验证安装:
python3 dirmap.py -h # 显示帮助文档
1.3 基础使用教程
1.3.1 常用命令参数
参数 | 功能说明 |
| 指定目标 URL(如 |
| 加载 Burp Suite 日志文件进行扫描。 |
| 使用自定义字典文件(默认 |
| 设置线程数(默认 50)。 |
| 扫描指定扩展名(如 |
1.3.2 示例命令
- 基础扫描:
python3 dirmap.py -u http://example.com
-
- 输出结果实时显示在终端,高亮标记状态码(如 200/403)。
- 使用自定义字典:
python3 dirmap.py -u http://example.com -w /path/to/custom_dict.txt
- 过滤状态码:
python3 dirmap.py -u http://example.com --exclude 404,500
1.4 进阶使用教程
1.4.1 递归扫描与深度控制
python3 dirmap.py -u http://example.com -r 2 # 递归深度为 2
- 结果将包含子目录路径(如
/admin/login
、/admin/config
)。
1.4.2 代理与隐蔽策略
- 代理配置:
python3 dirmap.py -u http://example.com --proxy http://127.0.0.1:8080
- 随机 User-Agent:
python3 dirmap.py -u http://example.com --random-agent
1.4.3 结果分析与工具联动
- 导出报告:
python3 dirmap.py -u http://example.com -o report.json --format json
- 联动 Nuclei:
cat report.json | jq -r '.url' | nuclei -t ~/nuclei-templates/
1.4.4 高级字典策略
- 动态生成字典:
-
- 使用工具(如
CeWL
)抓取目标内容生成字典:
- 使用工具(如
cewl http://example.com -d 3 -m 5 -w custom_dict.txt
- 合并与去重:
cat common.txt custom_dict.txt | sort -u > merged_dict.txt
1.5 官方下载地址
- GitHub 仓库:GitHub - H4ckForJob/dirmap: An advanced web directory & file scanning tool that will be more powerful than DirBuster, Dirsearch, cansina, and Yu Jian.一个高级web目录、文件扫描工具,功能将会强于DirBuster、Dirsearch、cansina、御剑。
1.6 注意事项
- 合法授权:仅在授权范围内使用,禁止非法入侵。
- 性能调优:
-
- 公网扫描建议线程数 ≤30,避免触发 WAF/IP 封禁。
- 内网环境可调至 100+ 线程提升效率。
- 误报处理:
-
- 结合
--match
参数过滤响应内容(如--match "Login Page"
)。 - 手动验证关键路径(如后台登录页)。
- 结合
通过 dirmap,用户可高效完成 Web 路径的深度探测任务,建议结合 dirsearch(路径扫描)和 httpx(HTTP 服务探测)构建完整的攻击面分析链。