
一个被广泛编译进物联网设备的网络代码组件,一次性曝出两个高危漏洞。更值得行业警惕的,不是漏洞本身,而是它暴露出的供应链"修复断点"——补丁写好了,却没有任何人能直接装上去。
事件背景
9 月 22 日,美国网络安全和基础设施安全局(CISA)一次性发布九份工业控制系统安全公告,其中两份指向同一个对象:一个被广泛用于嵌入式系统的轻量级 TCP/IP 协议栈。它以"能在仅有几十 KB 空闲内存的单片机上跑通网络通信"著称,是物联网设备、工业控制器、医疗与交通终端最常见的网络底座之一。
它的特殊之处在于:它不是可采购的产品,而是被层层编译进固件的开源代码。设备出厂时用户既看不到它,也无从查询版本——这正是本次讨论的起点。
关键事实梳理
本次披露的两处缺陷,均影响该协议栈 2.0.1 至 2.2.1 的全部版本——几乎涵盖它自 2.0.1 以来的近十年固件。
第一处(CVE-2026-87121,CVSS 3.1 评分 9.8,严重级)位于其 MQTT 客户端组件,类型为越界写入(CWE-787),成功利用可让攻击者获得完整代码执行能力;攻击向量为网络,无需凭据与用户交互。MQTT 是物联网设备与云平台间最主流的消息协议,大量联网设备恰好编译了这一路径。
第二处(CVE-2026-91018,CVSS 3.1 评分 8.8)位于其低功耗无线适配层(6LoWPAN),类型为双重释放(CWE-415),可致系统崩溃、拒绝服务与内存损坏,并可能进一步导致代码执行;其利用需相邻网络访问,无法直接公网远程利用。
两处缺陷由安全研究机构分别报告,官方均标注"暂未发现已知的公开利用"。受影响的关键基础设施行业覆盖化工、通信、关键制造、能源、金融、医疗与公共卫生、交通运输、水与污水处理,部署地区为全球。
真正的问题出在修复环节。官方给的修复方式不是可下载安装的新版本,而是一个代码提交标识符(commit ID)——修复只存在于该项目主干分支上。该项目最近一次正式版本发布于 2025 年 2 月,距本次披露已近 600 天,下一版本尚未发布;其缺陷跟踪系统里,计划发布版本一栏填的还是个并不存在的版本号。
结论很直白:修复存在,却没有可安装的发布版本。 想交付已修复协议栈的设备制造商,只能自行从源码提取那次提交,无法靠升级版本号完成。
对厂商、用户与行业的影响
对产品厂商而言,这是一次"资产清单失效"的现场演示。 公告把该协议栈本身列为"厂商",技术上准确,运维上却近乎无用——几乎没有企业的资产台账里会有一条叫这个名字的记录。厂商真正要回答的是:我卖出去的哪些型号,编译了带 MQTT 客户端或低功耗无线路径的这个版本?而只有制造商自己知道答案。
对用户与运维方而言,风险不是"有没有漏洞",而是"问不出来、也修不了"。 这类缺陷的修复不在运维人员权限内:不是重启、固件升级或一条防火墙规则能解决的,而要沿"上游开源项目 → 芯片与模组供应商 → 整机厂商 → 集成商 → 最终用户"逐级传递,任何一环沉默,修复就停在原地。同批公告里还有一个对称案例:某控制平台因身份认证组件缺陷受影响,云侧服务商两周内完成修复,而自行部署的客户只能等厂商发布适配版本。
对行业而言,风险传导的规模已被本次事件验证。 九份公告里有四份描述的缺陷,都不属于公告所列厂商自己编写的代码。一段被大量产品共用的第三方代码,一次缺陷就把风险同时铺进成千上万种设备,而修复的接力棒分散在无数家厂商手中。
标准视角的专业判断
本组织牵头制定的两项物联网产品信息安全国际技术规范,恰好从两个方向覆盖了本次暴露的问题。
其一,BSI-CC-PP-0110(物联网安全通信模块)明确要求:安全通信模块应在所有网络端口与服务均暴露、且无防火墙保护的情况下仍能自保,它不假设设备身后有外围防护。本次两处缺陷都落在通信协议栈最底层——MQTT 客户端与低功耗无线适配层,正是"通信路径本身应具备最低安全基线"所针对之处。
其二,修复的有效性本身也是标准指标。BSI-CC-PP-0109 的"安全更新"包与 PP-0110 的 O.SCM.SecureUpdate 要求,都把固件更新的认证与完整性保护列为必选项。对应到国内标准,GB/T 40349-2021 第 6.4.2.7 条明确要求第三方组件与开源软件不得存在已知的高危漏洞,并要求升级包具备完整性校验与来源验证;GB/T 41789-2022 第 6.7 条则要求更新机制具备来源校验、通道防中间人、失败保持原固件可用,并禁止非授权固件回退。
两组要求放在一起看,判定就很清晰:漏洞是技术问题,而"近 600 天无正式发布、修复只能靠单独提取提交"是流程与治理问题。GB/T 40349-2021 那条要求实际给整机厂商划了一条硬线——要对自己并未编写的代码承担结果责任。而承担结果的前提,是先知道自己用了什么、用的哪个版本、谁负责告知与修复。
趋势预判
第一,"补丁存在"与"补丁可安装"将加速分离。 随着开源组件在物联网固件中占比上升,"有修复"这一措辞会被反复追问:修复在谁的源码树里?经过多少手才到我的设备上?披露颗粒度需从"漏洞编号"升级到"受影响设备型号"。
第二,软件物料清单(SBOM)会从合规加分项变成准入必需品。 本次事件的核心难题是"无法确定哪些设备受影响",只有它能回答。欧盟《网络弹性法案》已进入执行阶段,对数字产品制造商提出了漏洞与安全事件的报告义务;供应链透明度的监管压力正与这类技术事件合流。
第三,采购合同需要补上新的条款。 本次事件最有价值的追问不是"你要打哪个补丁",而是:如果明天又出现一份同类公告,你有多少供应商能在一周内告诉你,他们的固件是否包含它?又有多少合同赋予你询问的权利?
第四,安全设计的出发点需要从"边界防护"回归"本体自持"。 当缺陷位于通信协议栈最底层时,任何外围防护都只是绕行。设备必须在无人看管、无防火墙、无外围兜底的前提下,依然保证通信路径的最小安全基线——这正是两项国际规范从一开始就坚持的立场。