sitemap2proxy
在进行Web应用测试时,通常需要对目标网站进行爬取,但如果网站能主动提供大部分信息呢?sitemap.xml文件正是这样的存在,许多网站使用它向搜索引擎(如Google)展示其内容结构。
该脚本解析sitemap文件提取所有URL,并通过指定代理(Burp、ZAP等)逐个请求。虽然无法发现文件中未提及的内容或进行暴力破解,但能有效识别管理员希望公开的所有页面。
建议搭配Tim Tomes的pagefinder工具使用,该工具可自动检测站点是否存在sitemap或robots.txt文件。
安装
sitemap2proxy为纯Ruby脚本,无需安装额外gem包,只需赋予可执行权限即可。
使用方法
支持指定已下载的sitemap文件或远程URL地址,可处理原始XML(sitemap.xml)或gzip压缩格式(sitemap.xml.gz)。必须参数为代理URL。
默认使用Googlebot用户代理以隐藏日志痕迹,可通过--ua参数自定义。
示例:
获取Google的sitemap并通过本地8080端口代理(不推荐实战使用,因其包含3.5万条记录):
|
|
伪装为Yahoo爬虫:
|
|
解析本地文件并转发至远程代理:
|
|
启用详细输出模式:
|
|
查看帮助:
|
|
有趣发现
测试过程中发现google.com的robots.txt文件中指定了多个附加sitemap,这提示渗透测试人员应始终检查robots.txt文件以发现潜在敏感信息。
下载
更新日志
- 版本1.1:新增响应代码统计功能
- 版本1.0:初始发布