今天给大家推荐一个安全测试相关的开源项目:nccgroup/house
1、介绍
它是一个由 NCC Group 开发的,一个基于Frida和Python编写的动态运行时移动应用分析工具包,提供了基于 Frida 的 Web GUI 界面,旨在简化动态函数挂钩的过程,让研究人员能够更轻松地评估 Android 应用的安全性。由于集成了Frida,提供了代码注入功能,允许实时修改运行中的应用行为。
项目地址:
https://github.com/nccgroup/house
2、主要特点
-
直观易用:通过Web界面,用户无需深入了解Frida语法即可启动复杂的动态分析。
-
灵活性:支持对动态加载的Dex/Jar文件进行挂钩,适应性强。
-
扩展性:提供了一系列内建脚本和模板,用户可以根据需要定制自己的分析任务。
-
调试友好:内置的REPL(Read-Evaluate-Print Loop)环境,便于用户探索和调试函数行为。
3、应用场景
-
移动应用渗透测试:检测潜在漏洞,如隐私泄露、不安全的网络通信等。
-
应用程序行为分析:监控文件操作、数据共享和其他敏感活动。
-
教育与研究:帮助学生和研究人员更好地理解移动应用的工作原理。
4、项目安装
克隆House仓库:首先,你需要从GitHub上克隆House项目到你的本地机器,并安装相关依赖。
git clone https://github.com/nccgroup/house
cd house
pip3 install -r requirements.txt
pip3 install pipenv
pipenv --python=/usr/bin/python3 install
pipenv --python=/usr/bin/python3 shell
python3 app.py <PORT>
# or:
mkvirtualenv --python=/usr/local/bin/python3 house
workon house
pip install -r requirements.txt
python app.py <PORT>
# or: (only for Mac OS)
git clone https://github.com/nccgroup/house
cd house
pip3 install -r requirements.txt
pip3 install pipenv
pipenv --python=/usr/local/bin/python3 install
pipenv --python=/usr/local/bin/python3 shell
python3 app.py <PORT>
5、使用方法
1、启动 House:启动 House 的后端服务,可以通过命令行执行 python main.py
来启动 House。启动后,可以通过浏览器访问指定的地址和端口来使用 Web GUI 界面,通常是http://localhost:8000。
2、选择目标应用程序:在 Web GUI 界面上选择需要分析的目标应用程序,可以上传应用程序的安装包或者指定应用程序的包名。(也可以用项目自带的test_apk来尝鲜)
3、选择分析模块:根据分析需求选择需要的分析模块,可以选择内置的模块或者自定义的模块。
4、执行分析任务:点击开始分析按钮,House 将会启动 Frida 进行动态分析,并在 Web GUI 上实时显示分析结果。
5、查看分析结果:在分析完成后,可以在 Web GUI 上查看分析结果,包括应用程序的运行时行为、API 调用情况等。
6、小结
综上所述,nccgroup/house
是一个功能强大且灵活的移动应用动态分析工具,适用于各种场景,包括渗透测试、行为分析和学术研究。通过 Frida 和 Python 的结合,它提供了一个高效且用户友好的分析平台。安装和配置简便,且具有丰富的特性和扩展性,使得研究人员和开发人员能够有效地探索和评估移动应用的安全性。
文章转载自:狂师