移动互联网时代,我们的生活和工作深受 App 影响。伴随移动 App 的广泛应用,App 安全日益重要。本文介绍了 App 开发可能用到的安全测试工具。
当今,全球移动用户大约超过37亿。Google Play 上大约有 220 万个 App,苹果App Store 上大约有 20 亿或更多的 App。同时,根据 Flurry 统计数据表明,现在,每个人每天会在移动设备上花费近 5 个小时的时间。
移动 App 的广泛应用,必然伴随着新的应用安全威胁。这些攻击与以前经典的 web app 无关。据 NowSecure 的最新研究表明,有 25% 的 App 包含高风险漏洞,常见的安全漏洞如下:
- 跨站脚本攻击(XSS)
- 用户敏感数据(IMEI、GPS、MAC 地址、电子邮件等)泄露
- SQL 注入
- 网络钓鱼攻击
- 数据加密缺失
- OS 命令注入
- 恶意软件
- 任意代码执行
随着移动 App 的增长,交付高安全性的 App 对用户来说非常重要。
有很多原因可以解释为什么 App 安全测试意义非凡。比如病毒或恶意软件感染、欺诈攻击、安全漏洞等。移动 App 安全测试包括数据安全性、授权、身份验证、重大漏洞等。
因此,从业务角度看,执行安全测试至关重要。对 App 开发者或开发团队而言,需要最好的移动 App 安全测试工具来确保 app 安全。
1. Quick Android Review Kit (QARK)
QARK 由领英开发,它是一款静态代码分析工具,可提供有关 Android App 安全威胁的信息,并给出简洁明了的问题描述。
它对在 Android 平台上发现 App 源代码和 APK 文件中的安全漏洞很有帮助。
特点:
它是一款开源工具,可以提供有关安全漏洞的完整信息;
它能生成有关潜在漏洞的报告,并提供一些如何解决这些漏洞的信息。同时,它还可以突出显示与 Android 版本有关的安全问题;
它能扫描移动 App 中的所有元素,查找安全威胁。同时,它以 APK 形式创建一个自定义应用程序来进行测试,并确定潜在问题。
2. Zed Attack Proxy
Zed Attack Proxy(ZAP) 是全球最受欢迎的免费安全测试工具之一。它是一款开源安全测试工具,在全球范围内由数百名活跃的志愿者管理。
特点:
提供 20 种不同语言的版本;
支持多种脚本语言类型;
易于安装;
在软件开发和测试阶段,它就能自动识别 App 中的安全漏洞
3.Drozer (MWR InfoSecurity)
Drozer 是由 MWR InfoSecurity 开发的 App 安全测试框架。它可以帮助开发者确定 Android 设备中的安全漏洞。
特点:
它是一款开源工具,可同时支持真实的 Android 设备和模拟器;
通过自动化和开展复杂活动,它只需很少时间即可评估与 Android 安全相关的复杂性;
它支持 Android 平台,并在 Android 设备自身上执行启用 Java 的代码
4. MobSF(Mobile Security Framework)
MobSF 是一款自动化移动 App 安全测试工具,适用于 iOS 和 Android,可熟练执行动态、静态分析和 Web API 测试。
移动安全框架可用于对 Android 和 iOS 应用进行快速安全分析。MobSF 支持 binaries(IPA 和 APK)以及 zipped 的源代码。
特点:
它是一款开源的移动 App 安全测试工具;
它可以托管在本地环境,因此重要数据不会与云交互;
它能对三个平台(Android、iOS、Windows)的移动 App 进行更快的安全性分析。同时,开发人员可以在开发阶段识别出安全漏洞。
5.ADB (Android Debug Bridge)
Android Debug Bridge 简称ADB,它是用于专门与运行 Android 设备进行通信的命令行移动应用程序测试工具。
它提供了一个终端接口,用于控制使用 USB 连接到计算机的 Android 设备。ADB 可用于安装 / 卸载应用程序、运行 Shell 命令、重启、传输文件等。并且,可以使用此类命令轻松还原 Android 设备。
特点:
ADB 可轻松与谷歌的 Android Studio 集成开发环境进行集成;
实时监控系统事件。它允许使用 Shell 命令在系统级别进行操作;
它使用蓝牙、WiFi、USB 等与设备通信
6. Micro Focus (Fortify)
Micro Focus 主要为用户提供安全和风险管理、混合 IT、DevOps 等领域的企业服务和解决方案。它提供各种跨平台、设备、服务器、网络等综合应用程序的安全测试服务。
Fortify 是 Micro Focus 最智能的安全测试工具之一,可在安装到移动设备前保护移动 App 的安全。
特点:
它使用灵活的交付模型执行端到端测试;
安全测试包括静态代码分析和针对移动 App 的扫描,并给出准确结果;
它有助于识别跨网络、服务器和客户端的安全漏洞;
它支持各种平台,例如Windows、iOS、Android 和 Blackberry。
7. CodifiedSecurity
它是一款著名的自动化移动 App 安全测试工具。
CodifiedSecurity 可以发现并修复安全漏洞,并确保足够安全地使用移动应用程序。它提供实时反馈。
特点:
它同时支持 Android 和 iOS 平台;
它遵循用于安全测试的程序化方法,该方法可确保测试结果可靠;
静态代码分析和机器学习为它提供支持。它还支持静态测试和动态测试;
它可以在不获取源代码的情况下测试移动 App
8. WhiteHat Security
WhiteHat Sentinel Mobile Express 是 WhiteHat Security 提供的安全评估和测试平台。
它被 Gartner 认可为安全测试的领导者,并赢得多个奖项。它能提供诸如移动 app 安全测试、web app 安全测试和基于计算机的培训解决方案等服务。
特点:
它是基于云的安全平台,并使用其静态和动态技术提供快速的解决方案;
WhiteHat Sentinel 支持 iOS 和 android 平台,可提供有关项目状况的完整信息;
与任何其他工具或平台相比,它能轻松地检测漏洞;
通过在真实设备上安装移动 App 进行测试,无需模拟器
9. Kiuwan
它提供领先的技术覆盖范围,可对移动 App 进行360°的安全性测试。它包括静态代码分析和软件组成分析,以及软件开发生命周期的自动化
10. Veracode
Veracode 向全球客户提供移动应用程序安全性服务。
它使用基于云的自动化服务,为移动应用程序和 Web 安全提供了解决方案。Veracode 的 MAST(移动应用程序安全测试)服务可以确定移动 App 中的安全问题,并立即采取行动解决问题。