关于APKHunt
APKHunt是一款功能强大的Android应用程序静态代码分析工具,该工具基于OWASP MASVS框架实现其功能。尽管APKHunt主要面向移动应用开发人员和安全测试人员,但任何人都可以使用它来识别和解决其代码中的潜在安全漏洞。
在该工具的帮助下,移动软件架构师或开发人员可以进行彻底的代码审查,以确保其移动应用程序的安全性和完整性,而安全测试人员可以使用该工具来确认其测试结果的完整性和一致性。
无论是希望构建安全应用程序的开发人员,还是负责确保其安全的信息安全测试人员,APKHunt都是安全开发工作中的宝贵资源。
注意,当前版本的APKHunt仅支持在Linux环境下运行。
功能介绍
1、扫描范围:涵盖OWASP MASVS框架的大部分SAST(静态应用程序安全测试)相关测试用例;
2、扫描多个APK:支持扫描特定路径或文件夹中的多个APK文件;
3、扫描优化:特定规则旨在检查特定的安全状态,从而实现几乎准确的扫描过程;
4、低误报率:可以准确查明并突出显示代码中潜在安全漏洞的准确位置;
5、输出格式:支持以TXT文件格式输出分析结果,便于终端用户阅读;
工具依赖
Git
Golang
JADX
Dex2jar
上述依赖组件的安装命令如下:
sudo apt-get install git
sudo apt install golang-go
sudo apt-get install jadx
sudo apt-get install dex2jar
工具下载
由于该工具基于Go语言开发,因此我们首先需要在本地设备上安装并配置好Go环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:
git clone https://github.com/Cyber-Buddy/APKHunt.git
然后切换到项目目录中,直接运行APKHunt即可:
cd apkhunt
go run apkhunt.go
工具使用
_ _ __ __ _ __ _ _ _
/ _ \ | _ _ \| | / / | | | | | |
/ /_\ \| |_/ /| |/ / | |_| | _ _ _ _ | |_
| _ || __/ | \ | _ || | | |/ _ \| _|
| | | || | | |\ \ | | | || |_| || | | || |_
\_| |_/\_| \_| \_/ \_| |_/\ _ _ /|_| |_|\_ _|
------------------------------------------------
OWASP MASVS Static Analyzer
APKHunt Usage:
go run APKHunt.go [options] {.apk file}
Options:
-h 查看工具帮助信息
-p Provide the apk file-path
-m Provide the folder-path for multiple apk scanning
-l For logging (.txt file)
Examples:
APKHunt.go -p /Downloads/android_app.apk
APKHunt.go -p /Downloads/android_app.apk -l
APKHunt.go -m /Downloads/android_apps/
APKHunt.go -m /Downloads/android_apps/ -l
工具使用样例
APKHunt.go -p /Downloads/android_app.apk
APKHunt.go -p /Downloads/android_app.apk -l
APKHunt.go -m /Downloads/android_apps/
APKHunt.go -m /Downloads/android_apps/ -l
安全测试范围
V1 | 架构、设计和威胁建模要求 |
V2 | 数据存储和隐私要求 |
V3 | 密码学要求 |
V4 | 身份验证和会话管理要求 |
V5 | 网络通讯要求 |
V6 | 环境交互要求 |
V7 | 代码质量和构建设置要求 |
V8 | 弹性和逆向工程要求 |
工具运行截图
参考资料
https://redhuntlabs.com/
https://mobile-security.gitbook.io/masvs/