惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

U
Unit 42
Google DeepMind News
Google DeepMind News
Stack Overflow Blog
Stack Overflow Blog
H
Help Net Security
MongoDB | Blog
MongoDB | Blog
I
InfoQ
N
Netflix TechBlog - Medium
T
Tailwind CSS Blog
量子位
博客园 - 叶小钗
月光博客
月光博客
IT之家
IT之家
G
Google Developers Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
小众软件
小众软件
S
SegmentFault 最新的问题
Engineering at Meta
Engineering at Meta
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
aimingoo的专栏
aimingoo的专栏
云风的 BLOG
云风的 BLOG
Vercel News
Vercel News
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
宝玉的分享
宝玉的分享

奇客Solidot–传递最新科技情报

NASA 关闭旅行者 1 号的 LECP 仪器以节省电力维持运行 奇客Solidot | 人形机器人打破人类半马世界纪录 奇客Solidot | 卫星无人机图像显示美国四成数据中心可能延期 奇客Solidot | 内存芯片短缺可能持续到 2030 年 奇客Solidot | 果糖不只是糖,它更像是激素 奇客Solidot | Grinex 交易所声称遭敌对国家黑客入侵 奇客Solidot | 大白鲨面临过热风险 奇客Solidot | 暗能量巡天绘制出迄今最大的高分辨率 3D 宇宙地图 微软正式将 FAT32 分区大小从 32GB 增加到 2TB 奇客Solidot | 拼多多美团等被罚 36 亿 奇客Solidot | 英伟达 CEO 反对进一步限制向中国出口芯片 奇客Solidot | 美国科技巨头成功在欧盟法律中将数据中心环境影响列为保密信息 奇客Solidot | 乌克兰军方开始大规模使用地面武装机器人 Firefox 加入了对 Web Serial API 的支持 奇客Solidot | 大自然仍然在铸造人类基因 奇客Solidot | 威尼斯如何应对海平面上升 SpaceX 将发射 ESA 的 Rosalind Franklin 火星漫游车 奇客Solidot | Discourse 强调会继续开源 奇客Solidot | 美国主流媒体封禁互联网档案馆的存档机器人 奇客Solidot | 新研究再次证实 AI 有害大脑 Mozilla 宣布开源可自托管 AI 客户端 Thunderbolt 奇客Solidot | Linux Mint 宣布采用更长的开发周期 奇客Solidot | 人类的噪音在伤害动物,我们会学会安静吗? 奇客Solidot | 帝企鹅因气候变化导致数量减少被列为濒危 奇客Solidot | 抹香鲸的发声沟通方式与人类相似 奇客Solidot | 中国手游如何征服世界 奇客Solidot | IPv6 普及度突破 50% 奇客Solidot | 挪威男子在移植其兄弟的干细胞后治愈 HIV 波士顿动力的机器狗集成了 Google 的 Gemini 模型 奇客Solidot | Cal.com 因 AI 从开源转为闭源
奇客Solidot | 幽灵必须死:漏洞利用幽灵'msg_msg'以及VED的...
2022-11-13 · via 奇客Solidot–传递最新科技情报

HardenedVault 写道 "近年来不少针对Linux系统内核的漏洞利用攻击方式都会利用一个名为msg_msg的神奇结构体作为利用早期阶段的部署展开,比如信息泄漏的攻击场景,对于系统安全的纵深防御体系越早的检测和阻断对于防御的一方越有利,赛博堡垒(HardenedVault)的Linux内核疫苗方案VED(Vault Exploit Defense)的一个2022版本的特性可以针对这种攻击方法免疫,并测试了主流的公开的漏洞利用。VED 维护了一个 msg_msg 的列表,计算每个 msg_msg 内容的 hash。 使用 msgrcv() 读取或释放struct msg_msgseg next, size_t m_ts 和 void *security' 被污染的 msg_msg 将会被 VED 探测到。但是我们的检查并没有包含 stuct list_head m_list`, 这意味着如果该指针被污染并被释放,VED 并不能检查出来,因为他是由 msg_queue 来维护的。 CVE-2021-22555: Turning \x00\x00 into 10000$ - Exploring struct msg_msg 就是这样一个例子. 但 VED 使用其他办法来进行防御。VED 添加了越界读取的检查。如果说读取目标缓存的长度和读取长度是不匹配的, VED 就能检查到污染。在漏洞利用中’size_t m_ts’的污染较容易达成越界读取, 并且实现 KASLR 绕过或者泄漏堆地址。VED 的检查能够有效检查到越界读取, 但是这个防御也是不完整的,精心制作的 msg 仍可能绕过。比如说, 存在 UAF/double free 漏洞的结构体,msg_msg 结构体,需要泄漏目标结构体, 三者的长度都是一致的,仍可以绕过 VED 的检查。

这两个缓解措施均是可被绕过的,VED 目前的版本是基于 LKRG 实现的,检查的完整性与性能的平衡是需要考虑的。更加严密的 msg 是可能的,但是 kprobe 的检查点数量,计算量需要多的多。另外则是虽然这两个缓解措施均可被绕过,但是叠加两者,由于其中的检查是相互交叉的,比方说完整性检查包含的 struct msg_msgseg *next, size_t m_ts,和越界检查。这使得漏洞利用需要依赖于原代码路径来实现堆喷,和更依赖同类型的 object 之间的污染,使得 msg 的漏洞利用困难程度上升。当然这些专门的绕过对资深的内核黑客来说不会是多大的问题。VED 也在探索更加完整并且平衡性能损耗的方案。"

http://https://hardenedvault.net/blog/2022-11-13-msg_msg-recon-mitigation-ved/