“微软冲着 Linux 大喊:快看,你这也有提权漏洞!”

“微软冲着 Linux 大喊:快看,你这也有提权漏洞!”
文章图片
整理|郑丽媛出品|CSDN(ID:CSDNnews)随着版本的不断优化迭代 , 操作系统有Bug在所难免 。 一般来说 , 仅靠操作系统内部运维团队 , 很难确保能将系统内的Bug“一扫而空” , 因此多数情况下他们也需依靠外部的“群众力量” 。
这不 , 前几天微软就揭露了几个会影响许多Linux发行版的提权漏洞 , 漏洞编号是CVE-2022-29799和CVE-2022-29800 , 微软将其统称为Nimbuspwn , 还为此写了一篇长文详细介绍漏洞原理 。
对于微软的此番行为 , TheRegister网站作者JeffBurt也写了一篇文章《微软冲着Linux大喊:快看 , 你这也有提权漏洞!》 , 吐槽道:“微软费尽心思写了一篇大长文 , 还给这些漏洞起了一个吸引人的名字Nimbuspwn 。 可是 , Windows每个月也修复了不少提权漏洞 , 怎么不见微软对自家操作系统的漏洞也这样‘上心’?”
Linux提权漏洞Nimbuspwn根据微软发布的漏洞文章表示 , 本次发现的Linux提权漏洞Nimbuspwn , 是在systemd中一个名为networked-dispatcher的组件中发现的——该组件存在于许多Linux发行版中 , 主要负责调度网络状态变化 , 并根据新状态选择执行不同脚本 。
“有趣的是 , 它(networked-dispatcher)在启动时是以root权限运行的 。 ”Microsoft365Defender研究团队成员JonathanBarOr在文章中写道 。
在仔细审查networkd-dispatcher的代码流后 , 微软研究人员发现其中有一个步骤为“_run_hooks_for_state” , 它会根据检测到的网络状态运行脚本:首先 , 通过调用“get_script_list”(以字符串形式获取新状态)发现脚本列表;然后 , 对脚本列表进行排序;最后 , 使用subprocess.Popen运行脚本 , 同时提供自定义环境变量 。
对此 , 微软研究人员认为 , “_run_hooks_for_state”这个环节存在三个安全漏洞:目录遍历、符号链接竞争和检查时间/使用时间竞争条件漏洞——这些漏洞均可被攻击者用于提权、部署恶意软件或执行其他恶意活动 。
JonathanBarOr举了个例子:在检查时间/使用时间竞争条件下 , 查找脚本和运行脚本之间存在一定时间差 , 在此过程中 , 攻击者就可以利用这个漏洞 , 将原本networkd-dispatcher认为属于root的脚本替换为不属于root的脚本 。 ”
“微软冲着 Linux 大喊:快看,你这也有提权漏洞!”
文章图片
漏洞已修复在发现这一系列漏洞后 , 微软安全团队迅速联系了networkd-dispatcher的维护者ClaytonCraft , 他也在三周前进行了漏洞修复 , 发布了最新的networkd-dispatcher2.2版本 。
而网络安全公司Viakoo首席执行官BudBroomhead认为 , 像Nimbuspwn这种存在于组件中的漏洞实际上较难迅速修复:“对Nimbuspwn而言 , 传统的检测和修复解决方案可能并不适用 , 并且它可能存在于超过600多个Linux发行版中 。 它不仅需要用户手动获取并安装补丁 , 还需要分发管理人员提前发现修复并推出更新 。 ”
JonathanBarOr总结道:“Linux环境下越来越多的漏洞 , 体现了对操作系统及其组件扩大监控力度的必要性 。 ”但TheRegister网站作者JeffBurt指出:“微软团队提出的这个Linux问题 , 在Windows中也十分常见 。 ”
Windows中的提权漏洞也不在少数正如文章开头所说 , 不论在哪个操作系统中 , 漏洞总是很难避免——不光是Linux , 近来在Windows中被发现的提权漏洞也不在少数:
2020年 , 安全研究人员AbdelhamidNaceri发现Windows提权漏洞CVE-2021-24084 , 可影响Windows10、Windows11和WindowsServer等多个操作系统;
2021年 , 亚信安全CERT监测发现WindowsInstaller提权漏洞CVE-2021-41379;