1. 漏洞挖掘的起点:建立正确认知
第一次尝试漏洞挖掘时,我犯了个典型错误——直接打开Burp Suite就开始漫无目的地扫描各种网站。三周后除了被封几个IP外一无所获。后来才明白,漏洞挖掘不是碰运气,而是需要系统化的思维方式和扎实的基础准备。
安全研究员通常把漏洞分为几大类:Web应用漏洞(如SQL注入、XSS)、系统漏洞(如缓冲区溢出)、逻辑漏洞(如业务规则绕过)和配置错误(如默认凭证)。对新手而言,Web漏洞是最佳切入点,因为:
- 目标资源丰富(任何网站都可作为测试对象)
- 工具链成熟(Burp Suite、ZAP等)
- 漏洞模式标准化(OWASP Top 10有明确模式)
- 危害可控(相比系统漏洞更不易造成实际破坏)
重要提示:务必在法律允许范围内测试。建议从以下平台开始练习:
- 漏洞赏金平台的测试环境(如HackerOne的h1-ctf)
- 专门搭建的漏洞演练平台(DVWA、WebGoat)
- 获得明确授权的私有测试项目
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境搭建与工具链配置
2.1 基础工具套装
我的工作机配置方案(总成本<1000元):
- 虚拟机:VirtualBox + Kali Linux(预装安全工具)
- 代理工具:Burp Suite Community版(免费版足够入门)
- 浏览器:Firefox + FoxyProxy扩展(方便切换代理)
- 辅助工具:Wappalyzer(识别技术栈)、Postman(API测试)
2.2 关键配置细节
Burp Suite需要特别调整这些设置:
bash复制# Proxy → Options → 勾选"Support invisible proxying"
# Project options → Connections → 设置10秒超时
# Target → Scope 添加目标域名避免干扰其他流量
实测中发现社区版有两个限制需要规避:
- 手动测试时关闭"Burp Scanner"标签页节省资源
- 使用Copy as curl command功能替代受限的Repeater
3. 目标选择与信息收集实战
3.1 寻找合适目标
新手最容易陷入的误区是直接挑战大型网站。建议按这个优先级:
- 使用Wappalyzer扫描本地企业网站(.test/.local域名)
- GitHub搜索"bugbounty"+"test"找测试项目
- 漏洞平台上的退役目标(已修复漏洞的案例)
3.2 信息收集四步法
以测试example.test为例:
- 子域名枚举(最易出漏洞的点)
bash复制subfinder -d example.test -o subs.txt
httpx -l subs.txt -title -status-code -o live_subs.txt
- 技术栈识别
bash复制whatweb -v https://example.test/login
- 目录爆破(重点找/admin /backup等)
bash复制ffuf -w /path/to/wordlist -u https://example.test/FUZZ
- 参数分析(Chrome开发者工具→Network标签)
重点关注:
- ?id= 这类数字型参数
- /api/v1/ 未文档化的接口
- .json/.xml后缀的响应
4. 漏洞挖掘实战:从理论到PoC
4.1 SQL注入的现代攻击方式
传统' or 1=1--已基本失效,现在更有效的方法是:
- 时间盲注探测(适合WAF场景)
sql复制SELECT IF(SUBSTRING(database(),1,1)='a',sleep(3),0)
- 报错注入利用JSON特性
sql复制SELECT extractvalue(1,concat(0x7e,(SELECT user()),0x7e))
4.2 业务逻辑漏洞挖掘
某次实战案例流程:
- 注册普通账号→购买商品→拦截"price"参数
- 修改price=0.01→发现订单创建成功
- 重复操作100次后被封号→证明漏洞存在
关键是要理解业务规则:
- 优惠券是否可叠加?
- 库存检查是否在客户端?
- 支付回调是否验证金额?
5. 漏洞报告与经验沉淀
5.1 有效报告撰写
被平台认可的报告包含:
- 清晰的重现步骤(含HTTP请求原始数据)
- 影响说明(结合CVSS评分)
- 修复建议(具体代码示例)
5.2 建立知识体系
我的漏洞笔记模板:
markdown复制# [漏洞类型]
## 测试条件
- 适用场景:______
- 必要参数:______
## 检测方法
1. 步骤1:______
2. 步骤2:______
## 绕过技巧
- WAF绕过:______
- 变异payload:______
## 实战案例
[截图]+[请求响应]
坚持三个月后,我养成了每天分析1个CVE的习惯。当在真实目标发现类似模式时,肌肉记忆会自然引导测试流程。这就是从"找漏洞"到"看见漏洞"的质变。
