2023 年 12 月 26 日,国家保密科技测评中心发布《安全可靠测评结果公告(2023 年第 1 号)》,其中麒麟、UOS、方德等国产操作系统获得安全可靠等级 Ⅰ 级的评定。
与此同时华为 HarmonyOS、小米 HyperOS 和 vivo BlueOS 等新玩家也相继亮相,国产操作系统迎来百花齐放的时代。随着上述面向消费者的操作系统陆续推出,新颖的架构与安全防御机制也渐渐呈现在大众眼前。
这也意味着一个更大的安全舞台正在逐渐揭幕,新型的操作系统在安全性上是吸取了历史教训还是会再度面临过去的挑战,不禁引人深思。
以下为本期深蓝洞察年度安全报告的第六篇。
06
从 2023 年 8 月 4 日,华为公布下一代 HarmonyOS NEXT,到 2024 年 1 月 18 日,华为正式宣布鸿蒙生态千帆启航,并表示不再支持Andorid原生应用,HarmonyOS NEXT 究竟做了哪些安全方面的创新?
从 OpenHarmony 开发者文档中”管中窥豹“,我们可以初见一些端倪:强制代码签名、内核执行权限检查、代码内容检查、完整性保护、新的线程调度、新的 IP 内核协议栈等。这些无不证明一个具有重大变动的操作系统即将出现在大家的面前。
同年 12 月,小米公开发布了 HyperOS 白皮书 1.0,虽然白皮书中多处语病、排版问题引来消费者的不满,但是还是不难看出小米在构建 IoT 生态一体化上正在做出自己的尝试。顺带一提,小米新发布的汽车 SU7 正搭载着 HyperOS 系统。
白皮书中简略介绍了 HyperOS 在内核层面融合了小米自研的Vela内核和 Linux 原生内核,在跨端层实现了多个子系统用来保障跨设备的可信互联,这些新的功能点也可能带来新的攻击面。例如,在 GEEKCON 2023 中,我国的信创操作系统就因为某自研服务对外暴露了敏感功能接口导致 RCE。
除了各个新的操作系统的陆续发布,我们也很高兴的看到国内很多厂商积极拥抱新的安全机制,国内厂商 vivo 就针对 MTE 做了大量的尝试。
说到 MTE(Memory Tagging Extensions),相信安全研究人员都不陌生,其一度被认为是内存破坏漏洞的“终结者”,这样一个强大防御机制的出现是否意味着一经使用便一劳永逸、高枕无忧?
DARKNAVY 针对三种堆分配器的 MTE 支持进行分析对比,发现其仍然对内存未初始化、大内存 buffer 的溢出、程序的 data 段数据 OOB 等内存破坏问题存在盲点。
详情可参考 DARKNAVY「技术研报」全新芯片安全特性 MTE 主要玩家的实现对比。
从现在看未来的安全攻防形势还是个未知数,我们不妨以史为鉴,分析历史攻击手段在现有的新型操作系统上能达到什么样的效果。
以 2023 年 7 月提出的内核攻击利用手段 Dirty Pagetable 为例,攻击者成功利用该攻击手法在 Google Pixel 7 上重重防御机制的阻拦下完成内核提权,该攻击链包含四个部分:
第一步,攻击者利用漏洞(UAF、Buffer Overflow等)获取了一个可部分写的释放堆块victim;
第二步,利用堆喷技术,将 victim 堆块用 user page table 占用,这样攻击者就获得了一个可部分写 table 内 PTE 指针的场景;
第三步,利用部分写,构造任意物理地址(例如内核物理地址)的 PTE 指针,攻击者因此获得了对应地址的任意读写权限;
第四步,修改 setresuid 等系统调用内核态代码,删除相关权限校验部分后调用 setresuid 等系统调用,最终完成提权操作。
Dirty Pagetable 利用图示
为了探究 UOS 能否防御住类似 Dirty Pagetable 的攻击,DARKNAVY 模拟在加载了一个存在堆块 UAF 漏洞的驱动、并且允许我们的 exp 程序执行的场景下,利用该方法攻击成功:
由此不难看出,随着攻击面的不断下沉,应用层面的防御机制虽然可以启到一定的保护作用(eg:非可信应用不允许运行),但是并未真正抵御住针对 Linux 内核层面的攻击,新的底层防御机制的推出是必然趋势。
我国信创操作系统在抵御类似 Dirty Pagetable 的底层攻击手段上仍需要提升,而 HyperOS、HarmonyOS NEXT 这些对原生 Linux 内核进行一定或全面改动的新型操作系统,又能否抵御类似攻击呢,让我们一起拭目以待。
一个新的安全时代即将到来,正如当年 Linux、iOS 系统出世,从萌芽到完善需要经历时间的洗礼,历史攻击手段在新操作系统中能达到什么样的效果?
新攻击手段和新防御机制又能碰撞出怎样的火花?
国产操作系统是吸取历史教训迅速成长,还是会再度面临过去的挑战,陷入不断与漏洞斗争的宿命中呢?
参 考:
[1] https://yanglingxi1993.github.io/dirty_pagetable/dirty_pagetable.html
[2] https://cdn-file.hyperos.mi.com/hyperos-file/%E5%B0%8F%E7%B1%B3%E6%BE%8E%E6%B9%83OS%E6%8A%80%E6%9C%AF%E7%99%BD%E7%9A%AE%E4%B9%A6V1.0.pdf
[3] https://www.uniontech.com/api/v1/tech_doc/download?filename=doc/%E7%BB%9F%E4%BF%A1%E6%9C%8D%E5%8A%A1%E5%99%A8%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F-%E4%BA%A7%E5%93%81%E7%99%BD%E7%9A%AE%E4%B9%A6.pdf
[4] https://www.kylinos.cn/upload/product/20211029/4a8f5e8a052987593de69cb1df1dbc24.pdf
[5] https://gitee.com/openharmony
明日,请继续关注《深蓝洞察 | 2023 年度安全报告》第七篇。