移动安全框架 (MobSF) 是一个智能化、一体化的开源移动应用(Android / iOS)自动测试框架,能够对以上两种移动应用进行静态和动态分析(动态分析目前暂时只支持Android)。
它可以有效、快速地对应用APK 和IPA文件 及压缩的源代码进行审计分析。同时,MobSF 也能够通过其API Fuzzer功能模块,对 Web API 的安全性进行检测,如收集信息,分析安全头部信息,识别移动API 的具体漏洞,如XXE、SSRF、路径遍历,IDOR以及其他的与会话和API调用速率限制有关的逻辑问题。
• Python 2.7,下载请点击:Python 2.7
• Oracle JDK 1.7或以上版本,下载请点击:Oracle JDK;
• Oracle VirtualBox 下载请点击: VirtualBox;
• iOS IPA分析(需在 Mac系统上执行)所需命令行工具( Mac系统)下载请点击:Conmand-line tool;
• 硬件配置:4GB 或以上内存,5G硬盘空间。
安装
该框架目前暂时只于Windows 7, 8, 8.1, 10, Ubuntu, OSX Mavericks等系统平台上进行测试。
• Windows:解压MobSF压缩文件到C:\MobSF;
• Mac:解压MobSF压缩文件到/Users/[username]/MobSF;
• Linux:解压MobSF压缩文件到/home/[username]/MobSF。
通过pip安装MobSF Python 依赖包,以下为不同系统的命令执行操作,
Windows
C:\Python27\Scripts\pip.exe install -r requirements.txt
如果pip.exe在脚本目录中不可用,下载及重新安装最新版本的Python2.7。
Unix
pip install -r requirements.txt
python manage.py runserver
如果需要在具体端口上运行,可以通过以下指令进行,
python manage.py runserver port_number
如果上述步骤都顺利正常执行的话,那么我们将会看到以下的输出内容,
*配置MobSF VM*
动态分析器目前只支持针对 Android APK文件进行分析,硬件环境要求为需要计算机拥有4GB 内存和支持完全虚拟化 。
首先,配置动态分析器我们需要获取以下4个方面的信息, (1)VM UUID
(2)快照 UUID
(3)主机/代理 IP
(4)VM/设备 IP
1、打开VirtualBox(本文主要以VirtualBox为样例),选择文件->导入应用,并选中MobSF_VM_X.X.ova 文件(下载地址可于前文查看);
2、在进行导入过程中,请勿更改任意配置,一切按照默认设置进入下一步;
3、一旦OVA文件导入成功,我们将在VirtualBox上看到一个以MobSF_VM_X.X命名的新的条目;
4、接下来右击MobSF VM,并选择设置一项,选中到网络选项卡,这里我们需要配置两个网络适配器;
(1)适配器1 启用并于attached to 中,选择Host-only Adapter模式,重命名适配器名称,因为我们需要通过该名称来识别主机/代理 IP,配置如下图;
(2)适配器2 启用并于attached to中,选择NAT模式,配置如下图。
5、保存上述设置,便可启动MobSF VM。当该VM启动的时候,记下VM的 IP地址;
6、一旦该虚机启动后,它会停留在一个锁屏状态上,而解锁密码默认为1234;
7、获取 主机/代理 IP
(1)Windows :在命令提示符中输入ipconfig,记下与适配器1 相同名称的适配器IP地址;
(2)Unix :在命令提示符中输入ifconfig,记下与适配器1 相同名称的适配器IP地址;
8、接着在MobSF 虚机中选中Wi-Fi设置,设置代理IP(上一步获取到的IP)和端口(1337);
9、保存设置,并回到MobSF虚机的Home界面上,等待大约30秒的时间,之后保存好 MobSF虚机的快照;
10、一旦快照保存好,右击MobSF虚机,选择“在Explorer中显示”或者“在 Finder中显示”;
11、在任意编辑器中打开MobSF_VM_X.X.vbox文件(这里使用的是sublime),记下 VM UUID以及快照UUID;
接下来,到了此时,我们已经有了如前文提到的,配置动态分析器所需要的信息,
(1)VM UUID
12、接下来我们打开MobSF/settings.py文件,并将其中参数的值设置如下,
(1)UUID = VM UUID
(2) SUUID = Snapshot UUID
(3)VM_IP = VM IP
(4)PROXY_IP = Host/Proxy IP
以下为配置样本,
最后,我们重新再打开服务器即可运行。部分功能如下图
iOS IPA
介绍内容来自 FreeBuf黑客与极客