5月28日,由InForSec主办,清华大学(网络研究院)-奇安信联合研究中心、复旦大学系统软件与安全实验室承办,中国科学院计算技术研究所计算机体系结构国家重点实验室、中国科学院软件研究所可信计算与信息保障实验室、百度安全、奇安信集团、蚂蚁集团、阿里安全协办的“网络安全四大顶会研究成果分享”之“移动互联网安全”(一)论坛在线上成功召开。中国科学技术大学特任教授糜相行、香港理工大学博士生赵开发 、香港理工大学薛磊老师、香港中文大学博士生徐枫皓在会上作了精彩的报告。本次会议由复旦大学教授张源主持,共156人参加会议。
InForSec将对会议精彩报告进行内容回顾,本文分享的是薛磊老师的报告——《硬件辅助的安卓程序脱壳分析》。
薛磊老师首先介绍了APP加壳的背景知识。APP加壳行为旨在通过代码混淆等方式实现对软件代码的保护,抵抗恶意攻击者的分析,目前也存在很多专业的企业级应用加固服务,有研究表明APP加壳行为正在被恶意软件滥用以实现对恶意软件检测的对抗。
随后,薛老师对目前主流的APP脱壳技术手段进行了总结分析。目前关于APP脱壳的研究和技术方法可以分为5类,即基于调试器的脱壳技术,基于模拟器的脱壳技术,基于代码插装的脱壳技术,基于定制化系统的脱壳技术以及基于代码相似度的脱壳技术。但是上述脱壳技术都是基于软件层次的手段实现的脱壳,会在应用运行环境中留下痕迹,而通过对对应的痕迹进行分析捕捉,恶意软件可以发现这些脱壳器的存在并执行对应的对抗措施。
为了解决目前脱壳技术中存在的局限性,薛老师详细介绍了他们提出的基于硬件辅助的脱壳工具(Happer)。在APP的动态运行过程中,Happer利用ARMv8平台的硬件特性实现对APP中采用的加壳技术的识别,然后生成采用对应的脱壳技术对APP进行脱壳,生成脱壳后的Dex文件。这里使用的硬件特性有3种,包括Embedded Trace Microcell (ETM),Hardware Breakpoints (HBRKs)以及Memory Management Unit (MMU)。
最后,薛老师介绍了Happer工具的脱壳效果。通过对当前主流加壳服务处理过的APP进行脱壳分析,证明了Happer工具的有效性,并且根据实验结果,也对目前商业加壳服务中所采用的技术手段进行了总结,这些实验结论,可以进一步用于辅助提升静态恶意软件检测工具的有效性。
演讲者简介
薛磊,2017年毕业于香港理工大学,现为香港理工大学计算学系助理教授(研究),长期从事系统安全研究,目前已经在IEEE S&P、USENIX Security、TIFS、TSE等会议和期刊上发表论文三十余篇,并申请授权中国和美国专利四项,主要研究方向为移动系统安全、软件分析、车联网安全等。
视频回顾:硬件辅助的安卓程序脱壳分析