0x00 漏洞概述
CVE ID | CVE-2021-43267 | 时 间 | 2021-11-04 |
类 型 | RCE | 等 级 | 严重 |
远程利用 | 是 | 影响范围 | |
攻击复杂度 | 低 | 可用性 | 高 |
用户交互 | 无 | 所需权限 | 无 |
PoC/EXP | 在野利用 |
0x01 漏洞详情
2021年11月4日,SentinelLabs 的研究人员在 Linux Kernel的 TIPC 模块中发现了一个堆溢出漏洞(CVE-2021-43267),该漏洞的CVSS评分为9.8。攻击者可以远程或本地利用此漏洞以执行任意代码,获取内核权限,从而攻击整个系统。
TIPC(透明进程间通信)是一个专门为集群内通信设计的协议。它可以配置为通过 UDP 或直接通过以太网传输消息。消息传递是有顺序保证、无丢失和流量控制的。延迟时间比任何其他已知协议都短,而最大吞吐量可与 TCP 相媲美。
CVE-2021-43267与一种名为“MSG_CRYPTO”的新的用户消息类型有关,该消息类型于 2020 年 9 月推出,使集群中的对等节点能够发送加密密钥(目前似乎只支持AES GCM)。
在MSG_CRYPTO消息中,标头大小和消息大小都根据实际数据包大小进行验证,因此这些值保证在实际数据包的范围内,但对于MSG_CRYPTO消息的keylen成员或密钥算法名称本身(TIPC_AEAD_ALG_NAME)的大小,并没有针对消息大小的类似检查。这意味着攻击者可以创建一个体型较小的数据包来分配堆内存,然后使用keylen属性中的任意大小写入该位置的边界之外:
触发漏洞的 MSG_CRYPTO 消息示例
该漏洞存在于Linux Kernel中的net/tipc/crypto.c中,远程攻击者可以通过TIPC功能以利用用户提供的MSG_CRYPTO消息类型大小验证不足来进行攻击。此外,TIPC 模块随所有主要 Linux 发行版一起提供,但需要用户加载才能启用该协议(非系统自动加载)。
影响范围
5.10-rc1<Linux kernel 版本< 5.15
0x02 处置建议
目前此漏洞已经修复,建议将Linux kernel更新到最新版本5.15(已于2021年10月31发布)。
下载链接:
https://www.kernel.org/
补丁链接:
https://github.com/torvalds/linux/commit/fa40d9734a57bcbfa79a280189799f76c88f7bb0
0x03 参考链接
https://www.sentinelone.com/labs/tipc-remote-linux-kernel-heap-overflow-allows-arbitrary-code-execution/
https://thehackernews.com/2021/11/critical-rce-vulnerability-reported-in.html
https://www.zdnet.com/article/remote-code-execution-flaw-patched-in-linux-kernel-tipc-module/#ftag=RSSbaffb68
https://nvd.nist.gov/vuln/detail/CVE-2021-43267
声明:本文来自维他命安全,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。