页面标题
本平台专为移动应用安全风险研究与合规评估设计,严禁用于任何非法用途。 如有疑问或建议,欢迎加入微信群交流。
应用基础信息
文件基本信息
应用基础信息
Google Play 应用市场信息
开发者信息
关于此应用
组件导出状态统计
文件结构与资源列表
应用签名证书信息
二进制文件已签名
v1 签名: False
v2 签名: True
v3 签名: False
v4 签名: False
主题: C=CN, ST=aa, L=aa, O=aa, OU=aa, CN=xiawanli
签名算法: rsassa_pkcs1v15
有效期自: 2019-01-31 08:51:12+00:00
有效期至: 2044-01-25 08:51:12+00:00
发行人: C=CN, ST=aa, L=aa, O=aa, OU=aa, CN=xiawanli
序列号: 0x5ecdfb71
哈希算法: sha256
证书MD5: e29a70cf57389a797eb568f484ee5548
证书SHA1: 969a40d35cfac7a04d9be2d7df54a433f4929ddd
证书SHA256: c081890cf2a1adf13e56d7b50a4f3d8edb35b7c46d6ccc732dd997b7e433be1d
证书SHA512: 342e776fdaf91ae463e4138e22a7eadaa19f142d01d4eecfd6088b138ee52242d797f4bb488a2cb94194de7ff2bd7b885264f0662aab1ba3bcd5fcc78dd1acae
公钥算法: rsa
密钥长度: 2048
指纹: 93bc333184b769077d61141af5a7f11949824a6ad24387cc87ef03422c251d61
找到 1 个唯一证书
证书安全分析
0
0
1
| 标题 | 严重程度 | 描述信息 |
|---|---|---|
| 已签名应用 | 信息 | 应用程序已使用代码签名证书进行签名 |
权限声明与风险分级
| 权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
|---|---|---|---|---|
| android.permission.INTERNET | 完全互联网访问 | 允许应用程序创建网络套接字。 | ||
| android.permission.ACCESS_NETWORK_STATE | 获取网络状态 | 允许应用程序查看所有网络的状态。 | 无 | |
| com.google.android.gms.permission.AD_ID | 应用程序显示广告 | 此应用程序使用 Google 广告 ID,并且可能会投放广告。 | 无 | |
| com.android.vending.BILLING | 应用程序具有应用内购买 | 允许应用程序从 Google Play 进行应用内购买。 | 无 | |
| android.permission.WRITE_EXTERNAL_STORAGE | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 | ||
| android.permission.VIBRATE | 控制振动器 | 允许应用程序控制振动器,用于消息通知振动功能。 | 无 | |
| android.permission.READ_EXTERNAL_STORAGE | 读取SD卡内容 | 允许应用程序从SD卡读取信息。 | ||
| android.permission.WAKE_LOCK | 防止手机休眠 | 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。 | 无 | |
| android.permission.FOREGROUND_SERVICE | 创建前台Service | Android 9.0以上允许常规应用程序使用 Service.startForeground,用于podcast播放(推送悬浮播放,锁屏播放) | 无 |
Manifest 配置安全分析
0
5
0
0
| 序号 | 问题 | 严重程度 | 描述信息 | 操作 |
|---|---|---|---|---|
| 1 |
应用程序可以安装在存在漏洞的 Android 版本上 Android 9, minSdk=28] |
信息 | 该应用程序可以安装在具有多个漏洞的旧版本 Android 上。支持 Android 版本 => 10、API 29 以接收合理的安全更新。 | |
| 2 |
应用程序已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。 | |
| 3 |
应用程序数据可以被备份 [android:allowBackup=true] |
警告 | 这个标志允许任何人通过adb备份你的应用程序数据。它允许已经启用了USB调试的用户从设备上复制应用程序数据。 | |
| 4 |
Activity (io.mrarm.mctoolbox.DiagnosticActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
| 5 |
Service (androidx.work.impl.background.systemjob.SystemJobService) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.BIND_JOB_SERVICE [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
| 6 |
Broadcast Receiver (androidx.work.impl.diagnostics.DiagnosticsReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.DUMP [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 |
可浏览 Activity 组件分析
| ACTIVITY | INTENT |
|---|---|
| io.mrarm.mctoolbox.DiagnosticActivity |
Schemes:
mctoolbox://,
Hosts: diag, |
网络通信安全风险分析
| 序号 | 范围 | 严重级别 | 描述 |
|---|
API调用分析
安全漏洞检测
0
1
1
0
0
| 序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
|---|---|---|---|---|---|
| 1 | 应用程序记录日志信息,不得记录敏感信息 | 信息 |
CWE: CWE-532: 通过日志文件的信息暴露
OWASP MASVS: MSTG-STORAGE-3 |
升级会员:解锁高级权限 | |
| 2 | 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/libtoolbox-1.20.1.02.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__vsnprintf_chk', '__read_chk'] |
False
warning 符号可用 |
| 2 | arm64-v8a/libtoolbox-1.20.12.01.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__vsnprintf_chk', '__read_chk'] |
False
warning 符号可用 |
| 3 | arm64-v8a/libtoolbox-1.20.15.01.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__vsnprintf_chk', '__read_chk'] |
False
warning 符号可用 |
| 4 | arm64-v8a/libtoolbox-1.20.32.03.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__vsnprintf_chk', '__read_chk'] |
False
warning 符号可用 |
| 5 | arm64-v8a/libtoolbox-1.20.51.01.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__memcpy_chk', '__vsnprintf_chk', '__vsprintf_chk', '__read_chk', '__strchr_chk'] |
False
warning 符号可用 |
| 6 | arm64-v8a/libtoolbox-1.20.80.05.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__memcpy_chk', '__vsnprintf_chk', '__vsprintf_chk', '__read_chk', '__strchr_chk'] |
False
warning 符号可用 |
| 7 | arm64-v8a/libyurai.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
True
info 这个二进制文件在栈上添加了一个栈哨兵值,以便它会被溢出返回地址的栈缓冲区覆盖。这样可以通过在函数返回之前验证栈哨兵的完整性来检测溢出 |
Full RELRO
info 此共享对象已完全启用 RELRO。 RELRO 确保 GOT 不会在易受攻击的 ELF 二进制文件中被覆盖。在完整 RELRO 中,整个 GOT(.got 和 .got.plt 两者)被标记为只读。 |
None
info 二进制文件没有设置运行时搜索路径或RPATH |
None
info 二进制文件没有设置 RUNPATH |
True
info 二进制文件有以下加固函数: ['__strlen_chk', '__vsprintf_chk', '__vsnprintf_chk', '__read_chk', '__memset_chk', '__strcpy_chk', '__strchr_chk', '__memcpy_chk', '__memmove_chk', '__strncpy_chk', '__strrchr_chk', '__fgets_chk', '__FD_SET_chk', '__FD_ISSET_chk'] |
False
warning 符号可用 |
文件分析
| 序号 | 问题 | 文件 |
|---|---|---|
| 1 | 应用程序中硬编码的证书/密钥文件 |
res/raw/microsoft_ca.pem |
IP地理位置
恶意域名检测
| 域名 | 状态 | 中国境内 | 位置信息 | 解析 |
|---|---|---|---|---|
| docs.oasis-open.org |
安全 |
否 |
IP地址: 52.164.206.56 国家: 美利坚合众国 地区: 得克萨斯州 城市: Windcrest 查看: Google 地图 |
|
| settings.data.microsoft.com |
安全 |
否 |
IP地址: 51.105.71.136 国家: 澳大利亚 地区: 新南威尔士州 城市: 悉尼 查看: Google 地图 |
|
| vortex.data.microsoft.com |
安全 |
否 |
IP地址: 51.105.71.136 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
| passport.net |
安全 |
否 |
IP地址: 52.164.206.56 国家: 爱尔兰 地区: 都柏林 城市: 都柏林 查看: Google 地图 |
|
| schemas.microsoft.com |
安全 |
否 |
IP地址: 13.107.213.74 国家: 美利坚合众国 地区: 华盛顿 城市: 雷德蒙 查看: Google 地图 |
|
| twitter.com |
安全 |
否 |
IP地址: 104.244.42.1 国家: 美利坚合众国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
| www.protocol.jar.handler |
安全 |
否 | 没有可用的地理位置信息。 |
|
| schemas.xmlsoap.org |
安全 |
否 |
IP地址: 13.107.246.74 国家: 美利坚合众国 地区: 华盛顿 城市: 雷德蒙 查看: Google 地图 |
|
| api.xposed.info |
安全 |
否 |
IP地址: 185.199.109.153 国家: 美利坚合众国 地区: 宾夕法尼亚 城市: 加利福尼亚 查看: Google 地图 |
|
手机号提取
URL链接分析
| URL信息 | 源码文件 |
|---|---|
|
http://www.google.com/design/ http://mozilla.org/MPL/2.0/. https://www.minecraft.net/attribution/?hideChrome https://social.xbox.com/changegamertag http://materialdesignicons.com/ https://aka.ms/switchattribution https://account.xbox.com/Settings https://www.minecraft.net/licensed-content/?hideChrome https://aka.ms/minecraftedusupport http://scripts.sil.org/OFL https://aka.ms/switchcontent |
自研引擎-A |
|
https://api.xposed.info/using.html |
de/robv/android/xposed/XposedInit.java |
|
www.parseutil www.protocol.jar.handler |
org/lsposed/lspd/util/ClassPathURLStreamHandler.java |
|
https://twitter.com/szeroki_ |
自研引擎-S |
|
127.0.0.1 https://vortex.data.microsoft.com/collect/v1 https://settings.data.microsoft.com/settings/v2.0/telemetry/ https://settings.data.microsoft.com/settings/v2.0/androidll/app ftp://%s:%s@%s 1.2.0.4 http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd http://passport.net/tb http://docs.oasis-open.org/wss/2004/xx/oasis-2004xx-wss-saml-token-profile-1.0#samlassertionid http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd |
lib/arm64-v8a/libyurai.so |
Firebase配置检测
邮箱地址提取
第三方追踪器
| 名称 | 类别 | 网址 |
|---|
敏感凭证泄露
已显示 1 个secrets
1、 AdMob广告平台的=> "com.google.android.gms.ads.APPLICATION_ID" : "ca-app-pub-9335396028317773~8341451042"
活动列表
显示 16 个 activities
广播接收者列表
显示 8 个 receivers
内容提供者列表
显示 2 个 providers
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……| 规则名称 | 描述信息 | 操作 |
|---|---|---|
| 病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
| 漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
| 隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
| 密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
| Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |