此次2017腾讯安全国际技术峰会的举办场所是深圳宝安区,宝安谐音“保安”,似乎也透露着安全重要性的意味。而会议所在的酒店附近,绿意环绕,高楼迭起,仍有不少还在建造之中,俨然一座繁忙且正在兴起的城市模样。继昨日报道的 AI 、大数据、SMB 攻击、CFG 防护等 7 个重量级议题之后,峰会的第二天依旧是硬核与干货齐飞,趋势科技、Comsecuris、高通、MWR infoSecurity、盘古及 Corellium 嘉宾悉数到场,从早上九点半至下午五点半,走出会场时才恍然发现大雨正倾盆而至。
狮鹫图腾是眼界宽广、悉心守护的化身,在此开会似乎颇有深意
趋势科技中 ZDI(Zero Day Initiative)组织总是博得大家的关注,此次峰会的第二天三位演讲者通过分析在 最流行的文档阅读软件 Adobe Reader 中使用的开源组件模块 TIFF 及 XSLT 引擎中寻找漏洞的历程,向大家分享通过开源漏洞攻击闭源软件的挖洞及攻击思路。
他们发现 Adobe Reader 使用了开源且无人维护的Sablotron引擎(原来开发该引擎的是 Ginger Alliance), Adobe 只能自力更生添加部分功能来完善引擎的安全性。研究员通过结合模糊测试及审计 Sablotron 源代码的两种方法发现了一连串的漏洞(包括 CVE-2012-1530、CVE-2012-1525、 CVE-2016-4198、CVE-2016-6963、CVE-2016-6977 )。研究员还在现场详细剖析了这些12年一直挖到16年的漏洞的具体问题、利用、修复方案,以及如何通过旧的、已经修复的漏洞思考新漏洞存在的可能性。
而回顾当今时代的现状,确实可以看到开源的项目越来越多地被应用到基于云的大型应用中,开发者可能未能进行整体化地思考前就“敏捷”地添加了一部分功能进去。而应用开源组件的厂商可能会错误理解安全机制、错误使用、或干脆没有利用安全机制进行防护。
德国 Comsecuris UG 创始人 Ralf 带来了用 ARM CoreSight 进行追踪调试的技术分享。在一个大型或较为复杂的系统程序中,功能强大的调试系统能助力迅速解决问题,且事半功倍。Mozilla 此前也有开发过一种 rr 调试工具,但是它只能运行于 x86 架构,有些指令不能翻译到 ARM 平台,所以研究员放弃使用这种传统的方法。当然,也有一些做法同样可以做到 CoreSight 可以实现的追踪,但在支持性、价格、通用性上各有千秋。
Ralf 在现场给出了CoreSight System 的模型示意图,并对市面上的三种芯片(三星猎户座,华为海思和高通骁龙)逐个进行分析,并现场演示了追踪过程。CoreSight 代码追踪能够有效检测恶意程序的执行,这样的代码追踪技术还是值得了解和掌握的。研究员还在分享最后给出了参考材料(ARM DDI 0314H、ARM IHI 0029D、ARM IHI 0035B)。
来自英国 MWR InfoSecurity 的安全研究员 Georgi Geshev 就此议题展开了论述,他们认为 Pwn2Own 比赛中过多地使用模糊测试会越来越难以发现可理解的漏洞,于是他们分析挖掘内存以及逻辑漏洞,并对部分发现的漏洞进行思路分享。在参加Mobile Pwn2Own时的规则是通过短信或者网页的方法攻击手机,为此,他们选择的是chrome作为突破口。
他们发现 content scheme 能够读取本地文件,由此开始了对同源策略的调查,如果创建一个 HTML 文件,文件中会把自身嵌入 iFrme , PC 端的 chrome 基于同源策略就不能打开,但用Android其实可以,攻击者可以利用这一点读取本地文件列表。其次,通过 CSRF 结合读取的手机设备id可以发送 post 请求自动从 Play Store 上安装应用程序。完整的攻击方法很快就可以搭建出来:把HTTP重定向到content scheme 然后再使用 chrome 自动下载机制,使用下载地址欺骗同源策略,攻击者就可以做到读取本地已经下载的其他文件。当然,这样的攻击方法也有缺陷,比如Android 的 toast 消息就无法避免,需要等待用户锁屏后执行操作。
如何轻松学习研究 iOS 漏洞呢?盘古认为可以通过很多公开来源的途径,获取苹果官方的公告、了解公开的越狱工具、diff 代码、学习其他人的研究人员的博客中公开的漏洞细节(如Google Project Zero)。
研究人员认为第一步需要熟悉现有的漏洞,了解上下文的情况,尝试自己写POC、EXP,并测试稳定性方面的问题。第二部,需要分析漏洞的成因,有些低级漏洞的出现成因是代码质量较差,如 SMB 中类似的漏洞很多。其次,需要分析漏洞的修补方法,了解是否有类似的漏洞。盘古团队在方法论探讨结束之后,对漏洞的案例进行分析:如 IOSurface、IOMobileFrameBuffer、sharememory系列漏洞等等。方法论中所谓的轻松也是说要举一反三,从已发现的漏洞中学习。
Corellium 创始人分享 iOS 虚拟化这个新鲜议题,同时在现场一并公开了 iOS 虚拟化的最新研究成果。他介绍的 Virtual.al TK1 demo box 可以虚拟化 iphone3、4、4s,而他们的 CHARM设计(Corellium Hypervisor for ARM)还可以支持 iPhone 6 和 iPhone 7 的虚拟化。
有了这样的虚拟化设备,在进行安全研究的时候,逆向iOS 会变得轻松起来。通过虚拟化攻击,甚至可以直接通过 IDA Pro 进行深入研究,对于 iOS 研究社会会有帮助。
最后压轴的是腾讯科恩高级研究员 Anton Kochkov 的议题,目前安全研究员在挖掘漏洞进行分析时都有各种各样的研究方法,静态分析、调试、模糊测试的工具也是五花八门。每一年的安全会议上,都有各种工具全新登场,然而在做一些分析的时候,团队合作挖掘和分析是研究中必要的一环,对比其他金融、建筑行业都适用了通用的协议来进行行业内的合作,安全行业中,实际上没有一种通用的标准或者协议,可以来进行工作的协作以及数据交换。
现有的部分协议存在着很多问题,不能够跨平台,速度又会很慢,例如 GDB、LLVM、WinDdg,全新的优良设计的标准有待出现。Anton建议可以向数据科学家交换数据的方式学习,需要通过这种标准化的协议帮助交互性的提升。当然,这个协议并不需要像 ISO 那样,他希望聚集更多的安全专家,建立专门的讨论组并开始制定这样的标准。
此次的峰会中,国际一流研究员齐聚一堂,是一场前沿技术的分享大会。无论是工具的运用,研究分析的思路、以及安全行业的前景和未来,我们都在这场峰会中感受到了研究员们在常年的研究中积累出的智慧和认识,以及他们努力推动行业发展的意愿。正如我们所看到的日新月异成长着的深圳,相信安全行业仍然会茁壮地成长,持续焕发着生机。
全场嘉宾微笑
祝您用餐愉快
会场外的鱼池,转发此文会有好运哦!
*FreeBuf官方报道,作者 Elaine,禁止转载