如何开展手机的渗透测试?

我在甲方,最近公司手机业务发展迅猛,希望能够在手机安全或者说针对终端的渗透测试上有所积累。我在国内的论坛上调研了一下,目前大部分是做逆向和破解。而去年乌云上爆出了大量android app的问题,涉及到代码执行,信息泄漏等等。而业内经常爆出溢出等高危漏洞。由于之前没有做过手机的安全,所以没有什么具体的思路,请各位大牛指点。 

社区编辑更新于 2018-05-17 09:56
1 个回答
  • jennie2018-05-17 09:59

    手机的渗透测试可以分为3点:

    1. 同Web安全渗透测试类似,需要对Server API和终端应用进行安全测试;

    2. OS本身的特性或安全问题;

    3. 应用被逆向破解,业务逻辑和信息被盗取;


    第一块的问题也不少,很多做移动开发的工程师并不一定有Web安全的经验。

    很多App都存在各种逻辑漏洞,比如App的流程依赖于响应内容且没有做校验。这一类的问题可以通过代理工具进行测试;

    同样,很多应用对应的服务器也会有一些安全风险点,内部服务开放也可以是渗透的点;


    第二块会有一些通用的漏洞,比如android老版本的webview代码执行,调试模式的一些安全问题;也会有一些开发习惯的问题,比如SSL证书配置的问题,SQL本地注入和日志信息泄露的问题等。

    综合来讲,第二块涉及的问题和手机系统本身有很大关联,渗透测试过程中需要不断的积累知识库;


    第三块其实是非常重要的,很多时候我们的一些重要业务逻辑会在应用中,如果被黑客或者竞争对手逆向破解,很可能导致商秘泄露或者破解版本的盛行等,导致业务发展受阻。


    前两点通过自己渗透测试或者寻者渗透测试服务能够解决绝大部分风险;

    最后一点比较复杂,自己实施的话建议业务注意前后端逻辑和关键业务逻辑充分分离,不过通常甲方安全工程师很难保证(业务逻辑性和人力审核成本),简单高效的方式就是购买加固服务。


    利益相关:网易云易盾提供业内独特的App渗透测试服务(可免费试用),以攻击者的视角,模拟黑客攻击过程,对App(Android、iOS)客户端以及服务端进行深入探测,找出应用系统中存在的缺陷和漏洞,及早发现,及早预防。

    整个测试过程分为四步:

    1、方案设计:确定渗透测试的时间、方法、测试范围、应急预案等,对整个过程进行监控;

    2、信息收集:收集网络拓扑结构,对目标系统进行分析,扫描探测,服务查点,查找系统IP等;

    3、扫描渗透:综合收集的情报,借助工具找到目标系统漏洞,进行渗透入侵,从而获得管理权限;

    4、检测报告:测试人员根据测试结果,输出渗透测试服务报告。内容包括安全状况、修复建议等。


    此外网易云还提供相关应用加固服务,如Android 应用加固iOS 应用加固等,可以点击免费试用。