Skip to content

华为工程师提交Linux内核补丁,提升内存安全性

发表时间:Thu Feb 15 2024 20:41:25 GMT+0800 (中国标准时间)

oschina2013 https://mmbiz.qpic.cn/sz\_mmbiz\_jpg/dkwuWwLoRK9KH3wzdLDwb7LAGfeaFg3MOvN8DfSFO19TAITOX1gh68AjKelfYxDahuIKicjoraeD9qdhxib1zgwA/0?wx_fmt=jpeg

华为工程师 Petr Tesarik 向 Linux 内核提交了添加 “沙盒模式”(SandBox Mode, SBM) 的新补丁 —— 用于提升内存安全性。

Petr Tesarik 在邮件写道:

沙盒模式的最终目标是在只允许访问预定义地址内存的环境中执行本地内核代码,因此潜在漏洞无法被利用,或不会对内核的其他部分产生影响。

该补丁为内核添加了沙盒模式的 API 和独立于操作系统的基础架构。它在所有输入和输出数据的 vmalloc () 副本上运行目标函数。由于有了保护页,仅此一项就能防止一些越界访问。

根据文档的描述,沙盒模式的主要目标是通过分解内核来减少内核代码中潜在内存安全错误的影响。SBM API 支持在隔离的执行环境中运行每个组件,特别是用作输入的内存区域和 / 或输出与内核的其余部分隔离,并被保护页包围。

在实现必要的 arch hook 的架构上,沙盒模式利用硬件分页设施和 CPU 特权级别来强制仅使用这些预定义的内存区域。

有了 arch 的支持,SBM 还可以从 protection violation 进行恢复。这意味着 SBM 可强制终止沙盒,并向调用者返回错误代码(例如 -EFAULT),以便执行可以继续。这种实现提供了强隔离机制。

详情查看:

https://lore.kernel.org/lkml/20240214113035.2117-1-petrtesarik@huaweicloud.com/

往期推荐

“小而美”Tauri已支持iOS和Android,你还在用“技术毒瘤”Electron?

微软为Windows 11引入原生sudo命令支持

谨慎更新“宇宙最强编辑器”——会导致远程开发功能无法使用

AI版权第一案:我用AI做的图,版权归我吗?


这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦

阅读原文

上次更新于: