wechatimg31

DirtyCow (脏牛漏洞)带给内核社区的反思

  • 浏览次数 11946
  • 喜欢 0
  • 评分 12345

编号为 CVE-2016-5195 的漏洞在 Linux 内核社区修复完成后的故事并没有结束,72 小时内公开的可作非稳定漏洞利用的 PoC 已经有 9 个,如果是标准版本的内核,写 /proc/pid/mem,vDSO  (部分版本)以及常规 ptrace() 方法都可以直接利用, PaX/Grsecurity 内核对于这个 PoC 也难以防御,针对 ptrace/madvise 做 seccomp 的规则虽然可以减缓攻击进度,但带来性能开销的同时也不能一劳永逸的解决这个问题,如果没有 RBAC 的场景还是建议升级。

这个漏洞在自由软件世界是比较罕见的,对 GNU/Linux 服务器构成巨大威胁和风险的同时也成为了 Android root  恶意代码链条(包括root 一键工具)以及 IoT 入侵的强大助攻,Jonathan Corbet的文章 提到Linux内核社区对待安全的态度需要反思,这个严重漏洞的修复竟然是和cleanup的patch一起合并到主线的,即使是单独的提交也像往常一样并未提供更多的安全评估信息。

这种不提供公开漏洞信息的做法是在1990年代用于防御脚本小子获得更多信息,后来Linux基金会的”客户”们并没有提出改变的意见所以一直沿用至今,但2016年的互联网环境和1990年代有着很大的区别,即使没有公开的漏洞信息攻击者可以凭着对代码提交的理解也可以打造出相应的漏洞利用,或许在Linux内核自防护项目开始10个月后遇到了DirtyCow并不是件坏事,内核自防护项目尝试移植PaX/Grsecurity的一些特性终结掉Linus Torvlads的”A bug is bug“流派,而DirtyCow有望在生态上让Linux基金会的”客户”们向Linux内核社区施压,说不定会改变”security through obscurity“的格局,毕竟今天是一个更开放的年代,个体更注重安全。

稿源:cnBeta.com,封面来源:百度搜索