信息收集组合拳之从废弃接口中寻找漏洞
字数 934 2025-08-05 08:19:40
从废弃接口中寻找漏洞 - 渗透测试技术文档
一、信息收集工具链
1. OneForAll 域名收集工具
- 工具地址: https://github.com/shmilylty/OneForAll
- 功能: 通过域名收集网址、子域名和IP地址
- 常用命令:
python oneforall.py --targets targets.txt run - 输出结果: 在
results文件夹下生成扫描结果,包含URL、子域名和IP
2. IP地址处理脚本
- 问题: OneForAll输出的IP是一行多个且有重复
- 解决方案: 使用Python脚本处理
#!/usr/bin/env python # conding:utf-8 # 把同一行的ip换行,然后写进result.txt的文件里 with open('ip.txt','r',encoding='utf-8') as readlist: for dirs in readlist.readlines(): with open('result.txt','a',encoding='utf-8') as writelist: b = dirs.replace(",", '\n') writelist.write(b) # 去除重复ip,然后把结果写进only.txt文件里 with open('result.txt','r',encoding='utf-8') as readlist: lines_seen = set() for line in readlist.readlines(): if line not in lines_seen: lines_seen.add(line) with open('only.txt','a',encoding='utf-8') as writelist: writelist.write(line)
3. fscan 扫描工具
- 工具地址: https://github.com/shadow1ng/fscan
- 特点: 主要用于内网扫描,也可用于外网探测
- 功能: 资产发现、漏洞扫描、弱口令爆破
- 常用命令:
fscan64.exe -hf ip.txt -p 1-65535 -o result.txt
4. 小米范工具
- 作者博客: https://www.cnblogs.com/fsqsec/tag/%E6%88%91%E7%9A%84%E5%B0%8F%E5%B7%A5%E5%85%B7/
5. JSFinder 工具
- 工具地址: https://github.com/Threezh1/JSFinder
- 功能: 扫描JS文件及URL
- 常用命令:
python JSFinder.py -f targets.txt -d -ou JSurl.txt -os JSdomain.txt - 输出:
JSurl.txt: 包含URLJSdomain.txt: 包含子域名
二、URL参数处理
1. 提取含有参数的URL脚本
#!/usr/bin/env python
# conding:utf-8
# 字符串中有"?"且不在字符串的结尾的就写入result.txt中
with open('JSurl.txt','r',encoding='utf-8') as readlist:
for dirs in readlist.readlines():
if "?" in dirs:
re = dirs.find("?")
a=len(dirs)-2
if re < a:
with open('result.txt','a',encoding='utf-8') as writelist:
writelist.write(dirs)
# 去除result.txt中的重复字符串,然后把结果写进only.txt文件里
with open('result.txt','r',encoding='utf-8') as readlist:
lines_seen = set()
for line in readlist.readlines():
if line not in lines_seen:
lines_seen.add(line)
with open('only.txt','a',encoding='utf-8') as writelist:
writelist.write(line)
三、废弃接口漏洞挖掘
1. SQL注入测试
- 工具: sqlmap
- 命令:
python sqlmap.py -m urls.txt --batch - 输入: 使用上述脚本筛选后的URL
2. 敏感接口识别
常见敏感接口模式:
http://xxxxx/xxx/registerSuccess.do
http://xxxxx/xxx/getALLUsers
http://xxxxx/xxx/deleteuser
http://xxxxx/xxx/api/admin/v1/users/all
3. URL跳转参数识别
常见跳转参数:
toUrl=
login_url=
register_url
redirect_url=
load_url=
proxy_url=
file_url=
jump_url=
四、实战应用场景
- 针对历史业务URL进行批量SQL注入测试
- 寻找敏感接口测试越权漏洞
- 通过跳转参数测试URL跳转漏洞
- 在常规渗透测试无果时,从废弃接口寻找突破口
五、技术要点总结
- 信息收集全面性: 通过多种工具组合确保不遗漏潜在目标
- 数据处理自动化: 使用脚本处理重复数据和格式转换
- 目标筛选精准性: 优先关注含参数的URL和敏感接口
- 漏洞挖掘深度: 不仅限于常见漏洞,还包括废弃接口中的隐藏漏洞
通过这套方法,可以在常规渗透测试无果时,从网站的历史业务URL和废弃接口中找到安全漏洞。