攻守道:流量分析的刀光剑影(上)
字数 1990 2025-08-15 21:32:26
Wireshark流量分析实战:攻防演练中的攻击溯源
一、Wireshark基础过滤命令
在进行流量分析前,需要掌握Wireshark的基本过滤命令:
-
字符串过滤:
http contains "string":查看包含特定字符串的HTTP数据包tcp contains "string":查看包含特定字符串的TCP数据包
-
URL过滤:
http.request.uri == "/path":精确匹配URL路径http.request.uri contains "path":模糊匹配URL路径
-
IP地址过滤:
ip.addr == x.x.x.x:过滤特定IP的流量(双向)ip.src == x.x.x.x:过滤源IP的流量ip.dst == x.x.x.x:过滤目标IP的流量
-
HTTP流追踪:
- 右键数据包 → Follow → HTTP Stream:查看完整的HTTP请求和响应
二、扫描器特征识别
常见扫描器在流量中的特征标识:
| 扫描器名称 | 特征字符串 |
|---|---|
| WVS | wvs、acunetix_wvs_security_test、acunetix、acunetix_wvs |
| Nessus | nessus |
| APPscan | APPscan |
| 绿盟极光 | nsfocus、Rsas |
| sqlmap | sqlmap |
| dirsearch | 无固定特征,通常有大量目录枚举请求 |
实战示例:
http contains wvs # 查找WVS扫描特征
http contains nessus and not ip.addr==x.x.x.x # 排除特定IP的Nessus扫描
三、攻击溯源分析流程
1. 识别扫描行为
步骤:
- 过滤HTTP流量:
http - 检查是否有扫描器特征
- 确定攻击者IP:
http contains wvs→ 查看源IP
注意事项:
- 攻击者可能修改扫描器特征,需结合其他证据判断
- 关注短时间内大量请求同一IP的行为
2. 定位后台地址
方法:
- 使用常见后台关键词过滤:
http contains "admin" or http contains "login" - 结合攻击者IP筛选:
http contains login and ip.addr==x.x.x.x - 验证后台有效性:
- 检查返回状态码(200为存在)
- 查看响应内容确认是否为真实后台
实战示例:
http.request.uri contains "admin" and ip.src==192.168.94.59
3. 分析登录行为
爆破特征:
- 大量POST请求到登录接口
- 使用不同用户名/密码组合
- 最终出现302跳转(登录成功)
分析方法:
- 过滤登录成功请求:
http.response.code==302 - 跟踪HTTP流查看登录凭证
- 对比正常用户与攻击者的行为差异
实战命令:
http.request.method=="POST" and http.request.uri contains "login"
4. Webshell识别
PHP Webshell特征:
- 非常规PHP文件访问
- 包含
eval(、system(、exec(等危险函数 - POST请求中包含代码执行参数
分析方法:
- 过滤PHP文件访问:
http.request.uri contains ".php" - 查找可疑参数:
http contains "eval(" - 跟踪HTTP流查看完整交互
实战示例:
http.request.uri contains ".php" and ip.src==attacker_ip
四、Cobalt Strike远控流量分析
1. HTTP隧道特征
4.0版本:
- 被控端定期向服务端发送POST请求
- 请求路径通常为
/submit.php - Content-Type:
application/octet-stream - 数据加密,无明文
3.12版本:
- 命令执行结果明文传输
- 其他特征与4.0类似
检测方法:
http.request.method=="POST" and http.request.uri contains "submit.php"
2. HTTPS隧道特征
- 大量TLS握手包
- 数据完全加密
- 难以直接从流量中识别
- 可通过行为模式(定时心跳)辅助判断
3. 检测建议
- 关注异常的子域名请求
- 监控非常规的HTTP POST请求
- 分析通信的时间规律性
- 结合端点安全数据综合判断
五、完整攻击链还原
通过流量分析可还原的典型攻击链:
-
信息收集阶段:
- 使用扫描器(WVS等)识别Web应用
- 探测后台地址(
/admin/login.php)
-
入侵阶段:
- 爆破后台密码(admin/xxx)
- 成功登录获取后台权限
-
持久化阶段:
- 通过后台功能上传Webshell(a.php)
- 建立Cobalt Strike等远控通道
-
横向移动:
- 内网扫描探测
- 凭证窃取与权限提升
六、防御建议
-
流量层防御:
- 部署IDS/IPS检测扫描行为
- 监控异常HTTP请求模式
- 限制后台管理页面的访问源
-
应用层防御:
- 强化登录验证机制(双因素认证)
- 禁止上传可执行文件
- 定期更新Web应用
-
监测响应:
- 记录并分析网络流量日志
- 建立Webshell检测机制
- 制定应急响应预案
通过系统的流量分析,防守方可以精准识别攻击行为,及时阻断攻击链,有效提升整体安全防护能力。