介绍
Androwarn 是一种工具,其主要目的是检测并警告用户有关 Android 应用程序开发的潜在恶意行为。
检测是通过使用库对应用程序的 Dalvik 字节码(表示为 Smali)进行静态分析来执行的。
根据从用户选择的技术细节级别,该分析导致生成报告。
特点
- 针对不同恶意行为类别的字节码的结构和数据流分析
- 电话标识符泄露:IMEI、IMSI、MCC、MNC、LAC、CID、运营商名称…
- 设备设置泄露:软件版本、使用统计、系统设置、日志…
- 地理位置信息泄露:GPS/WiFi地理位置…
- 连接接口信息泄露:WiFi 凭据、蓝牙 MAC 地址…
- 电话服务滥用:高级短信发送、电话组合…
- 音视频流拦截:通话录音、视频抓拍……
- 远程连接建立:socket打开调用、蓝牙配对、APN设置编辑…
- PIM 数据泄露:联系人、日历、短信、邮件、剪贴板…
- 外部存储器操作:SD卡上的文件访问…
- PIM 数据修改:添加/删除联系人、日历事件…
- 任意代码执行:使用 JNI 的本机代码、UNIX 命令、权限提升…
- 拒绝服务:事件通知停用、文件删除、进程终止、虚拟键盘禁用、终端关闭/重启…
- 根据多个详细级别生成报告
- 新手 (- v 1)
- 高级 ( -v 2)
- 专家 ( -v 3)
- 根据多种格式生成报告
- 纯文本txt
- html从 Bootstrap 模板格式化
- JSON
安装
在python3的环境下下载比较方便
输入命令:
pip install androwarn
/python/Script设置环境变量之后就能直接使用androwarn
使用方法
usage: androwarn [-h] -i INPUT [-o OUTPUT] [-v {1,2,3}] [-r {txt,html,json}]
[-d]
[-L {debug,info,warn,error,critical,DEBUG,INFO,WARN,ERROR,CRITICAL}]
[-w]
version: 1.4
optional arguments:
-h, --help show this help message and exit
-i INPUT, --input INPUT
APK file to analyze
-o OUTPUT, --output OUTPUT
Output report file (default
"./<apk_package_name>_<timestamp>.<report_type>")
-v {1,2,3}, --verbose {1,2,3}
Verbosity level (ESSENTIAL 1, ADVANCED 2, EXPERT 3)
(default 1)
-r {txt,html,json}, --report {txt,html,json}
Report type (default "html")
-d, --display-report Display analysis results to stdout
-L {debug,info,warn,error,critical,DEBUG,INFO,WARN,ERROR,CRITICAL}, --log-level {debug,info,warn,error,critical,DEBUG,INFO,WARN,ERROR,CRITICAL}
Log level (default "ERROR")
-w, --with-playstore-lookup
Enable online lookups on Google Play
对apk进行测试
输入命令:
androwarn -i test.apk -r html -v 3