页面标题
应用基础信息
文件基本信息
应用基础信息
组件导出状态统计
文件结构与资源列表
应用签名证书信息
APK已签名
v1 签名: True
v2 签名: True
v3 签名: False
v4 签名: False
主题: O=DefaultCompany
签名算法: rsassa_pkcs1v15
有效期自: 2025-07-17 11:04:07+00:00
有效期至: 2075-07-05 11:04:07+00:00
发行人: O=DefaultCompany
序列号: 0x7ed1ac42
哈希算法: sha1
证书MD5: 2db419d632541e4f1ddf32748dd57c40
证书SHA1: 1e2bef01a87ddad9d2a0e578987517626cbebba6
证书SHA256: a3e7d29837f40ed6e3868d3033229c33243181c79b008cbbcbd35c3ad25d3937
证书SHA512: 116f83c7bc35f63b420e3b0702b903db528f1ebc4cbea70b803af1c82046e4ee38197baa59a2ceab548bc44d95ca09f8240408f9a0f2a0b4e886dc3dbb6f3662
公钥算法: rsa
密钥长度: 2048
指纹: 41a0c91059f1c75c8f90424ec1a03fdbcab4a85f430eb4b7c734beb473455a39
共检测到 1 个唯一证书
证书安全合规分析
0
1
1
标题 | 严重程度 | 描述信息 |
---|---|---|
已签名应用 | 信息 | 应用已使用代码签名证书进行签名。 |
权限声明与风险分级
权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
---|---|---|---|---|
android.permission.MODIFY_AUDIO_SETTINGS | 允许应用修改全局音频设置 | 允许应用程序修改全局音频设置,如音量。多用于消息语音功能。 | 无 | |
android.permission.RECORD_AUDIO | 获取录音权限 | 允许应用程序获取录音权限。 | ||
android.permission.ACCESS_COARSE_LOCATION | 获取粗略位置 | 通过WiFi或移动基站的方式获取用户粗略的经纬度信息,定位精度大概误差在30~1500米。恶意程序可以用它来确定您的大概位置。 | ||
android.permission.ACCESS_FINE_LOCATION | 获取精确位置 | 通过GPS芯片接收卫星的定位信息,定位精度达10米以内。恶意程序可以用它来确定您所在的位置。 | ||
android.permission.ACCESS_WIFI_STATE | 查看Wi-Fi状态 | 允许应用程序查看有关Wi-Fi状态的信息。 | ||
android.permission.ACCESS_NETWORK_STATE | 获取网络状态 | 允许应用程序查看所有网络的状态。 | ||
android.permission.CHANGE_WIFI_STATE | 改变Wi-Fi状态 | 允许应用程序改变Wi-Fi状态。 | 无 | |
android.permission.CHANGE_NETWORK_STATE | 改变网络连通性 | 允许应用程序改变网络连通性。 | 无 | |
android.permission.READ_PHONE_STATE | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 | ||
android.permission.WRITE_EXTERNAL_STORAGE | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 | ||
android.permission.INTERNET | 完全互联网访问 | 允许应用程序创建网络套接字。 | ||
android.permission.MOUNT_UNMOUNT_FILESYSTEMS | 装载和卸载文件系统 | 允许应用程序装载和卸载可移动存储器的文件系统。 | 无 | |
android.permission.FOREGROUND_SERVICE | 创建前台Service | Android 9.0以上允许常规应用程序使用 Service.startForeground,用于podcast播放(推送悬浮播放,锁屏播放) | 无 | |
android.permission.ACCESS_MOCK_LOCATION | 获取模拟定位信息 | 获取模拟定位信息,一般用于帮助开发者调试应用。恶意程序可以用它来覆盖真实位置信息源。 | 无 |
敏感权限分析
android.permission.RECORD_AUDIO
android.permission.ACCESS_COARSE_LOCATION
android.permission.ACCESS_FINE_LOCATION
android.permission.READ_PHONE_STATE
android.permission.ACCESS_NETWORK_STATE
android.permission.CHANGE_WIFI_STATE
android.permission.CHANGE_NETWORK_STATE
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.INTERNET
android.permission.FOREGROUND_SERVICE
android.permission.ACCESS_MOCK_LOCATION
恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
其它常用权限 是已知恶意软件经常滥用的权限。
Manifest 配置安全分析
2
6
0
0
序号 | 问题 | 严重程度 | 描述信息 | 操作 |
---|---|---|---|---|
1 |
应用已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用允许明文网络流量(如 HTTP、FTP 协议、DownloadManager、MediaPlayer 等)。API 级别 27 及以下默认启用,28 及以上默认禁用。明文流量缺乏机密性、完整性和真实性保护,攻击者可窃听或篡改传输数据。建议关闭明文流量,仅使用加密协议。 | |
2 | Activity (kx.sports.com.WeChatLoginActivity) 的启动模式非 standard | 高危 | Activity 启动模式设置为 "singleTask" 或 "singleInstance" 时,可能成为根 Activity,导致其他应用可读取调用 Intent 内容。涉及敏感信息时应使用 "standard" 启动模式。 | |
3 | Activity (kx.sports.com.wxapi.WXEntryActivity) 的启动模式非 standard | 高危 | Activity 启动模式设置为 "singleTask" 或 "singleInstance" 时,可能成为根 Activity,导致其他应用可读取调用 Intent 内容。涉及敏感信息时应使用 "standard" 启动模式。 | |
4 |
Activity (kx.sports.com.wxapi.WXEntryActivity) 未受保护。 [android:exported=true] |
警告 | 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。 | |
5 |
Activity (kx.sports.com.wxapi.WXPayEntryActivity) 未受保护。 [android:exported=true] |
警告 | 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。 | |
6 |
Activity (com.switfpass.pay.activity.PayResultActivity) 未受保护。 [android:exported=true] |
警告 | 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。 | |
7 |
Broadcast Receiver (kx.sports.com.AppRegister) 受权限保护,但应检查权限保护级别。 Permission: com.tencent.mm.plugin.permission.SEND [android:exported=true] |
警告 | 检测到 Broadcast Receiver 已导出并受未在本应用定义的权限保护。请在权限定义处核查其保护级别。若为 normal 或 dangerous,恶意应用可申请并与组件交互;若为 signature,仅同证书签名应用可访问。 | |
8 |
Service (com.baidu.location.f) 未受保护。 [android:exported=true] |
警告 | 检测到 Service 已导出,未受任何权限保护,任意应用均可访问。 |
可浏览 Activity 组件分析
ACTIVITY | INTENT |
---|---|
kx.sports.com.WeChatLoginActivity |
Schemes:
whh://,
|
网络通信安全风险分析
序号 | 范围 | 严重级别 | 描述 |
---|
API调用分析
API功能 | 源码文件 |
---|---|
一般功能-> 文件操作 | 显示文件 |
进程操作-> 获取进程pid | com/baidu/b/g.java |
一般功能-> 加载so文件 | cn/ay/clinkapi/Api.java |
加密解密-> Crypto加解密组件 | 显示文件 |
一般功能-> IPC通信 | 显示文件 |
一般功能-> 获取系统服务(getSystemService) | kx/sports/com/WeChatLoginActivity.java kx/sports/com/utility/NetworkUtil.java |
一般功能-> 获取WiFi相关信息 | kx/sports/com/utility/NetworkUtil.java |
一般功能-> 获取活动网路信息 | kx/sports/com/utility/NetworkUtil.java |
调用java反射机制 | 显示文件 |
组件-> 启动 Activity | kx/sports/com/WeChatLoginActivity.java |
隐私数据-> 剪贴板数据读写操作 | kx/sports/com/WeChatLoginActivity.java |
隐私数据-> 获取GPS位置信息 | kx/sports/com/WeChatLoginActivity.java |
隐私数据-> 录制视频 | kx/sports/com/WeChatLoginActivity.java |
加密解密-> 信息摘要算法 | com/baidu/b/c/d/f.java com/baidu/b/d/b.java com/baidu/b/d/c.java |
加密解密-> Base64 加密 | com/baidu/b/b/a.java |
隐私数据-> 录制音频行为 | org/fmod/a.java |
网络通信-> HTTP建立连接 | kx/sports/com/LocationService.java kx/sports/com/Util.java |
安全漏洞检测
0
4
2
0
0
序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
---|---|---|---|---|---|
1 | 应用程序记录日志信息,不得记录敏感信息 | 信息 |
CWE: CWE-532: 通过日志文件的信息暴露
OWASP MASVS: MSTG-STORAGE-3 |
升级会员:解锁高级权限 | |
2 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
3 | 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
4 | 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它 | 信息 |
OWASP MASVS: MSTG-STORAGE-10 |
升级会员:解锁高级权限 | |
5 | SHA-1是已知存在哈希冲突的弱哈希 | 警告 |
CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 | |
6 | MD5是已知存在哈希冲突的弱哈希 | 警告 |
CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 |
Native库安全分析
序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
---|---|---|---|---|---|---|---|---|---|
1 | arm64-v8a/libclinkapi-lib.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
动态共享对象 (DSO)
info 共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。 |
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__FD_ISSET_chk', '__vsprintf_chk', '__memmove_chk', '__memcpy_chk', '__FD_SET_chk', '__vsnprintf_chk', '__strlen_chk'] |
True
info 符号被剥离 |
2 | arm64-v8a/libmain.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
动态共享对象 (DSO)
info 共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。 |
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Partial RELRO
warning 此共享对象启用了部分 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在部分 RELRO 中,GOT 部分的非 PLT 部分是只读的,但 .got.plt 仍然是可写的。使用选项 -z,relro,-z,now 启用完整的 RELRO。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
False
warning 二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用 |
True
info 符号被剥离 |
文件分析
序号 | 问题 | 文件 |
---|
行为分析
编号 | 行为 | 标签 | 文件 |
---|---|---|---|
00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
00034 | 查询当前数据网络类型 |
信息收集 网络 |
升级会员:解锁高级权限 |
00130 | 获取当前WIFI信息 |
WiFi 信息收集 |
升级会员:解锁高级权限 |
00013 | 读取文件并将其放入流中 |
文件 |
升级会员:解锁高级权限 |
00054 | 从文件安装其他APK |
反射 |
升级会员:解锁高级权限 |
00080 | 将录制的音频/视频保存到文件 |
录制音视频 文件 |
升级会员:解锁高级权限 |
00147 | 获取当前位置的时间 |
信息收集 位置 |
升级会员:解锁高级权限 |
00063 | 隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
00101 | 初始化录音机 |
录制音视频 |
升级会员:解锁高级权限 |
00091 | 从广播中检索数据 |
信息收集 |
升级会员:解锁高级权限 |
00195 | 设置录制文件的输出路径 |
录制音视频 文件 |
升级会员:解锁高级权限 |
00199 | 停止录音并释放录音资源 |
录制音视频 |
升级会员:解锁高级权限 |
00198 | 初始化录音机并开始录音 |
录制音视频 |
升级会员:解锁高级权限 |
00136 | 停止录音 |
录制音视频 命令 |
升级会员:解锁高级权限 |
00194 | 设置音源(MIC)和录制文件格式 |
录制音视频 |
升级会员:解锁高级权限 |
00090 | 设置录制的音频/视频文件格式 |
录制音视频 |
升级会员:解锁高级权限 |
00028 | 从assets目录中读取文件 |
文件 |
升级会员:解锁高级权限 |
00197 | 设置音频编码器并初始化录音机 |
录制音视频 |
升级会员:解锁高级权限 |
00007 | Use absolute path of directory for the output media file path |
文件 |
升级会员:解锁高级权限 |
00138 | 设置音频源(MIC) |
录制音视频 |
升级会员:解锁高级权限 |
00196 | 设置录制文件格式和输出路径 |
录制音视频 文件 |
升级会员:解锁高级权限 |
00133 | 开始录音 |
录制音视频 命令 |
升级会员:解锁高级权限 |
00191 | 获取短信收件箱中的消息 |
短信 |
升级会员:解锁高级权限 |
00041 | 将录制的音频/视频保存到文件 |
录制音视频 |
升级会员:解锁高级权限 |
00089 | 连接到 URL 并接收来自服务器的输入流 |
命令 网络 |
升级会员:解锁高级权限 |
00109 | 连接到 URL 并获取响应代码 |
网络 命令 |
升级会员:解锁高级权限 |
00094 | 连接到 URL 并从中读取数据 |
命令 网络 |
升级会员:解锁高级权限 |
00108 | 从给定的 URL 读取输入流 |
网络 命令 |
升级会员:解锁高级权限 |
IP地理位置
恶意域名检测
手机号提取
URL链接分析
URL信息 | 源码文件 |
---|---|
https://api.weixin.qq.com/sns/userinfo?access_token= https://api.weixin.qq.com/sns/oauth2/access_token?appid=wxa7bfa96741d7c16b&secret=&code= |
kx/sports/com/wxapi/WXEntryActivity.java |
Firebase配置检测
邮箱地址提取
第三方追踪器
名称 | 类别 | 网址 |
---|---|---|
Baidu Location | https://reports.exodus-privacy.eu.org/trackers/97 |
敏感凭证泄露
已显示 1 个secrets
1、 百度地图的=> "com.baidu.lbsapi.API_KEY" : "2qLrSVBagcrf6lwYEg5GaYIrTesHWR9t"
活动列表
服务列表
显示 1 个 services
广播接收者列表
显示 1 个 receivers
内容提供者列表
第三方SDK
SDK名称 | 开发者 | 描述信息 |
---|---|---|
Unity | Unity Technologies | Unity 游戏使用 Il2Cpp 后端时产生的游戏代码。 |
File Provider | Android | FileProvider 是 ContentProvider 的特殊子类,它通过创建 content://Uri 代替 file:///Uri 以促进安全分享与应用程序关联的文件。 |
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……规则名称 | 描述信息 | 操作 |
---|---|---|
病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |