从0到1,移动APP的安全渗透测试,一文教会你!

上一篇 / 下一篇  2023-03-06 16:52:32 / 个人分类:安全测试

引言

时间如梭,梭梭催人老。一转眼,已经好长时间没有更文了,只因为这段时间,我90%的时间只投入了两件事:

①产品的安全测试加我VX:atstudy-js 回复“测试”,进入 自动化测试学习交流群~~

②以队长身份参加我厂组织的安全渗透活动。

最后的比赛结果,当然是不负众望,在总厂与子厂的18支参赛队伍(70+人数)中,我荣获个人第二名,团队第二的成绩。

因为习惯了获奖的感觉,所以对我来说,相对于奖牌与名次,更喜欢我的Boss们开心的样子(毕竟月底的KPI、年终总结……)

当然,在参与项目这段时间,我也有了新的成长,对渗透测试也有了新的提升。所以今天,我也准备分享移动APP的安全渗透测试,在这里,你会学到:

①移动APP安全测试的重要性;

②主流的移动APP测试工具;

③从0到1搭建Mobile Security Framework(俗称MobSF);

④搭建过程中的避坑指南;

⑤如何使用MobSF;

⑥测试报告总结及分析。

或许你会有疑问:在网上搜索一下,就能知道MobSF的搭建方法,为什么还要分享?

因为网上的那些所谓的教程几乎很难看到非常详细的,并且没有自己从0到1的亲自实践及总结。还有一点,也是我认为要整理并分享的原因,即:如何解决搭建及使用过程中遇到的问题。

看到这里,是不是已经有些期待了呢?别停下,跟着我的思路,开启今天的课程学习吧。

软件安全测试

什么是信息安全

关于信息安全,现在的互联网时代,无时无刻不被提醒,例如:

移动/联调/电信的短信提示

下载软件时的信息安全提示

你给陌生人转账时的信息安全认证

说了这么多,那到底什么是信息安全呢?

引用官方的话:信息安全事关国家生产运行、国家经济安全和人民生命财产安全,是网络强国战略、制造强国战略的重要支撑内容。

你看,信息安全的重要性,下到我们的个人身份信息, 上到国家信息战略,所以,这也凸显出,信息安全的重要性。

既然信息安全这么重要,那如何避免信息威胁呢,信息威胁都有哪些种类呢?我们接着往下看。

信息安全威胁

要想保障信息安全,我们就需要先了解,信息威胁的种类都有哪些,我先上一个表格,这是2021年OWASP TOP 10的安全漏洞

通过上面的TOP 10的漏洞威胁, 如果不是从事安全工作或者不了解安全信息的同学来说,理解起来有点费劲,但是我举个例子,你就会知道:

弱密码

还记得前段时间,新闻报道过,曝出某个国家的国防系统登录账号及密码为 “admin”和“123456”。

这是什么概念呢?我举个例子:虽然你每天都会锁门,但是你的钥匙就放在门边上。你说,你这门锁有什么意义呢?

当然,如果对瞎子来说,可能有点费劲,毕竟钥匙放到哪里,瞎子是看不到的,但是又有哪个瞎子会去陌生人家里 “串门”呢?

安全测试目的

到这里,既然知道信息安全的重要性,以及信息威胁的种类,我们就需要避免这些漏洞就好了。

但是,如何避免,又如何能确定自己开发的模块就没有安全漏洞呢?这个时候就需要安全测试的介入了。

在安全测试介入前,我们需要了解安全测试的目的,只有知道其目的,才能更好进行测试。

我也用一段话来回答:安全测试的目的,就是查找软件自身程序设计中存在的安全隐患,并检查应用程序对非法侵入的防范能力, 根据安全指标不同测试策略也不同,如果遵循相同的原则,去证明软件的安全性,将有利于软件安全测试的工作规范的进行,有利于软件安全测试工作的发展。

俗话说,要想彻底打败”敌人”,除了自己有高超的武艺外,还需要有“武器”的加持。

所以,在了解安全测试目的后,我我们就进入安全测试的下一个阶段,即:学习掌握安全测试工具

安全测试工具介绍

关于移动APP的安全测试工具,有很多,这里,我只介绍3款,即:

Mobsf

QARK

Drozer

我想,做过移动APP安全渗透测试的同学,对这三款工具,应该都不陌生,这三款应该在移动APP的安全测试界的主流了,这里,我也对这三款进行简单介绍,希望你能对它们有一个初步的认识。

MobSF

Mobsf,全称为Mobile Security Framework, 是一款自动化移动 App 安全测试工具,适用于 iOS 和 Android,可执行动态、静态分析和 Web API 测试。

功能:

Mobsf可用于对 Android 和 iOS 应用进行快速安全分析;

支持 binaries(IPA 和 APK)以及 zipped 的源代码。

特点:

一款开源移动APP安全测试工具;

可以在本地环境托管,不用担心信息泄露;

对Android 、IOS、Windows三个平台的移动APP进行安全性分析。

展示图:

QARK

QARK 全称Quick Android Review Kit,由领英(LinkedIn)开发,是一款静态代码分析工具,可以快速 Android 审查工具包,这个工具可用来检查 Android 应用的源代码和打包的 APK 中常见的安全漏洞。

特点:

一款开源移动APP安全测试工具;

能提供详细的漏洞报告;

能扫描移动 App 中的所有元素,查找安全威胁;

它可以生成 ADB 命令,甚至是功能齐全的 APK,从而将假设的漏洞转化为有效的 “POC” 漏洞利用。

弊端:

QARK 会将 Android 应用程序反编译回原始源代码,这在某些情况下可能属于违法行为,谨慎使用。

展示图:

Drozer

Drozer 是由 MWR InfoSecurity 开发的 App 安全测试框架,分为两部分,即:

①安装在PC端的控制台;

②安装在终端上的代理APP。

交互:

可以通过与dalivik VM交互、与其他应用程序的IPC端点交互、与底层操作系统的交互,来避免正处于开发阶段或者正处于部署于组织的Android应用程序和设备暴露出安全风险。

特点:

一款开源移动APP安全测试工具;

可以基于真机和模拟器进行测试,不需要USB调试或其他开发工具即可使用;

可以进行自动扩展,进行app的安全测试。

弊端:

只支持python2.x的版本,不支持python3.x的版本;

PC端与移动端交互时,需要adb命令。

展示图:

PC端

移动端

我之所以列举这三款工具:

第一,这三款工具在移动APP的安全测试中还算比较主流,并且使用的人数也挺可观;

第二,因为这三款工具有的可以直接分析静态代码和动态交互,有的可以直接进行在移动APP上进行操作;

第三,这三款工具,测试报告给我的感觉非常的完善;

第四,这三款工具,我使用的经验比较丰富。

所以本系列我主要介绍Mobsf这款工具(后面的两篇文章会一一讲解如何安装和使用),至于其他两款,后面会逐一进行介绍。

添加微信:atstudy-js  或者扫描下方二维码,备注“博客”邀请你进入Python自动化测试学习交流群~


TAG:

 

评分:0

我来说两句

Open Toolbar