文章总结: 流量检测设备遇到未知协议时不会完全失明,虽无法提取应用层字段导致内容检测失效,但基础会话日志与行为检测依然有效。应对策略包括:有规范时配置自定义解析,无规范时建立行为基线兜底,并结合业务日志关联补全。日常无需追求全协议深度解析,融合标准深度检测与行为基线即可有效兜住威胁。 综合评分: 90 文章分类: 安全运营,实战经验,解决方案,安全建设
聊聊流量解析那些事:遇到不认识的协议,设备是不是就“失明”了?
Hash先生 Hash先生
倬其安
2026年7月7日 08:35 福建
在小说阅读器读本章
去阅读
是否有过这样的疑问:咱们的流量威胁检测设备,是不是只能认HTTP、DNS、MySQL这些常见的标准协议?要是碰到私有业务协议、自定义的特殊通信协议,设备是不是就直接“瞎了”——日志解析不出来,威胁也发现不了?
流量日志到底是怎么来的?
直白说,流量检测设备生成日志的过程,本质就是三步:先把零散的数据包拼成完整会话,再认出这是什么协议,最后按协议规则把关键字段提取出来,整理成咱们能看懂的结构化日志。核心逻辑确实是围绕协议规范展开的。
第一步是会话流重组,这是所有日志的基础,跟应用层协议没关系。 设备拿到原始数据包后,先按五元组(源目IP、源目端口、协议号)把零散的报文拼成一条条完整的通信会话。这一步走完,最基础的信息就已经有了:通信双方是谁、什么时候开始的、持续了多久、传了多少包多少字节、TCP连接的状态是什么样的。 只要是IP流量,不管上层跑的是什么应用,这部分基础日志都一定能生成,不会因为协议特殊就消失。
第二步是协议识别,先搞清楚“这是什么协议”。 主流的识别方式是端口匹配加DPI深度包检测搭配着来。靠端口是最基础的,比如默认53端口对应DNS、3306对应MySQL,但不准,因为协议可以改端口。所以现在主要靠载荷特征匹配——每种标准协议的报文都有固定的“指纹”,比如HTTP开头的GET/POST、TLS握手的ClientHello,设备靠这些特征就能精准认出协议,哪怕跑在非标准端口上也跑不掉。
第三步是字段提取,也就是大家说的“按协议特定字段解析”。 认出协议之后,设备就会按照对应的官方标准格式,把报文里的关键字段逐个抠出来。比如HTTP协议就提取请求方法、URL、状态码、User-Agent;DNS协议就提取查询域名、查询类型、响应结果;数据库协议就提取登录用户名、执行的SQL语句。 咱们平时看到的应用层流量日志,就是这么来的。协议越标准、支持得越完善,日志字段就越全,能做的威胁检测粒度也就越细。
碰到不认识的特殊协议,到底会怎么样?
先说日志层面:基础信息全有,应用层细节缺失。 设备不会因为读不懂应用层协议,就直接把整条流量丢了。三四层的基础会话日志一定会正常输出,谁和谁通信、什么时候连的、传了多少数据、连接正不正常,这些信息都完整。 真正缺失的是业务层面的字段——比如私有协议里的操作指令、用户账号、业务参数、返回码这些。设备不知道协议的格式规范,就没法精准拆分字段,日志里只会标记成“未知TCP协议”或“未知UDP协议”,应用层相关的字段是空的。 打个比方:就像你看到两个人在打电话,你知道他们谁打给谁、聊了多久、传了多大的文件,但他们说的是你听不懂的方言,具体聊了什么内容你不知道。
再说说大家最关心的检测层面:内容检测失效,但行为检测依然管用。 威胁检测本身就分很多维度,不是所有检测都得看懂报文内容。
- 会失效的,是依赖载荷内容的检测。比如SQL注入、XSS攻击、Webshell上传、数据库违规操作这类,必须看懂报文里的具体内容才能判定,碰到未知协议自然就无从下手。
- 依然完全生效的,是基于行为特征的检测。比如端口扫描、暴力破解、异常大流量外连、非工作时间的陌生访问、C2心跳类的周期性小流量外连、隧道通信特征……这些只靠会话的时间、频率、流量大小、连接规律就能判断,完全不需要解析应用层内容。 哪怕是加密协议,本质也是类似的逻辑——看不到明文载荷,但依然能靠握手特征、证书指纹、行为规律做恶意流量识别,远不是彻底失明。
实际工作中,碰到私有/特殊协议该怎么办?
日常运营里常用的应对思路有三个,按优先级从高到低排。
第一,能拿到协议规范的,优先配自定义解析规则。 现在主流的全流量分析、NDR设备,基本都自带自定义协议解析功能。只要手里有这套私有协议的格式文档,清楚每个字段的位置、长度和含义,就可以在设备里配置对应的提取规则。配置完成后,私有协议就能和标准协议一样,生成完整的结构化日志,也能加载对应的威胁检测规则,这是最彻底的解决办法。
第二,拿不到规范的,就用行为基线兜底线。 如果协议规范不对外开放、没法做自定义解析,就别死磕“看懂内容”,把检测重心从“看内容”转到“看行为”上。 先给这套业务流量建立正常的访问基线:哪些源地址是合法的、正常的访问时段是什么样的、单次会话的流量范围是多少、固定的通信对端有哪些。后续只要偏离了基线——比如陌生IP突然访问、半夜出现大流量外传、出现了从未有过的横向连接——就触发告警。 真实攻防里,攻击者不管用什么协议,要做横向移动、数据窃取,行为上一定会露出马脚。绝大多数内网渗透事件,最先触发的都是行为异常告警,不靠内容检测也能发现。
第三,流量侧看不清的,用业务日志做关联补全。 不用非要逼着流量设备搞定所有事。流量侧负责发现异常会话,业务侧负责还原具体操作,两边联动起来效果反而更好。 比如流量告警发现某条私有协议会话有异常,就去对应业务系统的操作日志、审计日志里,查同一时间点的账号操作、业务请求,一样能完整还原事件,形成检测闭环。
-=没有哪款设备能覆盖所有场景,也没必要追求“所有协议都要深度解析”。 对咱们日常运营来说,标准协议做深度内容检测,私有协议靠行为基线兜底,再配合业务日志做关联验证,绝大多数威胁都能兜得住。不用因为有几个协议识别不了,就觉得流量检测设备没用;也不能默认设备什么都能看懂,放松了行为侧的监控。
工具是死的,用法是活的。把手里的设备用透,把该补的短板补上,比啥都强。

「倬其安」分享一线实战中的故障洞察与架构思考。
提升安全认知,筑牢防护体系!
“倬其安,然无恙”。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:倬其安 Hash先生 Hash先生《聊聊流量解析那些事:遇到不认识的协议,设备是不是就“失明”了?》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论