在刚刚过去的315晚会上,央视曝光了某些第三方开发的SDK包存在违规收集用户个人信息的情况,导致隐私泄露问题。对此,工信部已要求依法依规严厉查处涉事企业,并表示将采取常态化监管措施,加强移动互联网应用程序APP综合治理,并推动技术手段建设,大幅提升技术检测水平。
全民“触网”时代,用户在高频使用手机APP的同时,也让自身暴露在诸多风险之下。随着移动安全威胁与日俱增,通过应用检测服务来提升应用安全性,已经“箭在弦上”。
如何高效率检测应用漏洞,成为应用安全行业急需解决的难题,对此,腾讯安全科恩实验室推出ApkPecker工具,高准确率、高效率检测应用漏洞。
01 移动应用漏洞为何“频频”爆出?
你可能很难想象,类似话费被扣、银行卡被盗刷、手机内信息被泄漏,这些问题的产生,可能只是因为手机里的某个APP被开发者写错了一个编码或者稍微变动了某个参数。这些防不胜防的移动安全问题,恰好反映了移动应用行业的复杂现状。
(图:来自腾讯安全科恩实验室2018年Android应用安全白皮书)
系统安全存在隐患,提前破坏安全机制:Android作为一个开源系统,所有人都可以研究源码,进而根据需求开发新的系统和应用程序,成为了恶意程序的天然温床。甚至部分用户会为了获得对手机的“自由掌控”权,主动获取root权限,方便自己使用的同时,也给了黑客入侵“窗口”。
开源组件碎片化,安全修复困难:为提高应用开发效率,减少类似功能的重复开发成本,应用开发商往往选择引入公开现成的开源组件。但第三方开源组件本身存在的安全问题不易被开发商发现,从而在开发过程中转嫁给了移动应用上,难以被追踪和修复。
安全能力不足,“避雷”力不从心:移动应用开发本身门槛低,开源组件的复用进一步降低了开发难度,使初学者可以迅速学习并实现基本功能。由于这些开发人员安全能力有限,遗漏、误用安全措施都可能造成新的安全隐患。
安全投入不足,安全生命周期管理缺失:Android 移动应用的开发涉及诸多环节,每个环节都可能存在引发安全问题的漏洞。由于安全投入不足,部分开发商无法系统、完整地管理应用安全生命周期,没能在完成开发后进一步进行安全扫描、漏洞修复等工作。
应用安全问题产生原因复杂,单一的系统或者工具难以解决相关问题。对于安全人员来说,借助应用漏洞扫描工具定位安全隐患并予以修复,是移动应用安全的第一道 “防火墙”。
02腾讯安全ApkPecker 为应用检测提供最优解决方案
现有的应用检测以代码扫描为主,这种简单的检测模式检测出来的漏洞有效信息少,需要花费巨大的人工成本进行确认和分析。这已经成为安全人员在使用检测工具中的一大痛点。
基于此,腾讯安全科恩实验室自主研发了一款Android 应用漏洞扫描工具ApkPecker,对应用漏洞进行扫描,同时输出高质量漏洞扫描报告,提供高品质漏洞信息以及漏洞触发完整路径,精准定位漏洞并提供修复建议,为更多的企业、移动安全人员提供更多的服务。
· 先进的检测模式
漏洞检测就像是一场置身其中的“迷宫游戏”,随着检测工作的深入,这个迷宫的形状逐渐扩大。同时,你将拥有多个起点和终点,但无法确定这些点具体在哪里。虽然对这个迷宫的探索可能达不到100%的完整,但只要能够弄清楚其中的一条完整路径,就能够成功通关。
过去,简单的代码扫描检测,就相当于把迷宫的局部信息汇总,需要安全人员自己去判断、分析漏洞的触发路径。而腾讯ApkPecker采取静态检测方式,具体而言,静态扫描的技术原理是静态数据流分析和污点分析技术。基于此,ApkPecker能够构建所关注的数据流向,提供从数据源到漏洞点的数据流路径,保存一次分析中所有上下文信息,为漏洞提供多层级的综合判断依据,提高准确率。
针对静态分析的检测结果,ApkPecker支持POC程序的自动化生成,以动态程序自动化验证漏洞,直观体会漏洞可能产生的影响。目前,Apkpeckr支持生成的POC种类≥50 种。
· 全面的攻击面覆盖
参考木桶原理,应用安全风险并不以最强的防御措施来衡量,而是由短板的攻击面风险情况决定。基于腾讯安全丰富的移动应用渗透测试经验和前沿的攻击模式分析总结,ApkPecker覆盖了公开组件、外置存储空间、WebView回调、JavaScriptInterface回调、开放Socket端口等全面的攻击面。
ApkPecker对上述攻击面的静态分析结果不仅能够覆盖32种Android应用通用漏洞模型,还可以提供从攻击面入口到漏洞触发点的一条清晰完整的数据流路径,帮助安全人员精准定位漏洞从而进行修复。
基于以上,ApkPecker会出具一份界面清晰友好的检测报告,根据需求高精度筛选不同安全等级的漏洞结果,并给出修复建议。
· 行业领先的检测准确率
整体来看,腾讯ApkPecker 的漏洞自动挖掘能力可以通过以下几个关键指标体现:
- 具备对程序源文件的漏洞检测功能,支持检测漏洞种类≥14种
- 具备内部数据交互的漏洞检测功能,支持检测漏洞种类≥19种
- 具备通信数据传输的漏洞检测功能,支持检测漏洞种类≥10种
- 具备本地数据存储的漏洞检测功能,支持检测漏洞种类≥22种
- 具备APP常用的SDK的特征库,内置第三方sdk的特征≥1200个,对APP应用进行第三方sdk识别
- 具备针对漏洞检测结果,支持POC程序的自动化生成,以动态程序自动化验证。支持生成的POC种类≥50种
基于强大的漏洞检测能力和庞大的漏洞检测规则库,腾讯ApkPecker已针对主流市场上30w+的应用进行了通用漏洞检测,检测出476w+漏洞,且漏洞检测结果准确率≥85%,误报率不高于15%,处于行业领先水平。
· 能力开放 腾讯安全打造产业升级的“防护盾”
事实上,腾讯安全科恩实验室在移动应用安全领域深耕十余年,在成果上,积累了领先的技术实力和以及科研成果。在保持对前沿技术研究能力的同时,腾讯安全科恩实验室已通过产品化的方式向Google、PayPal等知名 开发商输出移动应用安全检测能力,守护全网用户信息安全。
伴随人工智能和机器学习技术在大数据时代迅猛发展,大量恶意样本以及漏洞特征的积累,为腾讯安全科恩实验室迭代产品和技术能力提供了数据基础。近年来,科恩实验室陆续开放自身核心技术能力,为汽车信息安全、智能应用生态安全、IoT信息安全等行业的数字化和信息化转型推出了聚焦产业实际痛点的行业安全解决方案,加快与ICT、数字化汽车以及传统汽车等企业的合作。
未来,腾讯安全科恩实验室将继续开放技术能力,在更多重要的安全领域,打造 “无形却可被感知,隐藏却可被召唤,看不见却广为人知”的安全解决方案,成为各行业数字化转型改革的 “防护盾”。