漏洞分析和攻击识别
1.敏感信息泄露:
分析方法:使用 Wireshark 的搜索功能(Edit -> Find Packet),在报文详情中搜索关键词,如 password、token、credit、authorization 等。或直接过滤 HTTP 请求与响应 (http.request or http.response)。
特征识别:在未加密的 HTTP 请求或响应体中,明文传输用户凭证、会话令牌、身份证号、数据库连接字符串等信息。即使在 HTTPS 中,若配置错误或部分请求降级为 HTTP,也可能导致泄露。
2.注入类漏洞(如 SQLi、XSS)验证:
分析方法:在已知测试点发起注入攻击(如使用 SQLMap 或手动测试)的同时抓包。捕获后,过滤出指向目标 URL 的 HTTP POST 或 GET 请求 (http.request.method == POST && http contains "target_param")。
特征识别:在 HTTP 请求的 URI 参数或 POST 数据体中,观察是否包含典型的注入载荷。例如,单引号(')、逻辑语句(OR 1=1)、联合查询(UNION SELECT)、XSS 脚本标签(<script>alert(1)</script>)。通过分析请求包,可确认攻击载荷是否被正确发送;通过分析响应包,可查看是否包含数据库错误信息、执行结果或弹窗脚本,从而判断漏洞是否存在及利用成功与否。
3.会话安全缺陷:
分析方法:追踪 HTTP 流 (Follow -> HTTP Stream),观察整个会话交互过程。
特征识别:检查 Cookie 中的会话令牌是否在多个会话间重复使用、是否缺乏安全标志(如 Secure、HttpOnly)、是否通过非安全通道传输。观察登录过程是否在 HTTP 上完成,导致凭证被窃听。
4.业务逻辑漏洞辅助:
分析方法:对关键业务操作(如支付、更改邮箱、越权访问)进行抓包,并比较不同权限用户或不同操作阶段的请求差异。
特征识别:通过重放或修改数据包(结合如 Burp Suite 工具),观察服务器响应。Wireshark 可捕获到修改前后请求与响应的原始状态,用于分析是否存在参数篡改、顺序绕过、权限校验缺失等逻辑问题。
5.异常与攻击流量识别:
分析方法:观察统计信息(Statistics -> Conversations),查看哪些 IP 地址在频繁通信。使用过滤器排查大量错误响应 (http.response.code >= 400)。
特征识别:发现来自单一源IP的高频请求,可能指向暴力破解或DoS攻击。大量 404 Not Found 或 500 Internal Server Error 响应,可能映射了目录遍历、扫描器活动或应用程序错误。
Wireshark 是 WEB 安全测试中一个强大的诊断和取证工具。它将抽象的网络交互数据转化为可视化的数据流,使安全测试人员能够从底层验证漏洞、分析攻击模式并深刻理解应用程序的网络行为,从而提升安全测试的深度与准确。