页面标题
本平台专为移动应用安全风险研究与合规评估设计,严禁用于任何非法用途。 如有疑问或建议,欢迎加入微信群交流。
应用基础信息
文件基本信息
应用基础信息
Google Play 应用市场信息
关于此应用
组件导出状态统计
文件结构与资源列表
应用签名证书信息
二进制文件已签名
v1 签名: False
v2 签名: True
v3 签名: True
v4 签名: False
主题: C=US, ST=California, L=Mountain View, O=Android, OU=Android, CN=Android, E=android@android.com
签名算法: rsassa_pkcs1v15
有效期自: 2008-02-29 01:33:46+00:00
有效期至: 2035-07-17 01:33:46+00:00
发行人: C=US, ST=California, L=Mountain View, O=Android, OU=Android, CN=Android, E=android@android.com
序列号: 0x936eacbe07f201df
哈希算法: sha1
证书MD5: e89b158e4bcf988ebd09eb83f5378e87
证书SHA1: 61ed377e85d386a8dfee6b864bd85b0bfaa5af81
证书SHA256: a40da80a59d170caa950cf15c18c454d47a39b26989d8b640ecd745ba71bf5dc
证书SHA512: 5216ccb62004c4534f35c780ad7c582f4ee528371e27d4151f0553325de9ccbe6b34ec4233f5f640703581053abfea303977272d17958704d89b7711292a4569
公钥算法: rsa
密钥长度: 2048
指纹: f9f32662753449dc550fd88f1ed90e94b81adef9389ba16b89a6f3579c112e75
找到 1 个唯一证书
证书安全分析
0
0
1
| 标题 | 严重程度 | 描述信息 |
|---|---|---|
| 已签名应用 | 信息 | 应用程序使用代码签名证书进行签名 |
权限声明与风险分级
| 权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
|---|---|---|---|---|
| android.permission.QUERY_ALL_PACKAGES | 获取已安装应用程序列表 | Android 11引入与包可见性相关的权限,允许查询设备上的任何普通应用程序,而不考虑清单声明。 | 无 | |
| android.permission.VIBRATE | 控制振动器 | 允许应用程序控制振动器,用于消息通知振动功能。 | 无 | |
| android.permission.FOREGROUND_SERVICE | 创建前台Service | Android 9.0以上允许常规应用程序使用 Service.startForeground,用于podcast播放(推送悬浮播放,锁屏播放) | 无 | |
| android.permission.FOREGROUND_SERVICE_PHONE_CALL | 在通话期间启用前台服务 | 允许常规应用程序使用类型为“phoneCall”的 Service.startForeground。 | 无 | |
| android.permission.MANAGE_OWN_CALLS | 使呼叫应用程序能够管理自己的呼叫 | 允许通过自我管理的ConnectionService API管理自己的调用的调用应用程序。 | 无 | |
| android.permission.ACCESS_WIFI_STATE | 查看Wi-Fi状态 | 允许应用程序查看有关Wi-Fi状态的信息。 | 无 | |
| android.permission.CHANGE_WIFI_STATE | 改变Wi-Fi状态 | 允许应用程序改变Wi-Fi状态。 | 无 | |
| android.permission.ACCESS_NETWORK_STATE | 获取网络状态 | 允许应用程序查看所有网络的状态。 | 无 | |
| android.permission.READ_PHONE_STATE | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 | 无 | |
| android.permission.WRITE_EXTERNAL_STORAGE | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 | ||
| android.permission.CAMERA | 拍照和录制视频 | 允许应用程序拍摄照片和视频,且允许应用程序收集相机在任何时候拍到的图像。 | 无 | |
| android.permission.SYSTEM_ALERT_WINDOW | 弹窗 | 允许应用程序弹窗。 恶意程序可以接管手机的整个屏幕。 | 无 | |
| android.permission.POST_NOTIFICATIONS | 发送通知的运行时权限 | 允许应用发布通知,Android 13 引入的新权限。 | 无 | |
| android.permission.FOREGROUND_SERVICE_LOCATION | 允许前台服务与位置使用 | 允许常规应用程序使用类型为“location”的 Service.startForeground。 | 无 | |
| android.permission.ACCESS_FINE_LOCATION | 获取精确位置 | 通过GPS芯片接收卫星的定位信息,定位精度达10米以内。恶意程序可以用它来确定您所在的位置。 | 无 | |
| android.permission.ACCESS_COARSE_LOCATION | 获取粗略位置 | 通过WiFi或移动基站的方式获取用户粗略的经纬度信息,定位精度大概误差在30~1500米。恶意程序可以用它来确定您的大概位置。 | 无 | |
| android.permission.GET_TASKS | 检索当前运行的应用程序 | 允许应用程序检索有关当前和最近运行的任务的信息。恶意应用程序可借此发现有关其他应用程序的保密信息。 | 无 | |
| android.permission.RECEIVE_BOOT_COMPLETED | 开机自启 | 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。 | 无 | |
| android.permission.USE_FULL_SCREEN_INTENT | 全屏通知 | Android 10以后的全屏 Intent 的通知。 | 无 | |
| android.permission.WAKE_LOCK | 防止手机休眠 | 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。 | 无 | |
| android.permission.BLUETOOTH | 创建蓝牙连接 | 允许应用程序查看或创建蓝牙连接。 | 无 | |
| android.permission.READ_EXTERNAL_STORAGE | 读取SD卡内容 | 允许应用程序从SD卡读取信息。 | ||
| android.permission.INTERNET | 完全互联网访问 | 允许应用程序创建网络套接字。 | 无 | |
| com.google.android.c2dm.permission.RECEIVE | 接收推送通知 | 允许应用程序接收来自云的推送通知。 | 无 | |
| com.google.android.gms.permission.AD_ID | 应用程序显示广告 | 此应用程序使用 Google 广告 ID,并且可能会投放广告。 | 无 | |
| com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE | Google 定义的权限 | 由 Google 定义的自定义权限。 | 无 | |
| android.permission.RECORD_AUDIO | 获取录音权限 | 允许应用程序获取录音权限。 | 无 | |
| android.permission.MODIFY_AUDIO_SETTINGS | 允许应用修改全局音频设置 | 允许应用程序修改全局音频设置,如音量。多用于消息语音功能。 | 无 | |
| android.permission.BLUETOOTH_CONNECT | 新蓝牙运行时权限 | Android 12 系统引入了新的运行时权限,需要能够连接到配对的蓝牙设备。 | 无 | |
| com.taxsee.driver.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION | 未知权限 | 来自 android 引用的未知权限。 | 无 |
Manifest 配置安全分析
0
9
0
0
| 序号 | 问题 | 严重程度 | 描述信息 | 操作 |
|---|---|---|---|---|
| 1 |
应用程序已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。 | |
| 2 |
Activity (com.feature.deeplink.UriActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
| 3 |
Activity设置了TaskAffinity属性 (com.feature.voip.VoIpCallActivity) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
| 4 |
Activity设置了TaskAffinity属性 (com.taxsee.next_order.NextOrderActivity) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
| 5 |
Service (com.google.android.gms.auth.api.signin.RevocationBoundService) 受权限保护, 但是应该检查权限的保护级别。 Permission: com.google.android.gms.auth.api.signin.permission.REVOCATION_NOTIFICATION [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
| 6 |
Broadcast Receiver (com.google.firebase.iid.FirebaseInstanceIdReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: com.google.android.c2dm.permission.SEND [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
| 7 |
Service (androidx.work.impl.background.systemjob.SystemJobService) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.BIND_JOB_SERVICE [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
| 8 |
Broadcast Receiver (androidx.work.impl.diagnostics.DiagnosticsReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.DUMP [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
| 9 |
Broadcast Receiver (androidx.profileinstaller.ProfileInstallReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.DUMP [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 |
可浏览 Activity 组件分析
| ACTIVITY | INTENT |
|---|---|
| com.feature.deeplink.UriActivity |
Schemes:
taxseedriver://,
Hosts: app, |
网络通信安全风险分析
| 序号 | 范围 | 严重级别 | 描述 |
|---|
API调用分析
| API功能 | 源码文件 |
|---|---|
| 一般功能-> 文件操作 | 显示文件 |
| 调用java反射机制 | 显示文件 |
| 隐私数据-> 剪贴板数据读写操作 | mt/DialogInterfaceOnClickListenerC0009.java mt/modder/hub/base/C0001.java |
| 一般功能-> 获取系统服务(getSystemService) | mt/C0021.java |
| 加密解密-> 信息摘要算法 | mt/C0021.java |
| 加密解密-> Crypto加解密组件 | mt/C0011.java mt/C0022.java mt/modder/hub/base/C0001.java |
| 一般功能-> IPC通信 | 显示文件 |
| 进程操作-> 获取进程pid | mt/C0022.java |
| 组件-> 发送广播 | mt/modder/hub/base/C0001.java |
| 进程操作-> 杀死进程 | mt/modder/hub/base/C0000.java mt/modder/hub/base/C0001.java |
安全漏洞检测
0
2
2
0
0
| 序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
|---|---|---|---|---|---|
| 1 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
| 2 | 应用程序记录日志信息,不得记录敏感信息 | 信息 |
CWE: CWE-532: 通过日志文件的信息暴露
OWASP MASVS: MSTG-STORAGE-3 |
升级会员:解锁高级权限 | |
| 3 | 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
| 4 | 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它 | 信息 |
OWASP MASVS: MSTG-STORAGE-10 |
升级会员:解锁高级权限 |
Native库安全分析
| 序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
|---|---|---|---|---|---|---|---|---|---|
| 1 | arm64-v8a/libdriver.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 二进制文件有以下加固函数: ['__vsprintf_chk', '__strlen_chk', '__vsnprintf_chk', '__memmove_chk'] |
True
info 符号被剥离 |
| 2 | arm64-v8a/libmaplibre.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 二进制文件有以下加固函数: ['__memcpy_chk', '__strlen_chk', '__memset_chk', '__strchr_chk'] |
True
info 符号被剥离 |
| 3 | arm64-v8a/libsurface_util_jni.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 |
False
warning 二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用 |
True
info 符号被剥离 |
文件分析
| 序号 | 问题 | 文件 |
|---|
行为分析
| 编号 | 行为 | 标签 | 文件 |
|---|---|---|---|
| 00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
IP地理位置
恶意域名检测
| 域名 | 状态 | 中国境内 | 位置信息 | 解析 |
|---|---|---|---|---|
| api.maptiler.com |
安全 |
否 |
IP地址: 104.17.243.40 国家: 美国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
| api.mapbox.com |
安全 |
否 |
IP地址: 216.137.39.69 国家: 美国 地区: 加利福尼亚 城市: 洛杉矶 查看: Google 地图 |
|
| demotiles.maplibre.org |
安全 |
否 |
IP地址: 104.17.243.40 国家: 美国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
| api-project-85600571315.firebaseio.com |
安全 |
否 |
IP地址: 35.190.39.113 国家: 美国 地区: 密苏里州 城市: 堪萨斯城 查看: Google 地图 |
|
手机号提取
URL链接分析
| URL信息 | 源码文件 |
|---|---|
|
https://maps.taximaxim.ru/maps/taxsee https://maps.taximaxim.ru/assets/sprites/icon-sprite-night https://maps.taximaxim.ru/assets/fonts https://maps.taximaxim.ru/assets/sprites/icon-sprite-day |
自研引擎-A |
|
https://api-project-85600571315.firebaseio.com |
自研引擎-S |
|
https://api.maptiler.com https://api.mapbox.com https://demotiles.maplibre.org |
lib/arm64-v8a/libmaplibre.so |
Firebase配置检测
| 标题 | 严重程度 | 描述信息 |
|---|---|---|
| 应用与Firebase数据库通信 | 信息 |
该应用与位于 https://api-project-85600571315.firebaseio.com 的 Firebase 数据库进行通信 |
| Firebase远程配置已启用 | 警告 |
Firebase远程配置URL ( https://firebaseremoteconfig.googleapis.com/v1/projects/85600571315/namespaces/firebase:fetch?key=AIzaSyBfHpYjEFyfO7bwrXMX9vfwiBTtxl2D1fk ) 已启用。请确保这些配置不包含敏感信息。响应内容如下所示: { |
邮箱地址提取
第三方追踪器
| 名称 | 类别 | 网址 |
|---|
敏感凭证泄露
已显示 6 个secrets
1、 凭证信息=> "com.google.android.geo.API_KEY" : "AIzaSyB41f1CA2-Kj5CdIzw68KU3ChrviOv8GnM"
2、 "google_app_id" : "1:85600571315:android:22b999dc9f18944d"
3、 "com.google.firebase.crashlytics.mapping_file_id" : "d68c0138de714e03b10435b7d4df36b6"
4、 "google_crash_reporting_api_key" : "AIzaSyBfHpYjEFyfO7bwrXMX9vfwiBTtxl2D1fk"
5、 "firebase_database_url" : "https://api-project-85600571315.firebaseio.com"
6、 "google_api_key" : "AIzaSyBfHpYjEFyfO7bwrXMX9vfwiBTtxl2D1fk"
活动列表
显示所有 78 个 activities
服务列表
显示 21 个 services
广播接收者列表
显示 19 个 receivers
内容提供者列表
第三方SDK
| SDK名称 | 开发者 | 描述信息 |
|---|---|---|
| BarHopper | BarHopper 是一个 ML Kit 中的库,用于在 Android 设备上识别或解码条形码。 | |
| C++ 共享库 | Android | 在 Android 应用中运行原生代码。 |
| Jetpack DataStore | Jetpack DataStore 是一种数据存储解决方案,允许您使用协议缓冲区存储键值对或类型化对象。DataStore 使用 Kotlin 协程和 Flow 以异步、一致的事务方式存储数据。 | |
| Jetpack Camera | CameraX 是 Jetpack 的新增库。利用该库,可以更轻松地向应用添加相机功能。该库提供了很多兼容性修复程序和解决方法,有助于在众多设备上打造一致的开发者体验。 | |
| PJSIP | PJSIP | PJSIP 是用 C 语言实现的自由开源多媒体通信库。它实现 SIP、SDP、RTP、Stun、Turn、Ice 等标准协议,将 SIP 协议与丰富的多媒体框架和 NAT 穿透功能整合到高层次 API,可移植适配台式机、嵌入式系统、手机等诸多系统。 |
| RootBeer | Scott Alexander-Bown | A tasty root checker library and sample app. We've scoured the internets for different methods of answering that age old question... Has this device got root? |
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……| 规则名称 | 描述信息 | 操作 |
|---|---|---|
| 病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
| 漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
| 隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
| 密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
| Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |