📝 文章核心信息速览
- 工具名称: SpringBoot-Scan (别称 "SB-Scan")
- 核心功能: Spring Boot 框架的敏感信息泄露扫描与高危漏洞测试。
- 源码地址: https://github.com/AabyssZG/SpringBoot-Scan
一、工具概述
日常渗透过程中,经常会碰到Spring Boot搭建的微服务,于是就想做一个针对Spring Boot的开源渗透框架,主要用作扫描Spring Boot的敏感信息泄露端点,并可以直接测试Spring的相关高危漏洞。于是,就写了这么一个工具:SpringBoot-Scan 【简称:"SB-Scan"(错乱】
bash
https://github.com/AabyssZG/SpringBoot-Sca
二、安装Python依赖库
python
pip install -r requirements.txt
如果pip安装速度慢,可以采用国内源进行安装:
python
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
三、工具使用
如何找到互联网上的Spring框架,ZoomEye语法如下:
python
app:"Spring Framework"
Fofa语法如下:
python
icon_hash="116323821"||body="Whitelabel Error Page"
查看使用命令
python
python .\SpringBoot-Scan.py -h
🛠️ 工具功能与使用详解
该工具主要围绕资产测绘、信息泄露扫描、漏洞利用三个核心维度展开,并提供了丰富的自定义选项。
资产测绘
对接了主流空间搜索引擎的API,可批量下载Spring资产数据。
- ZoomEye :
python3 SpringBoot-Scan.py -z <ZoomEye的API-KEY> - Fofa :
python3 SpringBoot-Scan.py -f <Fofa的API-KEY>(Fofa语法:icon_hash="116323821"||body="Whitelabel Error Page") - Hunter (鹰图) :
python3 SpringBoot-Scan.py -y <Hunter的API-KEY>
扫描与利用
针对单个目标或批量目标,进行不同深度的测试。
- 信息泄露扫描 : 爆破敏感端点。
-u http://example.com/(单个)-uf url.txt(批量)
- 漏洞扫描与利用 : 测试高危漏洞,支持RCE。
-v http://example.com/(单个)-vf url.txt(批量,结果保存至vulout.txt)
- 敏感文件下载 : 尝试下载Heapdump等文件。
-d http://example.com/(单个)-df url.txt(批量,结果保存至dumpout.txt)
高级配置
增强工具的适用性和隐蔽性。
- 使用代理 :
-p <代理IP:端口>(支持HTTP认证) - 自定义请求头 :
-t header.txt(需自行编辑header.txt文件) - 并发与延时: 批量扫描时可设置并发数(默认10)和延时。
💡 关键补充信息
- 安装依赖 : 使用
pip install -r requirements.txt安装,推荐使用国内镜像源加速。 - 核心字典 : 内置了
Dir.txt(敏感端点字典) 用于爆破,基本覆盖了常见的Spring Boot端点。 - 声明: 工具仅供学习交流,严禁用于非法用途。
📊 命令参数速查表
| 功能分类 | 命令参数 | 说明 |
|---|---|---|
| 信息泄露扫描 | -u <URL> |
对单一URL进行敏感端点爆破 |
-uf <FILE> |
读取文件中的URL列表进行批量扫描 | |
| 漏洞扫描利用 | -v <URL> |
对单一URL进行漏洞利用(支持RCE) |
-vf <FILE> |
读取文件进行批量漏洞验证,结果保存至vulout.txt |
|
| 敏感文件下载 | -d <URL> |
扫描并尝试下载Spring Boot敏感文件 |
-df <FILE> |
批量扫描敏感文件,成功结果保存至dumpout.txt |
|
| 资产测绘 | -z <KEY> |
使用ZoomEye API获取Spring资产 |
-f <KEY> |
使用Fofa API获取Spring资产 | |
-y <KEY> |
使用Hunter (鹰图) API获取Spring资产 | |
| 高级选项 | -p <PROXY> |
使用HTTP代理(如 127.0.0.1:8080) |
-t <FILE> |
从文件中导入自定义HTTP请求头 |