自建MobSF移动应用安全扫描平台

2 下载量 42 浏览量 更新于2024-08-28 收藏 644KB PDF 举报
"这篇文章主要介绍了如何利用开源工具MobSF(Mobile Security Framework)建立自己的移动应用APP扫描云平台,以确保在必要时对未知应用进行安全评估。 MobSF是一个多平台的自动化工具,适用于Android、iOS和Windows应用的安全测试,包括静态、动态分析,Web API测试和恶意软件检查。通过其Web界面,用户可以方便地管理任务和查看报告,并能与CI/CD或DevSecOps流程集成。在安装部署方面,文章提到了在Linux、MacOS和Windows系统上的基本要求和安装步骤,如Python、JDK以及特定的开发工具包。" 在移动互联网时代,终端安全是至关重要的,尤其是当需要安装来源不明的APP时。为了保障安全,我们可以利用各种在线安全检测平台,但作者指出,许多这样的平台可能已经过时。因此,他建议使用MobSF构建自己的移动应用扫描平台。MobSF是一个强大的自动化测试框架,它允许对APK、IPA和APPX等二进制文件进行静态和动态分析,以检测潜在的安全漏洞。 静态分析主要针对未运行的应用,通过检查代码和文件结构来识别问题。动态分析则在运行时进行,通过模拟用户行为来发现运行时的安全问题。此外,MobSF还支持Web API测试,以检查应用程序与服务器之间的通信是否安全。对于恶意软件分析,MobSF可以帮助识别潜在的恶意行为。 安装MobSF需要满足一定的系统要求,例如安装Git、Python 3.6+、JDK 8+等基础组件。在Linux环境中,可以使用包管理器安装所需依赖;在MacOS上,需安装特定的开发者工具;而在Windows上,需要Microsoft Visual C++ Build Tools和OpenSSL等。对于Windows应用的静态分析,可能需要额外的环境,如Windows主机或虚拟机。 通过使用MobSF自建移动应用扫描云平台,开发者和安全人员可以在安全性和效率之间找到平衡,确保对未知应用的合理评估,降低安全风险。这不仅可以增强个人和组织对移动应用的信任度,还能促进更好的安全实践,特别是在DevSecOps流程中,将安全检查融入到持续集成和交付过程中。
2019-07-17 上传
移动安全框架 (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 依赖包,以下为不同系统的命令执行操作,WindowsC:\Python27\Scripts\pip.exe install -r requirements.txt如果pip.exe在脚本目录中不可用,下载及重新安装最新版本的Python2.7。Unixpip install -r requirements.txt运行MobSFpython 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(2)快照 UUID(3)主机/代理 IP(4)VM/设备 IP12、接下来我们打开MobSF/settings.py文件,并将其中参数的值设置如下,(1)UUID = VM UUID(2) SUUID = Snapshot UUID(3)VM_IP = VM IP(4)PROXY_IP = Host/Proxy IP以下为配置样本,最后,我们重新再打开服务器即可运行。部分功能如下图静态分析Android APKiOS IPA动态分析Android APKWeb API Fuzzer介绍内容来自 FreeBuf黑客与极客 标签:MobSF