# net/smc:修复 smc_init() 中可能泄漏的 pernet 命名空间
## 概述
在 Linux 内核的 `net/smc` 模块中,发现了一个漏洞,该漏洞可能导致未处理的操作系统命名空间泄露。
## 影响版本
未指定具体版本。
## 细节
在 `smc_init()` 中,调用了 `register_pernet_subsys(&smc_net_stat_ops)`,但没有进行错误处理。如果该调用失败,`&smc_net_ops` 的注册将不会被撤销。另外,如果 `smc_nl_init()` 失败,`&smc_net_stat_ops` 本身也不会被撤销。这将导致在子系统链表中遗留未处理操作,从而引发其他模块调用 `register_pernet_operations()` 时触发页面错误。
错误日志如下:
```
BUG: unable to handle page fault for address: fffffbfff81b964c
RIP: 0010:register_pernet_operations+0x1b9/0x5f0
Call Trace:
<TASK>
register_pernet_subsys+0x29/0x40
ebtables_init+0x58/0x1000 [ebtables]
...
```
## 影响
当其他模块尝试调用 `register_pernet_operations()` 时,系统会触发页面错误,可能导致系统挂起或蓝屏。
# | POC 描述 | 源链接 | 神龙链接 |
---|
标题: Making sure you're not a bot! -- 🔗来源链接
标签:
标题: 503 Service Temporarily Unavailable -- 🔗来源链接
标签:
标题: Making sure you're not a bot! -- 🔗来源链接
标签: