简介
移动安全框架(MobSF)是一种自动、一体化的移动应用(Android / iOS / Windows)静态和动态分析的测试,恶意软件分析和安全评估框架。
安装
要求
这里只以Windows为例:
- 安装Git
- 安装Python 3.7
- 安装JDK 8+设置
JAVA_HOME
环境变量。 - 安装Microsoft Visual C++ Build Tools
- 安装OpenSSL,无需修改默认安装目录。
- 下载和安装wkhtmltopdf as per the WIKI操作指南
- 将包含 wkhtmltopdf 二进制文件的文件夹添加到环境变量PATH
- 安装
Genymotion
或者Android Studio Emulator
cmd安装
Windows用户在运行setup.bat之前,请关闭所有MobSF打开过的文件夹和用MobSF打开过的文本编辑器。
这些都会因为引起权限错误造成安装中断。
解决Frida安装失败
按照报错提示,去https://pypi.org/project/frida/#files下载frida-12.10.4-py3.8-win-amd64.egg ,并拷贝到提示的目录(C:\Users\Administrator/frida-12.6.11-py3.7-win32.egg
,注意:文件名不一样,需要改名)下。
找不到指定的模块
这是因为Anaconda缺少sqlite3.dll
。
解决方法就是去官网下载一个:https://sqlite.org/download.html
然后把压缩包里的sqlite3.def
和sqlite3.dll
,解压到Anaconda3.7安装目录下的DLLs
里就可以了。
运行
MobSF默认情况下绑定到 0.0.0.0:8000
。 您可以在 run.sh
或 run.bat
中更改IP或端口。 在您的Web浏览器中,跳转到 http://localhost:8000/
以访问 MobSF Web界面。
配置动态分析
可以使用真实的移动设备进行动态分析,但我们不支持。如果您需要动态分析,请不要在Docker或虚拟机中设置MobSF。
Genymotion Android x86_x64
支持 x86_x64 体系架构 Android 4.1 - 9.0, 最高支持 API 28
Genymotion是首选的动态分析环境,你可以以最小的损耗来进行设置。 **在启动MobSF之前运行Genymotion Android VM。**所有内容都会在运行时自动配置。我们建议使用Android 7.0及更高版本。
- Android 5.0-9.0-这些版本使用
Frida
,开箱即用,无需设置。 - Android 4.1 - 4.4- 这些版本使用
Xposed Framework
并要求您在首次进行Dynamic Analysis之前先移动运行时。这些版本还要求在安装Xposed模块后重新引导VM。
单击动态分析器页面中的 MobSFy Android Runtime 按钮以分析 Android运行时环境。 - HTTPS 代理
对于Android版本 4.4 - 9.0, 全局代理设置自动应用于运行时
对于Android版本 4.1 - 4.3, 设置“动态分析器”页面中显示的Android VM代理。
如果Dynamic Analyzer无法检测到您的android设备,则需要在 MobSF/settings.py 中手动配置 ANALYZER_IDENTIFIER
。
示例: ANALYZER_IDENTIFIER = '192.168.56.101:5555'
. 你可以从Genymotion标题栏中找到Android设备IP,默认端口为5555
。
Android Studio 模拟器
支持arm,arm64和x86架构 Android 5.0 - 9.0, 最高 API 28
带有Google Play商店的Android模拟器映像被视为正式映像,你不能在MobSF中使用它。 在没有Google Play商店的情况下创建一个Android虚拟设备(AVD)。不要从Android Studio启动AVD,而应使用“emulator”命令行选项用以可写入的方式启动。
为此,将您的Android SDK仿真器目录添加到PATH
。
一些示例路径
- Mac -
/Users/<user>/Library/Android/sdk/emulator
- Linux -
/home/<user>/Android/Sdk/emulator
- Windows -
C:\Users\<user>\AppData\Local\Android\Sdk\emulator
列出可用的Android虚拟设备(AVD)
仅支持API 28以下的Android图像!!
设置 ADB_BINARY 路径在 MobSF/settings.py.
确保您使用的是Android Studio附带的adb二进制文件。如果使用其他版本,则可能会导致冲突并在尝试动态分析时引入问题。
一些示例位置
执行Android虚拟设备 (AVD)
执行一个 AVD 在启动 MobSF 之前 使用 emulator 命令行参数.
一切都会在运行时自动配置。 MobSF需要AVD版本5.0到9.0进行动态分析。我们建议使用Android 7.0及更高版本。
HTTPS 代理
对于Android版本5.0-9.0,全局代理设置会在运行时自动应用。
GApps 在 AVD (可选)
如果需要GApp,请从https://opengapps.org/查找合适的软件包
运行测试
我们使用tox进行测试。 在 virtualenv 外部安装tox。
用于风格检查
用于运行风格检查和测试
更新MobSF
如果以上更改均无效,则可能必须再次运行setup.sh或setup.bat,这将删除先前的扫描结果。
参考
https://mobsf.github.io/docs/#/zh-cn/
https://www.yuque.com/cryzlasm/auto/zwhrr5