HTTP隧道通过将非HTTP流量伪装成正常HTTP通信来绕过网络限制,分析其流量模式需结合协议特征识别、行为模式分析和上下文关联,重点关注异常端口、固定周期通信、数据包大小规律及头部字段异常。
非标准端口通信:攻击者常使用随机端口(10000-65535)规避监控,筛选tcp.port > 10000 and tcp.port < 65535,结合"统计→Conversations"按数据包数量排序,若某TCP流数据包超1000个且无业务关联,可能是C2通信。
固定路径POST请求:HTTP隧道常使用固定URI路径(如/index.php),筛选http.request.method == "POST" and http.request.uri == "/index.php",若POST请求体大小固定(如1024字节)、周期固定(每5秒一次),且响应体为随机字符,可能是HTTP隧道(如reGeorg、meterpreter)。
异常User-Agent:检查http.user_agent,若版本号异常(如"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.9999.99 Safari/537.36"),需警惕隧道工具。
HTTP隧道检测:筛选http.request.method == "POST" and http.request.uri == "/index.php",若响应体无HTML内容(仅随机字符),可能是HTTP隧道;查看POST请求体是否为Base64编码数据。
DNS隧道检测:筛选dns.qry.type == 1 or dns.qry.type == 5,若域名查询频率超10次/秒且域名含特殊字符(如a1b2c3.dns-tunnel.example.com),可能是DNS隧道;提取域名前缀尝试Base64解码,若解码后为命令(如"whoami")可确认。
定时通信:HTTP隧道常每隔固定时间发起连接(如每5分钟一次),使用"统计→IO图表"绘制流量随时间变化曲线,识别周期性流量突增。
小包双向交互:隧道通信常表现为小数据包(<100字节)双向交互,使用过滤器frame.len < 100,结合"追踪流"查看完整会话模式。
固定大小数据包:加密隧道常传输固定大小数据包(如1024字节),使用"统计→协议分级"查看数据包大小分布,异常集中于某固定值需警惕。
TCP流特征:追踪可疑TCP流(右键→"追踪流"→"TCP流"),若数据为随机字节(无明文协议特征),可能是加密C2通信;检查是否存在大量"TCP Dup ACK"或重传,可能表示隧道异常。
捕获配置:设置捕获缓冲区为1GB("选项→捕获缓冲区大小"),启用"使用PACKET_MMAP"(Linux)或"NPF驱动"(Windows)提升效率。
分阶段捕获:先用tshark批量筛选目标网段流量:
tshark -i eth0 -f "host 192.168.1.0/24" -w filtered.pcap
再用Wireshark打开filtered.pcap分析,避免处理原始10Gbps流量。
协议树分析:展开HTTP协议层级,检查请求方法、URI、头部字段及负载数据;对POST请求,查看Content-Type是否为application/x-www-form-urlencoded或multipart/form-data。
流量统计:使用"统计→端点"查看IP通信量分布,某IP发送字节量占比超50%需警惕;用"统计→对话"识别异常通信对。
着色规则:创建自定义着色规则高亮可疑流量(如包含"flag"、"exec"关键词的数据包),让线索自动"跳"出。
配置SSLKEYLOGFILE:在客户端设置环境变量:
# Linux/macOS mkdir ~/tls && touch ~/tls/sslkeylog.log echo "export SSLKEYLOGFILE=~/tls/sslkeylog.log" >> ~/.zshrc && source ~/.zshrc
Wireshark配置:在"首选项→协议→TLS"中指定SSLKEYLOGFILE路径,重启Wireshark后可解密HTTPS流量,查看明文HTTP内容。
reGeorg:使用固定路径(如/tunnel.php),POST请求体为Base64编码的代理数据,响应体为随机字符。
meterpreter:HTTP隧道常使用/index.php路径,User-Agent含"Mozilla/5.0"但版本号异常,通信周期固定(默认5秒)。
DNS隧道工具:如dnscat2,域名查询含特殊编码(如a1b2c3.dns-tunnel.example.com),查询频率高(>10次/秒)。
基线对比:对比正常业务流量,若无动态端口通信或高频DNS查询,则为异常。
威胁情报交叉验证:结合已知隧道工具特征(如User-Agent模式、域名格式)进行确认。
HTTP隧道分析报告 1. 怀疑对象:192.168.1.100 → 2.3.4.5 2. 关键证据: - 端口:使用随机端口12345(非常规业务端口) - 协议:HTTP POST请求至/index.php,响应体为随机字符 - 周期:每5秒固定发送1024字节数据包 - User-Agent:Mozilla/5.0 (异常版本号) 3. 验证方法: - 追踪TCP流确认无明文协议特征 - Base64解码域名前缀得"whoami"命令 4. 结论:高度疑似reGeorg HTTP隧道 5. 建议:检查192.168.1.100主机进程及网络连接
分析要点:HTTP隧道分析需结合协议特征(端口、URI、头部)、行为模式(周期、数据包大小)和上下文(业务基线、威胁情报),避免仅凭单一特征误判。对可疑流量,应使用"追踪流"查看完整会话,结合十六进制数据区验证原始字节特征,确保分析结果准确可靠。