首页 > 新闻 > 专家观点 >

梆梆安全移动应用安全测评云平台详析

2014-12-19 10:07:44   作者:   来源:CTI论坛   评论:0  点击:


  梆梆安全的移动应用测评云平台能够帮助移动应用开发者对其APP进行全面的安全测评,测试包括自动和人工两种方式,测评项目包括安全检测、风险评估和漏洞扫描三类。测评结束后,开发者会获得一份安全测评报告,里面记录了每个测评项目的测评目的、测评项目可能产生的危害、测评项目的详细内容以及相应的解决方案。一般在自动测评方式下,开发者就可以获知当前应用所面临的主要安全问题,而人工测评方式由专业渗透和逆向测试工程师进行,能够帮助开发者对其应用进行更加全面和细致的安全测评。

  移动应用的安全检测

  安全检测可以帮助应用开发者检查其所开发应用APK的内部行为是否符合安全规范,一共会检测7个项目。

  (1) 病毒检测,顾名思义就是检测APK是否含有病毒特征。

  (2) 敏感行为检测包括短信、彩信行为检测,上网行为检测,系统破坏行为检测,安装卸载行为检测,隐私窃取行为检测,收藏夹篡改检测,动态加载行为检测。

  (3) 配置文件检测会分别对APK里的Receiver组件和Service组件进行检测。

  (4) 权限检测主要是进行APK敏感权限和冗余权限的检测。

  (5) 敏感词检测包含代码检测和资源检测两项。

  (6) 广告检测主要测评APK里是否有广告内容。

  (7) 动态检测主要是进行上网行为检测、本地配置文件读写检测、数据文件读写检测、SD卡文件读写检测、短信行为参数解析、彩信行为、加解密算法检测、反射类和方法调用检测以及隐私泄密。

  以上这些安全检测可以提前帮助应用开发者发现其APP内部是否存在信息泄露、权限混乱等危险。而且这些检测项目都可以通过自动方式完成。

  移动应用的风险评估

  风险评估能够检测APK在实际应用中可能面临的外部风险,比如二次打包、反编译、数据泄漏等。风险评估包含41个测评项目,其中有9项可以通过自动方式完成,其余的项目则需要通过人工方式进行测评。

  在可以自动测评的项目里,代码保护会检测JAVA层代码是否有保护、是否做过混淆、是否有调试符号;Java层调试会检测AndroidManifest中的调试标记;组件安全评估会检测AndroidManifest中的组件是否能够被导出;敏感函数调用会检测APP中是否包含敏感函数,例如短信操作、联系人操作等等;调试日志函数评估用于检测APP中是否有调试日志函数调用;动态调试可以检测APP是否可被动态调试,应用运行时是否可以被GDB工具挂接;动态注入可以检测APP是否可被动态注入;APP防篡改评估则会检查应用的代码、资源文件、配置文件等被篡改(如添加广告)后是否可以重新打包并正常运行;明文数字证书风险评估则是检测客户端是否包含明文存储的数字证书文件。

  需要人工进行的风险评估包括加固壳识别、完整性校验、卸载清除、版本升级、登录控制、支付控制、支付密码设置、双因子认证、超时重新鉴权、密码强度、反编译防范、测试数据包含、安装包中敏感信息加密、第三方SDK安全、敏感信息显示、敏感数据截获、密码专用键盘保护、未授权程序组件访问、敏感数据存储、敏感数据残留、远程数据传输保密性、交易通信完整性、日志信息、界面切换后敏感信息需清空、通讯协议检测、双向认证、重放攻击、转账安全性检测、界面劫持、截屏防范、远程数据传输保密性、交易通信完整性。

  移动应用的漏洞扫描

  漏洞扫描对于移动应用而言十分重要,漏洞扫描可以帮助开发者提前发现其APK里存在的安全漏洞,防止恶意攻击者利用这些漏洞对应用发起攻击。

  由于漏洞扫描的专业性,所以目前只能自动检测程序代码内部是否残留测试使用的URL地址,以及应用是否使用了具有任意下载APK漏洞的友盟SDK版本。数据库注入、全局可读写内部文件、Webview远程代码执行、浏览器的Intent Scheme URL攻击、手势密码绕过、被调用安装任意APK、被调用卸载任意APK、其他业务逻辑漏洞扫描则需要通过人工方式进行。

  自动测评方式下单个APK包的检测时间不超过10分钟,而人工测试则会在2~3天内完成。如果开发者希望进行定制化的应用测评,可以单独提出申请。

分享到: 收藏

专题