文件基本信息
应用基础信息
文件基本信息
应用基础信息
文件结构与资源列表
应用签名证书信息
二进制文件已签名
v1 签名: True
v2 签名: False
v3 签名: False
v4 签名: False
主题: C=DE, ST=Berlin, L=Berlin, CN=jwt
签名算法: rsassa_pkcs1v15
有效期自: 2024-03-26 10:00:20+00:00
有效期至: 2025-03-26 10:00:20+00:00
发行人: C=DE, ST=Berlin, L=Berlin, CN=jwt
序列号: 0x5247e20c
哈希算法: sha256
证书MD5: 27c8e406fe47f8dd48f68f5b6cfdd4c2
证书SHA1: e3455e8255256ff3e4a14391d064991965f9cc52
证书SHA256: beb1d1b2eb1ad2144f44481d14cf5624614248176b231705233db5bd790c9e03
证书SHA512: 928614a92714353d992945d66c401fa2e39d5217a49a5aed1f9f1f863de2a1b510cfdcfee849074e3cd518633c014c5a2c86f6058c24b1690d3c2f9911df7fb5
找到 1 个唯一证书
权限声明与风险分级
证书安全合规分析
标题 | 严重程度 | 描述信息 |
---|---|---|
已签名应用 | 信息 | 应用程序已使用代码签名证书进行签名 |
应用程序存在Janus漏洞 | 高危 | 应用程序使用了v1签名方案进行签名,如果只使用v1签名方案,那么它就容易受到安卓5.0-8.0上的Janus漏洞的攻击。在安卓5.0-7.0上运行的使用了v1签名方案的应用程序,以及同时使用了v2/v3签名方案的应用程序也同样存在漏洞。 |
Manifest 配置安全分析
序号 | 问题 | 严重程度 | 描述信息 | 操作 |
---|---|---|---|---|
1 |
应用程序可以安装在有漏洞的已更新 Android 版本上 Android 6.0-6.0.1, [minSdk=23] |
警告 | 该应用程序可以安装在具有多个未修复漏洞的旧版本 Android 上。这些设备不会从 Google 接收合理的安全更新。支持 Android 版本 => 10、API 29 以接收合理的安全更新。 | |
2 |
应用程序已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。 | |
3 | Activity (io.dcloud.PandoraEntry) is vulnerable to StrandHogg 2.0 | 高危 | 已发现活动存在 StrandHogg 2.0 栈劫持漏洞的风险。漏洞利用时,其他应用程序可以将恶意活动放置在易受攻击的应用程序的活动栈顶部,从而使应用程序成为网络钓鱼攻击的易受攻击目标。可以通过将启动模式属性设置为“singleInstance”并设置空 taskAffinity (taskAffinity="") 来修复此漏洞。您还可以将应用的目标 SDK 版本 (28) 更新到 29 或更高版本以在平台级别修复此问题。 | |
4 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPEntry0) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
5 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPEntry1) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
6 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPEntry2) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
7 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPEntry3) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
8 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPEntry4) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
9 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPNoRecentsEntry0) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
10 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPNoRecentsEntry1) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
11 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPNoRecentsEntry2) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
12 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPNoRecentsEntry3) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
13 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPNoRecentsEntry4) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
14 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPActivity0) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
15 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPActivity1) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
16 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPActivity2) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
17 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPActivity3) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
18 |
Activity设置了TaskAffinity属性 (io.dcloud.feature.sdk.multi.DCUniMPActivity4) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 |
可浏览 Activity 组件分析
ACTIVITY | INTENT |
---|
网络通信安全风险分析
序号 | 范围 | 严重级别 | 描述 |
---|
API调用分析
安全漏洞检测
序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
---|---|---|---|---|---|
1 | 应用程序记录日志信息,不得记录敏感信息 | 信息 |
CWE: CWE-532: 通过日志文件的信息暴露
OWASP MASVS: MSTG-STORAGE-3 |
升级会员:解锁高级权限 | |
2 | 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等 | 警告 |
CWE: CWE-312: 明文存储敏感信息
OWASP Top 10: M9: Reverse Engineering OWASP MASVS: MSTG-STORAGE-14 |
升级会员:解锁高级权限 | |
3 | IP地址泄露 | 警告 |
CWE: CWE-200: 信息泄露
OWASP MASVS: MSTG-CODE-2 |
升级会员:解锁高级权限 | |
4 | 启用了调试配置。生产版本不能是可调试的 | 高危 |
CWE: CWE-919: 移动应用程序中的弱点
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-RESILIENCE-2 |
升级会员:解锁高级权限 | |
5 | 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库 | 警告 |
CWE: CWE-89: SQL命令中使用的特殊元素转义处理不恰当('SQL 注入')
OWASP Top 10: M7: Client Code Quality |
升级会员:解锁高级权限 | |
6 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
7 | 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
8 | MD5是已知存在哈希冲突的弱哈希 | 警告 |
CWE: CWE-327: 使用已被攻破或存在风险的密码学算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 | |
9 | 应用程序创建临时文件。敏感信息永远不应该被写进临时文件 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
10 | 该文件是World Writable。任何应用程序都可以写入文件 | 高危 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 |
Native库安全分析
序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
---|---|---|---|---|---|---|---|---|---|
1 | armeabi-v7a/libbreakpad-core.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 二进制文件有以下加固函数: ['__vsnprintf_chk', '__memcpy_chk'] |
False
warning 符号可用 |
2 | armeabi-v7a/libdcblur.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 |
False
warning 二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用 |
False
warning 符号可用 |
3 | armeabi-v7a/liblamemp3.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 |
False
warning 二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用 |
False
warning 符号可用 |
4 | armeabi-v7a/libso.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 |
False
warning 二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用 |
False
warning 符号可用 |
文件分析
序号 | 问题 | 文件 |
---|
敏感权限分析
恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
其它常用权限 是已知恶意软件经常滥用的权限。
IP地理位置
恶意域名检测
域名 | 状态 | 中国境内 | 位置信息 | 解析 |
---|---|---|---|---|
er.dcloud.io |
安全 |
否 | 没有可用的地理位置信息。 |
|
m3w.cn |
安全 |
是 |
IP地址: 119.0.92.103 国家: China 地区: Guizhou 城市: Zunyi 查看: 高德地图 |
|
ask.dcloud.net.cn |
安全 |
是 |
IP地址: 58.221.30.105 国家: China 地区: Jiangsu 城市: Nantong 查看: 高德地图 |
|
webaddress.elided |
安全 |
否 | 没有可用的地理位置信息。 |
|
www.android.com |
安全 |
否 |
IP地址: 142.250.217.142 国家: United States of America 地区: California 城市: Mountain View 查看: Google 地图 |
|
er.dcloud.net.cn |
安全 |
是 |
IP地址: 43.142.131.213 国家: China 地区: Beijing 城市: Beijing 查看: 高德地图 |
|
lame.sf.net |
安全 |
否 |
IP地址: 104.18.34.154 国家: United States of America 地区: Texas 城市: Dallas 查看: Google 地图 |
|
手机号提取
URL链接分析
URL信息 | 源码文件 |
---|---|
https://quilljs.com/ https://quilljs.com https://service.dcloud.net.cn/uniapp/feedback.html |
自研引擎分析结果 |
192.168.1.1 |
com/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor.java |
192.168.1.1 |
com/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor.java |
192.168.1.1 |
com/open/net/client/impl/udp/bio/processor/UdpBioReadWriteProcessor.java |
192.168.1.1 |
com/open/net/client/impl/udp/nio/processor/UdpNioReadWriteProcessor.java |
http://webaddress.elided javascript:!function(){(window.__html5plus__&&__html5plus__.isready?__html5plus__:navigator.plus&&navigator.plus.isready?navigator.plus:window.plus http://www.android.com/ javascript:(function(){if(!((window.__html5plus__&&__html5plus__.isready)?__html5plus__:(navigator.plus&&navigator.plus.isready)?navigator.plus:window.plus)){window.__load__plus__&&window.__load__plus__();}var javascript:window.__neednotifynative__=true javascript:(function(){var http://localhost 4.5.4.2 https://er.dcloud.io/rv https://er.dcloud.net.cn/sc https://localhost javascript:settimeout(function(){location.__page__load__over__ data:image/png;base64 https://er.dcloud.io/sc https://m3w.cn/s/ data:image/.*;base64 4.5.4.1 javascript:(window.postmessage https://er.dcloud.net.cn/rv data:text/html,chromewebdata 192.168.1.1 |
自研引擎分析结果 |
http://lame.sf.net |
lib/armeabi-v7a/liblamemp3.so |
Firebase配置检测
邮箱地址提取
源码文件 | |
---|---|
xxx@email.elided |
自研引擎分析结果 |
第三方追踪器
名称 | 类别 | 网址 |
---|
敏感凭证泄露
活动列表
显示 38 个 activities
服务列表
显示 10 个 services
广播接收者列表
显示 1 个 receivers
内容提供者列表
显示 2 个 providers
第三方SDK
SDK名称 | 开发者 | 描述信息 |
---|---|---|
MSA SDK | 移动安全联盟 | 移动智能终端补充设备标识体系统一调用 SDK 由中国信息通信研究院泰尔终端实验室、移动安全联盟整合提供,知识产权归中国信息通信研究院所有。 |
Agora RTC SDK | Agora | 视频通话 SDK 可实现一对一单聊、多人群聊,同时具备纯语音通话和视频通话功能。 |
Fresco | Fresco 是一个用于管理图像及其使用的内存的 Android 库。 | |
C++ 共享库 | Android | 在 Android 应用中运行原生代码。 |
GIFLIB | GIFLIB | The GIFLIB project maintains the giflib service library, which has been pulling images out of GIFs since 1989. It is deployed everywhere you can think of and some places you probably can't - graphics applications and web browsers on multiple operating systems, game consoles, smartphones, and likely your ATM too. |
腾讯云短视频 SDK | Tencent | 腾讯云点播推出了短视频一站式解决方案,覆盖了视频生成、上传、处理、分发和播放在内的各个环节,帮助用户以最快速度实现短视频应用的上线。 |
android-gif-drawable | koral-- | android-gif-drawable 是在 Android 上显示动画 GIF 的绘制库。 |
腾讯云实时音视频 SDK | Tencent | 实时音视频(Tencent RTC)基于腾讯多年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。 |
Weex | Alibaba | Weex 致力于使开发者能基于通用跨平台的 Web 开发语言和开发经验,来构建 Android、iOS 和 Web 应用。简单来说,在集成了 WeexSDK 之后,你可以使用 JavaScript 语言和前端开发经验来开发移动应用。 |
File Provider | Android | FileProvider 是 ContentProvider 的特殊子类,它通过创建 content://Uri 代替 file:///Uri 以促进安全分享与应用程序关联的文件。 |
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……规则名称 | 描述信息 | 操作 |
---|---|---|
病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |