首页 » SEO优化 » openbsdphp技巧_OpenBSD 将在每次重启后都运用和之前不合的内核

openbsdphp技巧_OpenBSD 将在每次重启后都运用和之前不合的内核

访客 2024-11-18 0

扫一扫用手机浏览

文章目录 [+]

在 OpenBSD 的测试快照中加入了一个新的功能,每次当 OpenBSD 用户重启或升级打算机时都会创建一个独特的内核。
-- Catalin Cimpanu

本文导航

-KARL 与 ASLR 不同 …… 15%

openbsdphp技巧_OpenBSD 将在每次重启后都运用和之前不合的内核

-该功能是最近两个月开拓的 …… 46%

openbsdphp技巧_OpenBSD 将在每次重启后都运用和之前不合的内核
(图片来自网络侵删)

-KARL 是一个独占的功能 …… 64%

编译自: https://www.bleepingcomputer.com/news/security/openbsd-will-get-unique-kernels-on-each-reboot-do-you-hear-that-linux-windows/

作者: Catalin Cimpanu

译者: wxy

在 OpenBSD 的测试快照中加入了一个新的功能,每次当 OpenBSD 用户重启或升级打算机时都会创建一个独特的内核。

该功能被称之为 KARL(内核地址随机化链接Kernel Address Randomized Link),即以随机的顺序重新链接其内部的内核文件,从而每次天生一个独特的内核二进制文件。

当前的稳定版中,OpenBSD 内核利用预先定义好的顺序来链接和加载内核二进制文件中的内部文件,这导致所有用户的内核都是一样的。

KARL 与 ASLR 不同

KARL 由 Theo de Raadt 开拓。
KARL 会在安装、升级和重启时天生一个新的内核二进制文件。
当用户启动、升级和重启机器时,最新天生的内核会更换已有的内核二进制,而操作系统会天生一个新的内核,其将用于下次启动、升级和重启,周而复始。

不要将 KARL 和 ASLR(地址空间布局随机化Address Space Layout Randomization)相稠浊,ASLR 是一种用于随机化运用代码实行的内存地址的技能,以防止知道运用或内核运行的特定区域而被针对性利用。

de Raadt 说,“它仍旧装载在 KVA(内核虚拟地址空间Kernel Virtual Address Space)中的同样位置,这不是内核的 ASLR!

相反,KARL 以随机的内部构造天生内核二进制,这样漏洞利用程序就不能透露或攻击内核内部函数、指针或工具。
技能性的阐明拜会下面内容。

一个独特的内核是这样链接的,启动汇编代码仍放在原处,接着是随机大小的空隙,然后是随机重组的其它 .o 文件。
这样的结果便是函数和变量之间的间隔是全新的。
一个指针的信息透露将不会暴露其它指针或工具。
这或许会减少可变体系架构的组件,由于指令流的多态性被嵌套偏移的改变所毁坏。

“因此,每次的新内核都是独特的。
”de Raadt 说。

该功能是最近两个月开拓的

该功能的开拓始于五月份,首次谈论[1]涌现于六月中旬的 OpenBSD 技能邮件列表中。
KARL 最近涌现于[2] OpenBSD 6.1 的快照版本中。

“当今的情形是许多人从 OpenBSD 安装内核二进制,然后这个相同的内核二进制将运行六个月以上。
当然,如果你重复地勾引这个相同的内核二进制,其内存布局也是一样的。
这便是现在我们所提交的代码办理的问题。
”de Raadt 说,“然而, -current 快照包含了一些我正在和 Robert Peichaer 开拓的将来的变革。
那个变革将可以使你每次重启都启动到一个新链接的内核上。

KARL 是一个独占的功能

一个发卖针对隐私的硬件产品的初创企业 Technoethical 的创始人 Tiberiu C. Turbureanu 对 Bleeping Computer 说,这是一个 OpenBSD 独占的功能。

“在 Linux 中没有实现它,”Turbureanu 说,“看起来很棒的想法”,估计有可能该功能会移植到 Linux 内核中。

不过,Linux 刚刚增加了对 KASLR(内核地址空间布局随机化Kernel Address Space Layout Randomization)的支持,该功能是将 KSLR 移植到了内核本身,它会将内核加载到随机的内存地址。

该功能在上周发布的 Linux 4.12 中默认启用[3]。
这两者的不同是 KARL 是装载不同的内核到同一个位置,而 KASLR 则是装载相同的二进制到随机的位置。
目标相同,做法不同。

在 Windows 中没有支持 KARL,但是微软利用 KASLR 已经很多年了。
反病毒创客公司 Emsisoft 的 CTO Fabian Wosar 正在全力将 KARL 增加到 Windows 内核中。

“OpenBSD 的这个思路须要进一步发扬到(当前的 Windows 内核防护中),这样大家都可以有一个独特内核二进制了,”Wosar 在和 Bleeping Computer 的私人发言中说到。

“即便是你知道了(随机的)内核起始点,你也不能用它来找到要定位的特定函数,函数相对付内核起始点的位置是随系统不同而不同的,”Wosar 补充说。

其它的操作系统平台,如 Windows 和 Linux ,如果拥有 KARL 将极大的改进其用户的安全性。

[1]: 首次谈论 - https://marc.info/?l=openbsd-tech&m=149732026405941&w=2

[2]: 最近涌现于 - http://marc.info/?l=openbsd-tech&m=149887978201230

[3]: 默认启用 - https://www.phoronix.com/scan.php?page=news_item&px=KASLR-Default-Linux-4.12

相关文章