业务漏洞挖掘笔记
字数 1229 2025-08-10 08:28:45

业务漏洞挖掘系统化方法论

一、资产收集与管理

1.1 资产范围确定

  • 核心思想:分析资产特征,全网寻找符合特征的资产
  • 关键信息收集项
    • 域名/子域名
    • 网页内容特征
    • ICP备案信息
    • WHOIS联系信息
    • SSL/TLS证书信息
    • DNS解析信息
    • WHOIS-NAMESERVER信息
    • IP及相关端口服务信息
    • C段/B段IP段
    • 组织信息(招股书、联系方式等)
    • 人员信息(管理员、员工等)
    • 客户端应用(APP/小程序等)

1.2 资产收集工具

  • 推荐使用自研工具实现自动化收集
  • 子域名爆破建议使用云自建DNS服务
  • 扫描爆破使用廉价VPS(易被封)

1.3 资产管理

  • 对收集的资产进行分类整理
  • 建立可视化管理系统
  • 实现快速定位风险点能力
    • 组件0day快速定位
    • 弱密码爆破目标筛选
    • 资产变化监控

二、资产监控

2.1 监控必要性

  • 业务持续变化带来新漏洞机会
  • 新业务/更新业务漏洞概率更高

2.2 监控对象

  1. Web业务变化
  2. IP和端口变化
  3. 客户端软件更新

2.3 实现方式

  • 必须实现自动化/半自动化
  • 租用多台VPS实现7×24监控

三、业务漏洞挖掘

3.1 业务面临风险

  • 数据被窃取
  • 权限被控制
  • 业务中断
    • 机器权限
    • 功能权限
    • 应用服务权限
    • 数据泄露

3.2 漏洞本质

  • 用户输入的非法字符串被不安全处理
  • 导致操作系统/编程语言/数据库/浏览器执行恶意指令

3.3 常见漏洞类型及原理

3.3.1 XSS漏洞

<?
echo $_GET['xss'];  // 直接输出未过滤的用户输入
?>

3.3.2 SQL注入

$id=$_GET["id"];
$result = mysqli_query($link,"SELECT * FROM users where user_id=".$id);

3.3.3 SSRF漏洞

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $_GET['url']);  // 直接使用用户提供的URL

3.3.4 命令注入

$target = $_REQUEST['cmd'];
$cmd = shell_exec('ls '.$target);  // 拼接用户输入到系统命令

3.3.5 代码注入

  • 可能出现在PHP/NodeJS/JSP/ASPX等语言中
  • 用户输入被当作代码执行

3.3.6 其他漏洞

  • 文件读取
  • XXE(XML注入)
  • 信息泄露
  • 上传漏洞

3.4 漏洞检测方法

3.4.1 基本检测流程

  1. 修改请求参数值
  2. 重放请求
  3. 对比响应差异

3.4.2 差异判断依据

  • 响应内容变化
  • 响应时间变化
  • Dnslog/Httplog反馈
  • 浏览器DOM渲染结果
  • 浏览器Console输出

3.4.3 自动化检测思路

  1. 遍历所有参数
  2. 追加单双引号测试
  3. 对异常参数追加payload测试
    • 命令注入payload
    • SSRF payload
    • 代码注入payload
    • SQL注入payload
  4. 对HTML响应进行DOM XSS检测

3.5 浏览器辅助工具

3.5.1 远程调试

  • 启动参数:--remote-debugging-port=9222
  • 实现功能:
    • 自动表单填写
    • 自动页面点击
    • 减少重复工作

3.5.2 自动化工具

  • 规范化测试流程
  • 减少手工操作
    • 自动参数修改
    • 自动重放
    • 自动结果分析

四、系统化工作流程

  1. 目标获取
  2. 资产范围确定
  3. 资产收集
  4. 资产管理
  5. 资产分类
  6. 业务功能理解
  7. 业务漏洞测试
  8. 逻辑漏洞测试
  9. 报告提交

五、持续改进方向

  1. 流程规范化
  2. 工具自动化
  3. 监控持续化
  4. 知识系统化

通过系统化的资产管理和自动化的测试工具,可以显著提高业务漏洞挖掘的效率和成功率,实现"躺赚"式的漏洞挖掘。

业务漏洞挖掘系统化方法论 一、资产收集与管理 1.1 资产范围确定 核心思想 :分析资产特征,全网寻找符合特征的资产 关键信息收集项 : 域名/子域名 网页内容特征 ICP备案信息 WHOIS联系信息 SSL/TLS证书信息 DNS解析信息 WHOIS-NAMESERVER信息 IP及相关端口服务信息 C段/B段IP段 组织信息(招股书、联系方式等) 人员信息(管理员、员工等) 客户端应用(APP/小程序等) 1.2 资产收集工具 推荐使用自研工具实现自动化收集 子域名爆破建议使用云自建DNS服务 扫描爆破使用廉价VPS(易被封) 1.3 资产管理 对收集的资产进行分类整理 建立可视化管理系统 实现快速定位风险点能力 组件0day快速定位 弱密码爆破目标筛选 资产变化监控 二、资产监控 2.1 监控必要性 业务持续变化带来新漏洞机会 新业务/更新业务漏洞概率更高 2.2 监控对象 Web业务变化 IP和端口变化 客户端软件更新 2.3 实现方式 必须实现自动化/半自动化 租用多台VPS实现7×24监控 三、业务漏洞挖掘 3.1 业务面临风险 数据被窃取 权限被控制 业务中断 机器权限 功能权限 应用服务权限 数据泄露 3.2 漏洞本质 用户输入的非法字符串被不安全处理 导致操作系统/编程语言/数据库/浏览器执行恶意指令 3.3 常见漏洞类型及原理 3.3.1 XSS漏洞 3.3.2 SQL注入 3.3.3 SSRF漏洞 3.3.4 命令注入 3.3.5 代码注入 可能出现在PHP/NodeJS/JSP/ASPX等语言中 用户输入被当作代码执行 3.3.6 其他漏洞 文件读取 XXE(XML注入) 信息泄露 上传漏洞 3.4 漏洞检测方法 3.4.1 基本检测流程 修改请求参数值 重放请求 对比响应差异 3.4.2 差异判断依据 响应内容变化 响应时间变化 Dnslog/Httplog反馈 浏览器DOM渲染结果 浏览器Console输出 3.4.3 自动化检测思路 遍历所有参数 追加单双引号测试 对异常参数追加payload测试 命令注入payload SSRF payload 代码注入payload SQL注入payload 对HTML响应进行DOM XSS检测 3.5 浏览器辅助工具 3.5.1 远程调试 启动参数: --remote-debugging-port=9222 实现功能: 自动表单填写 自动页面点击 减少重复工作 3.5.2 自动化工具 规范化测试流程 减少手工操作 自动参数修改 自动重放 自动结果分析 四、系统化工作流程 目标获取 资产范围确定 资产收集 资产管理 资产分类 业务功能理解 业务漏洞测试 逻辑漏洞测试 报告提交 五、持续改进方向 流程规范化 工具自动化 监控持续化 知识系统化 通过系统化的资产管理和自动化的测试工具,可以显著提高业务漏洞挖掘的效率和成功率,实现"躺赚"式的漏洞挖掘。