top of page

lwIP(Lightweight IP)面临隐藏在嵌入式系统中的高严重性双重释放漏洞

1天前
讀畢需時 12 分鐘

lwIP(Lightweight IP)现收到一项严重性评分为 8.8 的警告,影响 2.0.1 至 2.2.1 版本。已披露的漏洞可能导致受影响系统崩溃、内存损坏,或在特定条件下被用于执行代码。

该漏洞编号为 CVE-2026-91018,涉及双重释放。此类错误发生在软件对同一块内存分配执行多次释放操作时。CISA 表示,成功利用该漏洞可能导致受害系统遭受拒绝服务、内存损坏或代码执行。

这并非只是又一则应用服务器补丁通知。lwIP 是一款紧凑型 TCP/IP 协议栈,被嵌入工业设备、传感器、控制器以及联网设备等产品中。这类部署通常将该库隐藏在供应商固件之内,使责任归属和修复工作难以厘清。

因此,矛盾并不只是存在漏洞的代码与已修正代码之间的较量,而是可复用嵌入式组件的高效性,与组织对其实际运行位置所知有限之间的冲突。

CISA 的 lwIP 公告带来了什么变化

CISA 将上游内存管理缺陷转化为设备运营方和制造商亟须应对的资产发现问题。

该机构于 2026 年 9 月 22 日发布了 lwIP 公告,确认 lwIP API 2.0.1 至 2.2.1 版本受 CVE-2026-91018 影响。

CISA 为该漏洞评定的 CVSS v3.1 基础评分为 8.8,同时报告的 CVSS v4 评分为 8.7。两项评级均表明该漏洞属于高严重性范围。

公告将这一弱点描述为双重释放,并归类为 CWE-415。MITRE 对双重释放的定义指出,重复释放同一块内存可能破坏内存分配器的数据结构,进而造成崩溃、意外写入,或后续控制流改变。

CISA 表示,利用该漏洞可能导致目标系统崩溃、拒绝服务、内存损坏或代码执行。不过,公告并未断言每一种受影响配置都可能产生所有这些后果。

攻击向量属于相邻网络访问,而非可通过任意可达互联网连接完全远程利用。攻击者必须获得能够与漏洞系统交互的网络位置。这一区别降低了分段网络环境中的暴露程度,但并未消除风险。

工业网络经常将控制器、工程站、网关和管理系统连接在共享的运营网段中。被攻陷的维护笔记本电脑或隔离不当的无线网络,都可能提供所需的接近条件。

CISA 报告称,受影响技术已在全球部署,并将该问题与化工、通信、制造、能源、金融、医疗、交通和水务基础设施相关联。

这些行业标签表明的是潜在暴露面,并不意味着每个所列行业都已确认遭到入侵。lwIP 是可复用组件,其是否存在取决于各产品的固件和构建配置。

该机构将漏洞报告归功于 Tetrel Security 的 Eric Evenchick。CISA 还表示,在公告发布时尚未发现已知的公开利用案例。

这一情况值得关注,但不应成为延迟处置的理由。内存损坏漏洞的研究可能在披露后持续推进,尤其是在维护者公开修复性源代码变更之后。

因此,首要任务不是扫描每个网络地址以寻找服务标识,而是识别哪些设备包含受影响代码,以及其配置是否暴露了易受攻击路径。

为什么小型网络协议栈会带来大型资产盘点难题

CVE-2026-91018 最困难的部分,是发现哪些产品悄然继承了存在漏洞的库。

lwIP 为内存、存储和处理能力受限的系统提供 TCP/IP 网络功能。其官方文档称,该实现旨在降低资源占用,同时保留常见的互联网协议。

这一设计使该协议栈适用于微控制器和嵌入式操作环境,也意味着组织可能在没有直接安装或维护它的情况下使用 lwIP。

设备制造商可以将该协议栈引入软件开发套件。半导体供应商可以将其与板级支持软件一同打包。另一家公司随后可能把该软件包集成到网关、仪表或工业控制器中。

在每个环节中,组件都可能被重命名、修改、冻结,或仅选择性地回移补丁。最终产品可能只显示供应商的固件版本,而不会显示底层 lwIP 修订版本。

这条依赖链同时给多个群体带来压力。上游维护者必须修正代码,制造商必须评估其产品,而资产所有者必须定位受影响的部署。

运营方不能安全地假设新近发布的设备采用了较新的 lwIP 版本。嵌入式产品的开发通常早于出货多年,而经过验证的固件分支在此后可能长期保持不变。

受影响版本范围正说明了这一问题。2.0.1 版本于 2017 年发布,而 2.2.1 版本则于 2025 年 2 月推出。2.2.1 发布公告将该版本主要描述为一组错误修复。

产品的使用年限同样无法可靠地判断其库版本。新硬件可能复用旧固件,而旧设备也可能在不更改主要组件标签的情况下获得回移修复。

软件物料清单可以缩短排查时间。一份准确的 SBOM 会记录产品构建中包含的组件及版本,使上游披露能够在无需手动逆向工程前就关联到受影响固件。

但 SBOM 只有在完整、最新且与已部署资产关联时才有帮助。如果运营方无法将开发阶段的组件清单映射到设备序列号和固件版本,其价值便十分有限。

采购记录提供了另一条路径。运营方可以向供应商询问特定产品系列是否包含 lwIP,以及 CVE-2026-91018 是否能在其配置中被触发。

供应商的回答应具备足以支持行动的细节。“我们使用 lwIP”并不足够;而“未受影响”的结论则应说明经过测试的版本、代码分支和配置依据。

固件分析能够填补剩余空白。团队可以搜索二进制文件、符号、版权声明、协议行为或已知代码模式。不过,结果仍需验证,因为供应商可能剥离符号,或修改上游代码。

这类发现工作在运营技术环境中尤其困难。许多设备无法承受侵入式扫描、计划外重启,或生产期间的试验性流量。

医疗、能源、交通和水务环境中还存在服役周期很长的设备。一些部署依赖供应商认证的固件以及严格控制的维护窗口。

因此,CVE-2026-91018 促使供应商发布准确的影响声明,也促使运营方维护组件级资产清单,而非仅依赖设备名称和 IP 地址。

lwIP(Lightweight IP)以可见性换取极小体积

使 lwIP 极具价值的可移植性,也让安全责任分散在异常碎片化的供应链中。

传统服务器漏洞通常指向可识别的软件包管理器、操作系统或云服务。团队可以查询已部署版本,并分发标准化更新。

lwIP Lightweight IP 漏洞并不符合这种运营模式。受影响的库可能被直接编译进固件,由平台供应商修改,或封装在更大的网络框架内。

这使主要矛盾成为可见性与效率之间的取舍。小型、可复用的网络协议栈帮助制造商让资源受限设备接入网络,但这种复用也掩盖了究竟由哪个组织负责最终补丁。

上游项目提供的是源代码,而不是包含该代码的每台设备的固件。设备供应商仍须负责集成、测试、签名并分发修正后的构建版本。

组件供应商可能位于两者之间。使用芯片供应商软件包的制造商,可能需要先获得更新的软件包,才能准备自己的固件。

运营方处于链条末端。他们通常无法独立替换嵌入式库,否则可能破坏签名、支持协议或设备认证。

这种碎片化改变了防御人员对“受影响版本”的理解方式。所列范围描述的是存在漏洞的上游组件,而不是完整的易受攻击产品目录。

供应商可能已移除受影响功能、修改相关代码,或已经回移修复。另一家供应商则可能将易受攻击路径复制到带有不同版本字符串的分支中。

配置同样会影响实际暴露程度。该协议栈提供多种 API、内存分配选项、操作系统集成方式和线程模型。漏洞在这些组合中可能表现不同。

CISA 的公告确认了受影响的上游版本范围及潜在后果,但并未证明所有包含这些版本的设备都能够稳定实现代码执行。

这一限定应当推动测试,而非助长自满。若目标控制着物理流程、通信通道或依赖安全性的服务,系统崩溃本身就已具有重大影响。

反复崩溃可能中断监控,或迫使设备进入降级模式。内存损坏还可能造成比明确故障更难诊断的不可预测行为。

代码执行是报告中最严重的后果。其可行性取决于内存布局、编译器保护、内存分配器行为、硬件架构,以及攻击者对损坏数据的控制程度。

嵌入式平台在这些维度上差异极大。一些平台具有内存保护和签名更新机制,而更小型的系统可能缺少现代服务器常见的防护措施。

相邻网络访问要求带来了另一种权衡。它限制了攻击者的初始位置,但工业环境通常依赖受信任的本地通信。

威胁行为者一旦攻陷某台联网设备,便可利用这一立足点接近相邻系统。承包商、远程访问系统和工程工作站也可能无意中跨越网络边界。

网络分段依然很有价值,因为它能够限制这些路径。然而,分段无法修复已经共享运营网络的设备内部存在漏洞的内存处理问题。

因此,此次披露挑战了一项常见假设:即使紧凑型嵌入式库从未出现在传统软件资产清单中,也可能带来广泛的安全问题。

双重释放如何跨越可靠性边界

CVE-2026-91018 将内部所有权错误转化为潜在的安全利用基础,因为内存分配器依赖一致的状态。

程序会在处理数据、跟踪连接和维护协议状态时分配内存。随后,当这些数据不再需要时,程序会释放相应内存。

当两条执行路径都将同一块已分配内存视为自己的责任时,就会发生双重释放。第一次释放会将该内存块返还给分配器。第二次释放则会操作已经处于空闲状态的内存。

至少,这一序列可能触发断言或立即崩溃。如果攻击者能够反复触发这一易受攻击条件,该结果便会造成拒绝服务。

更危险的情况是,第一次释放允许另一对象占用同一内存块。之后的释放可能破坏元数据,或使属于该新对象的内存失效。

攻击者有时会精心安排内存分配,使被破坏的指针影响选定位置。这个过程可能将内存安全缺陷转化为数据篡改或代码执行。

不过,可利用性并非必然。结果取决于易受攻击路径、攻击者可控的输入、分配器设计、时序、编译器设置和目标架构。

CISA 的评级表明存在一种严重的攻击场景:相邻访问、低攻击复杂度、无需权限且无需用户交互。这些指标描述的是评估条件,并非对普遍可利用性的保证。

这一区别对于负责任的报道至关重要。“可能导致代码执行”准确反映了公告内容;“可立即控制所有 lwIP 设备”则会夸大现有证据。

该项目当前的内存管理器包含旨在检测无效或重复释放的检查机制。其行为取决于编译时选项以及所使用的内存分配路径。

检测不同于预防。在识别出非法释放后使设备停止运行的检查机制,能够保护内存完整性,但仍可能造成服务中断。

一些产品使用标准库分配器,而非 lwIP 的内部堆。另一些则采用内存池、自定义钩子或操作系统功能。这些选择可能改变可见的故障表现和利用前景。

因此,公告中的 API 标签十分重要。产品团队必须沿着其实际集成方式追踪受影响代码,而不能只检查是否启用了某一个分配器选项。

复现该漏洞应在隔离实验室中进行。工程师需要使用出货版本的构建配置、目标架构及相关流量路径。

测试应记录设备是否崩溃、自动重启、进入故障状态,或继续运行但数据已损坏。恢复行为的重要性可能不亚于首次故障本身。

重启后进入安全状态的设备,与在没有告警的情况下停止通信的设备,所带来的运营风险并不相同。在未经测试前,不应假定任何一种结果。

安全团队还应避免使用未经验证的利用流量探测生产设备。即使代码执行尝试未成功,也可能造成 CISA 所描述的拒绝服务影响。

这正是安全与网络安全流程必须衔接的地方。一项技术上正确的测试,如果针对正在运行的工业流程开展,仍可能带来不可接受的后果。

修复提交不等于整个设备群已打补丁

上游修正只是补救工作的起点,每个下游固件分支仍须吸收、验证并分发该修正。

CISA 建议用户参考上游提交 f873b6295933e4149a2132adf3e9a2d2a676a5ec。这项源代码修正为维护者提供了可供审查和集成的具体变更。

这对直接从源代码构建 lwIP 的团队很有帮助。对于运行成品、且其固件由供应商提供的组织而言,情况则没那么直接。

提交不是已签名的固件镜像。它不会自动通过每家制造商的硬件测试、法规审查、回归测试套件或部署流程。

它本身也不会确立新的版本号。仅比较发行标签的资产盘点工具,可能继续标记已修复的回移版本,或遗漏易受攻击的分支。

制造商应首先识别包含受影响代码的每个仍在维护的分支,随后审查可能改变补丁应用方式的本地修改。

补丁能够干净应用,并不能证明其行为安全。网络代码会与定时器、缓冲区、回调和设备专用的操作层交互。

回归测试应涵盖连接创建、连接拆除、资源耗尽、畸形流量,以及从网络错误中恢复。长时间运行测试能够发现短暂功能测试可能遗漏的生命周期问题。

供应商应在完成验证后发布产品专用公告。这些通知应说明受影响的型号、固件版本、修正后的发行版,以及任何依赖配置的例外情况。

它们还应解释更新是否需要重启或中断流程。运营方需要这些信息,以便围绕服务和安全要求安排维护。

在修正后的固件可用之前,CISA 建议降低控制系统设备周边的暴露面。该机构通常建议让此类系统远离互联网,并将控制网络置于防火墙之后。

远程访问应采用安全方法,并在适用情况下使用已更新的虚拟专用网络。团队应认识到,VPN 保护的是连接,而非修复目标设备。

网络规则可以将通信限制在必要的对等端和协议范围内,从而减少能够访问易受攻击接口的系统数量。

监控可发现意外连接尝试、设备重启、看门狗事件和异常运行流量。这些信号可能揭示测试、意外触发或利用尝试。

检测逻辑应考虑每种产品的协议。CVE 标识符很少直接出现在网络流量中,通用特征规则也可能遗漏供应商特定的封装方式。

资产所有者应根据可达性和后果确定系统优先级。一台易受攻击的实验室传感器,与支持连续生产的控制器,面临的风险并不相同。

当设备与用户管理的终端、第三方维护系统或可远程访问的网关共享网络时,优先级应提高。恢复选项有限也应提升紧迫性。

运营方必须记录临时控制措施及其到期时间。紧急防火墙规则往往会在原始原因消失后继续存在,增加复杂性,却不能确保底层缺陷已经修复。

团队应保留最终补救的证据。该记录可包括供应商通知、固件哈希、部署日期、验证结果和已批准的例外情况。

一个可搜索的知识库可帮助工程团队关联公告、固件记录、SBOM 和测试结果。但其底层证据仍必须保持权威性和时效性。

目标不只是关闭一张漏洞工单,而是证明每一项暴露的产品要么已获得修正代码,要么在经过审查的补偿控制措施后运行。

防御方接下来应关注什么

三个信号将决定 CVE-2026-91018 是继续作为棘手的维护问题存在,还是演变为活跃的运营威胁。

第一个信号是来自嵌入式和工业供应商的产品专用披露。上游版本信息无法告诉资产所有者,具体是哪台控制器、仪表、网关或医疗设备包含该缺陷。

有价值的供应商通知将列出型号和固件版本,并区分受影响、未受影响和已修正的发行版,同时说明任何配置要求。

受影响产品名单不断增长,将强化这样一个结论:组件可见性是核心挑战。清晰且范围有限的暴露声明则会缩小实际影响范围。

第二个信号是包含该修正的已打标签 lwIP 发行版。CISA 发布公告时,2.2.1 是最新已发布版本,而修复以之后的源代码提交形式存在。

已打标签的发行版将为集成商提供更明确的升级目标,也有助于扫描器和 SBOM 系统区分已修正的上游软件与受影响范围内的软件。

发行版可用并不意味着下游补救已经完成。制造商仍需导入代码、重新构建固件、测试产品并分发更新。

第三个信号是利用开发或已观察到攻击的证据。CISA 表示在发布时未发现已知的公开利用,但这一状态可能随着技术分析的扩展而改变。

可靠的概念验证将帮助供应商验证暴露情况,但也会增加不安全扫描的风险,并加速攻击者的试验。

被纳入 CISA 的 Known Exploited Vulnerabilities 目录将构成更强的警告。这表明存在现实环境中的利用证据,而不只是理论影响。

在这些信号出现之前,防御方可以采取若干具体行动。

  • 向每家相关供应商确认,其产品是否包含 lwIP 2.0.1 至 2.2.1 版本。

  • 索取确切的修正后固件版本及预计发布日期。

  • 将易受攻击产品映射至网络分段、物理流程和恢复程序。

  • 限制来自业务网络、无线客户端和供应商维护路径的访问。

  • 审查日志,查找崩溃、无法解释的重启、看门狗复位和异常相邻流量。

  • 在接触生产系统前,先在具有代表性的硬件上测试补丁和缓解措施。

  • 通过提交或供应商固件标识符跟踪回移修复,而不只依赖 lwIP 版本。

安全团队也应在报告中保留不确定性。疑似组件匹配并不等于已确认暴露,而供应商保持沉默也并非安全的证明。

lwIP Lightweight IP 漏洞值得关注,因为它同时具有严重的内存后果和较差的组件可见性。其相邻网络边界只有在网络分段按设计发挥作用时才能提供保护。

眼下的问题很实际:在利用活动或运行故障替你发现设备之前,你的组织能否识别出每一台包含 lwIP 的设备?

 
 

免费开始使用

一款本地优先的AI助手

为了获得更好的人工智能体验,

remio 目前仅支持Windows 10+ (x64)和M-Chip Mac 。

你的 AI 工作伙伴

和 remio 一起高效工作

规划、创作、交付

一站式完成

bottom of page