G.O.S.S.I.P 阅读推荐 2022-04-11

admin 2022年4月11日15:03:53评论20 views字数 1077阅读3分35秒阅读模式

秦人不暇自哀,而后人哀之;后人哀之而不鉴之,亦使后人而复哀后人也。

今天我们要给大家介绍的这篇论文,关注了Android平台上Unix domain socket的安全问题,实际上在2016年的CCS安全会议上,已经有一篇论文The Misuse of Android Unix Domain Sockets and Security Implications讨论了相关问题,并研发了相关的动态分析工具来寻找相关安全漏洞。然而,“后人哀之而不鉴之”,到了2022年,今天这篇论文的作者研发了一套名为SAUSAGE的静态分析工具,对AOSP之外的一些厂商定制系统中的Unix domain socket使用情况进行了扫描,仍然发现了大量漏洞。

G.O.S.S.I.P 阅读推荐 2022-04-11

Unix domain socket其实是一种很简单的本地进程间通信模型,在代码中,你可以把它简单地想象成一个文件,对它进行读写。然后,系统就会帮助两个不同的进程去协调数据的流动。因此,作为静态分析的第一步,自然需要去了解系统中哪些API用于建立Unix domain socket:


G.O.S.S.I.P 阅读推荐 2022-04-11


另一个需要考虑的因素是Android系统现在普遍已经部署了SEAndroid策略,对socket的访问和对文件的访问一样都受到强制访问控制(MAC)的限制,分析的时候需要考虑相关因素,否则会导致误报。作者在这里参考了他们在2020年USENIX security上发表的论文BIGMAC: Fine-Grained Policy Analysis of Android Firmware,将当时设计的BigMac系统拿来帮助分析:

G.O.S.S.I.P 阅读推荐 2022-04-11

有了BigMac的支持,SAUSAGE就可以对厂商发布的定制化Android固件进行解包分析,按照以下的流程去寻找相关的Unix domain socket使用实例,然后检查是否存在无权限调用的漏洞:


G.O.S.S.I.P 阅读推荐 2022-04-11


在实验中,作者分析了7个厂商的172个不同版本的固件,覆盖了Android 7-9版本,当然作者也没有忘记和28个版本的AOSP官方版本进行对比

G.O.S.S.I.P 阅读推荐 2022-04-11

经过分析,作者对各家固件中不同的vendor添加的accessible Unix domain socket进行了统计:

G.O.S.S.I.P 阅读推荐 2022-04-11

G.O.S.S.I.P 阅读推荐 2022-04-11


作者对三星和高通的一些漏洞进行了报告,得到了确认。论文中还有大量关于作者分析的相关Unix domain socket的细节,这里就不一一赘述了。希望大家能够谨记教训,做事情和写代码都要实事求是,不要“使后人而复哀后人也”

论文PDF:
https://arxiv.org/pdf/2204.01516.pdf



原文始发于微信公众号(安全研究GoSSIP):G.O.S.S.I.P 阅读推荐 2022-04-11

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年4月11日15:03:53
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   G.O.S.S.I.P 阅读推荐 2022-04-11https://cn-sec.com/archives/899922.html

发表评论

匿名网友 填写信息