Advertisement

计算机安全会议(学术界)概念普及 & ASIACCS2015会议总结(移动安全部分)

阅读量:

蒸米 · 2015/04/23 12:57

0x00 序


ASIACCS 2015 全称是第十届 ACM 信息、计算机与通信安全研讨会。由于ASIACCS与 ACM 的另一个会议 CCS(全称是第十二届 ACM 计算机与通信安全会议)同属一脉,并且多数会议举办地集中在亚洲地区,其简称便演变为ASIACCS。今年共有269篇论文向本会投稿,并有48篇被接收,并有18%的录用率。

在探讨会议内容之前,我先简要介绍了计算机安全领域会议的一些基本概念(对于学术界的大牛来说可以直接跳过阅读下一章)。

0x01 计算机安全会议(学术界)概念普及


每个会议发布论文征稿并提供主页链接,并列出了投稿方向及相关领域及其截止日期。每隔一段时间就会举办一次学术会议,在计算机科学领域最为著名的四个重要安全会议分别是S&P(亦称Oakland)、Usenix Security、CCS以及NDSS(按影响力排序)。

2.研究员在截止日期之前提交论文。每个会议通常会收到100至300篇论文投稿,语言必须为英文,每篇论文包含等同于8-15页双栏或者20-40页单栏的文字量(包括引用)。有的会议还接受short paper(短篇论文),比full paper(完整论文)大概少一半的文字量。

Program Committee包含大约20至50名领域的权威学者。每篇论文将被三至五位评审专家评估。这些评审人员可能来自PC团队本身或经由团队邀请的专业志愿者。整个评审周期通常持续约1至3个月。

4.当所有PC成员完成审稿工作后,PC将依据审稿专家的意见召开会议商讨确定哪些论文值得录用以及哪些稿件应当予以拒录。通常情况下,在质量较高的会议上其录用比例不会超过20%,而在一般性的会议上大约在20%至30%之间。之后PC将会通过邮件的形式将最终决定通知所有作者,并附上详细的审稿意见作为参考依据。考虑到这些相对较低的通过率,在一篇论文被正式录用之前经历多次修改、重投的情况并不罕见。这一流程可能需要几年时间才能完成。

论文通常会要求作者在一个月内提交 camera-ready 稿件(即最终稿)。随后,在研究结果公布后的大约两个月至三个月内前往会议,并进行大约 30 分钟的研究论文报告。所有被录用的文章均会被实时收录至数字图书馆系统(如 ACM 和 IEEE 出版物数据库)。

本次会议的主要目的是不仅支持作者们分享他们的研究成果与创新观点(即通过他们的演讲报告),同时也成为推动学术界交流合作的重要平台(即social)。除了这些学者专家的研究成果展示与分享外,在线直播系统也会邀请一些行业内的知名学者或企业负责人就当前最前沿的技术发展问题作专题演讲(即keynote speech)。与此同时,在线直播系统还会特别安排晚宴环节让与会者之间有机会相互认识许多领域的顶尖专家,并通过深度对话探讨各自领域的最新研究进展与未来发展趋势(即交流)。此外,在全球范围内举办的线下或线上活动也为国际同行提供了一次难得的学习机会与访问体验。

7.如果有兴趣继续深入探索计算机领域的会议和PhD生活,则这本书名为《The Ph.D. Grind》。 下载地址:http://pgbovine.net/PhD-memoir.htm

0x02 ASIACCS2015总结(移动安全部分)


本次ASIACCS一共收取了5篇移动安全方向的论文,我会一一进行讲解。

Exploring the Unanticipated Risks When Customizing Antivirus Software for Android Devices


该研究者最先提出,在安卓系统上运行的杀毒引擎AVD(Android Virus Detector)具备高达95%的查杀效率,并认为这一高查杀率源于病毒库的完善性。然而他发现常规杀毒软件不具备实时扫描能力,并且当下存在大量采用动态加载技术的恶意软件(malware)。基于此限制因素,在病毒正在加载恶意可执行文件(payload)时无法即时进行扫描 AVDD就无法获取到此类采用动态加载技术的恶意软件特征并完成查杀工作为此 该研究者进行了大量实验测试位于Google Play下载量最高的30款主流杀毒软件发现在这些软件中存在诸多规避扫描的方法他将其归纳为所谓的Hazard威胁类型其中最具代表性的威胁机制是:研究者首先设计了一个复杂的zip树文件(即zip文件中包含嵌套多层zip结构)将其存放在sd卡根目录下随后观察处理器的工作状态发现该zip树文件会导致大量杀毒软件出现响应延遲甚至能對部分 software 造成Denial of Service (DoS)攻擊的效果除此之外 研究者还注意到在 software 更新过程中会出现无防护时间窗口(null-protection window)在此时间段内恶意软件可通过监听系统广播事件(如Package_REMOVED Package_REPLACED等)探测到这些无防护窗口随后动态释放payload进而执行恶意代码。
基于上述发现 研究者向相关方提出了多项建议。

在去年的美国实习期间(我的)经验中发现了这样一个令人 intriguing的现象:1. 第一个现象表明,在stopped state下的应用无法接收任何 broadcast (1)。然而,在被更新后的应用中(前提是 original application 并未处于 stopped 状态),该 updated application 就能够正常接收 broadcast 信息。2. 第二个现象揭示了新安装的应用(包括被更新后的情况)无法接收 PACKAGE_ADDED 这个特定 broadcast (2)。然而,在安装过程中(特别是当被更新应用接收到 original application 发送的 PACKAGE_REMOVED 事件时),情况发生了逆转。这种机制有何用途呢?好的方面在于它能够帮助杀毒软件解决无防护时间窗口的问题:当杀毒软件进行更新时(比如通过接收到 original application 的 PACKAGE_REMOVED 事件),它无需等待用户主动启动杀毒功能或重启设备即可立即启动杀毒程序。坏的一面则是病毒利用 master key 漏洞能够轻易地替换某个应用程序并立即执行恶意行为——无需等待用户主动点击该应用程序或重启设备即可完成这一过程。值得注意的是这一问题早在4.4版本及之前的版本中就已经得到了测试,并已向Google发送了相关报告。(但目前还不清楚Google是否会采取修复措施)

2 Hybrid User-level Sandboxing of Third-party Android Apps


作者首先介绍android上的app经常会获取过多的权限,并且在用户无意识的情况下泄漏个人隐私信息,并且现在的恶意app很多都是在native层实现恶意行为,传统的针对dalvik层的hook防护机制已经不那么有效了。因此作者提出了AppCage这个系统。这个系统可以对原app进行重打包处理,然后在android上实现dalvik层和native层的双重sandbox机制。首先讲解的是dalvik层的sandbox,实现方法是hook dalvik虚拟机。因为dvm会在内存中维护一个ClassObject的数据结构,通过这个数据结构可以找所有方法的引用。因此AppCage会hook一些比较危险的方法(比如发送短信的方法),如果一个App调用了这些方法,AppCage会弹出对话框来询问用户是否同意执行,如果同意了,AppCage才会调用原方法执行。接下来作者介绍了native层的sandbox。首先我们知道在native层动态修改dex层的code已经是一种很成熟的技术了,通过native层的sandbox可以有效的防止native层的code篡改内存中dex的code。其次,native层的sandbox还可以监测和阻止危险的指令比如system call(系统调用)。对于app本身的native code,AppCage具体的实现方法是采用binary rewrite的方式,因为假设无法获取原app的源码,所以需要先反编译原native library,随后对代码进行插桩来保证native code无法修改或执行除了sandbox分配的内存空间以外的数据,同时还可以监控system call的调用。针对android系统的library,AppCage采用了NaCl compiler sandbox了对应的系统library(比如libc.so),并且让app在运行前加载sandbox过后的system library。针对JNI,AppCage采用hook dlopen和dlsym方法来解决dalvik和native的context不同的问题。在系统实验部分,作者下载了google play前50的app以及一些malware进行了测试,实验证明AppCage不光成功的阻止了某些app的危险行为,并且重打包后的AppCage app无论是在运行效率方面还是在文件大小方面都处在可接受范围之内。

这篇论文的第一作者是Yajin Zhou(编号为3]),他领导着北卡罗来纳州立大学的一个研究团队。对于关注Android安全领域的学者而言,Jiang教授的研究团队的作品无疑是不可或缺的重要文献。其研究在影响力和学术质量方面均处于全球领先地位。

关于高效分布式黑盒模糊系统在移动设备上的构建


本文重点阐述了在Android和iOS平台实施黑盒fuzzing以发现漏洞的技术方案。研究团队构建了一个名为MVDP(Mobile Vulnerability Discovery Pipeline)的系统架构,并详细说明其功能模块设计与工作流程。该系统首先通过网络资源下载获取候选种子文件集,并结合SFAT(种子文件分析选择器)工具对种子文件的数据结构进行分析筛选。随后,在Fuzzing Engine环节对筛选出的候选种子文件执行变异操作包括数据删除、增删改等处理动作,并通过专用评估工具对变异后的种子文件进行打分排序筛选出具有独特性较高的样本作为最终测试用例集

4 XiOS: Extended Application Sandboxing on iOS


本文重点阐述了一种新型的iOS sandbox应用框架的设计思路。该框架旨在有效防护当前流行于iOS系统上的多种漏洞利用攻击手段(如Usenix Security研讨会中提出的Jekyll恶意应用)。研究者首先详细概述了几种常见的iOS漏洞攻击手段:一方面iOS应用通过动态加载机制调用私有API接口;另一方面开发者有意将存在漏洞的应用程序上传至App Store平台;此外还采用ROP技术触发潜在的安全漏洞以实施恶意操作等多维度威胁手段。为了抵御此类漏洞利用攻击研究者开发了一款名为XiOS的应用安全系统该系统通过将已编译好的 iOS 应用程序注入sandbox环境后重新打包生成可发布版本从而实现对恶意应用的有效防护机制。在具体防护机制方面XiOS采用了基于instrumentation技术的功能性监控方案对动态加载的所有API调用进行了实时监控只有当调用API函数存在于预先定义的安全列表中才会被允许执行同时该系统还部署了多级数据保护机制以防止应用程序篡改Shadow Table区域的数据完整性保障系统的安全性运行稳定性和用户体验不受影响

这篇论文的思路与AppCage极为相似, 不仅仅是前者作为Android平台的沙盒解决方案, 后者则作为iOS平台提供. 一个显著的不同之处在于:前者允许用户在应用程序运行时主动做出选择;而后者则是依据预先设定的安全规则来实施防护. 然而需要注意的是:这两种沙盒方案均是在用户层进行开发实现. 尽管如此, 在应对它们所涉及的各种 hook 时采取预防措施仍可能存在绕过的可能性.

In the context of 5 Enpublic apps, potential security threats incorporating iOS Enterprise and Developer Certificates exist.


这篇文章详细阐述了iOS上一种非常流行的最新安全威胁。这种威胁主要通过开发者证书或企业证书来进行应用分发。文章指出,在iOS系统中发现的安全病毒数量远少于Android系统,并认为这一现象主要是由于App Store严格的审核机制所致。尽管有研究提出规避审核的方法以绕过这种限制性措施,但这些方法实施起来都较为复杂。接着作者提出了一个更为便捷的方法——即通过开发者证书或企业证书来进行应用分发。值得注意的是,在苹果规定允许企业向非员工手中提供应用之前已有不少公司采用这种方法进行应用分发,并将其命名为enpublic应用(enpublic applications)。这类应用通常通过iTMs协议进行安装,在网络中可以通过搜索引擎找到大量此类应用实例,并通过对应用所属国的研究发现这些应用大多来源于美国和中国地区。文章进一步探讨了如何获取private API列表,并通过此列表判断所关注的应用是否已启用private API功能。此外作者还对enpublic应用所使用的URL scheme进行了模糊性测试(fuzzy testing),以检测潜在存在的URL漏洞(url vulnerabilities)。最后文章总结了25个具有危险性的private API调用实例,并指出大多数enpublic应用均会调用这些private API功能。值得注意的是作者还成功发现了两个zero-day漏洞并提交给了苹果公司作为安全补丁请求(security patch request)。按照apple公司的修复计划,在版本7.1时该漏洞已经被修复并被标记为CVE-2014-1276号漏洞(CVE-2014-1276)。此外apple公司计划在未来版本中修复因enpublic应用导致的安全钓鱼漏洞问题(malicious application via enpublic application - MVP)。需要注意的是这篇论文所讨论的安全钓鱼漏洞与URL漏洞的相关研究内容可参考文献[4]和[5]中的相关论述与分析

0x03 花絮


今年ASIACCS将在新加坡举办,这座位于热带风情下的面积较小的国家(紧邻赤道)将成为主要举办地。会议为期四天,在第一天将进行注册与分会讨论后(紧凑安排),剩余三天将用于主要学术交流内容。新加坡最具代表性的景点莫过于鱼尾狮以及位于金沙酒店屋顶上的露天游泳池了。作为纪念礼物送给到访的朋友,请一定要品尝一下这里的地道风味美食辣椒螃蟹和肉骨茶。新加坡旅游不容错过这一佳讯最后附上几张照片作为纪念。

0x04 总结


在最近几年发表于ASIACCS的移动安全领域的论文中可以看出,在iOS领域已逐渐成为关注的热点。这一现象背后的原因在于iOS系统的相关研究极为缺乏,因此存在许多潜在的研究方向值得探索。展望未来两年的话,则必将成为研究热点之一。另一方面,在Android系统中与恶意软件相关的工作数量显著减少的同时,漏洞挖掘和漏洞完善AOSP系统的完善进程加快成为新的主流方向。至于Windows平台仍处于冷门状态,并且几乎没有人对其展开相关研究工作

0x05 参考文献


  1. stopped state http://developer.android.com/about/versions/android-3.1.html

该组件已被成功加载/添加至当前 intents 中:...

  1. Yajin Zhou https://scholar.google.com/citations?user=N1oeOPwAAAAJ

通过钓鱼手段,在非越狱的 iPhone 6(运行 iOS 8.1.3)上实施攻击,并获取其 App Store 密码的链接如下:

iOS URL Scheme 窃取-从非越狱状态下的 iPhone 6系统中获取支付宝与微信支付账户信息,并包含该研究论文的链接:http://drops.wooyun.org/papers/5309

6.论文打包下载 http://www.cse.cuhk.edu.hk/~mzheng/paper/asiaccs2015.zip

全部评论 (0)

还没有任何评论哟~