文件信息
文件名称 hlrnogje.cagidzjg.hacxm.apk文件大小 94.52MB
MD5 0d30e23dd3e52be9f11a866524452e18
SHA1 ced4514282cbbf784f51ca9b69736b67fd36e79c
SHA256 07d35068508ffcb6c463b7352927ca046eb084e45578305c6a75f8f393e202bc
病毒检测 恶意软件
文件信息
文件名称 hlrnogje.cagidzjg.hacxm.apk恶意软件家族信息
序号 | 属性 | 值 |
---|---|---|
1 | 恶意家族 | JiMaTongTrapTalk |
2 | 描述信息 | JiMaTongTrapTalk 是一款由南明离火平台追踪并命名的欺诈性应用程序,其核心基于 Telegram 构建。自 2019 年 7 月首次出现以来,该应用持续活跃,并通过多种手段实施诈骗行为。其外观和功能模仿合法通讯软件及成人内容应用,诱导用户下载并使用,在此过程中窃取用户的个人和财务信息。从技术角度看,JiMaTongTrapTalk 通过多个云服务提供商隐藏其 C&C(命令与控制)服务器的真实位置,并采用国内广泛使用的安全加固工具(如 360 加固),以规避安全检测机制。在国内,该应用已导致大量用户受到侵害,衍生出数百个变种,对网络环境的安全稳定性和用户合法权益构成了严重威胁。其危害性不容忽视,需引起高度警惕,并采取有效措施防止其进一步传播与侵害。 |
3 | C2服务器 |
|
4 | 凭证数据 | |
5 | 关联情报 |
证书信息
二进制文件已签名
v1 签名: True
v2 签名: True
v3 签名: True
v4 签名: False
主题: C=beijing, ST=beijing, L=beijing, O=jw1720586427532, OU=sj1720586427532, CN=wyna
签名算法: rsassa_pkcs1v15
有效期自: 2024-07-10 04:40:42+00:00
有效期至: 2074-06-28 04:40:42+00:00
发行人: C=beijing, ST=beijing, L=beijing, O=jw1720586427532, OU=sj1720586427532, CN=wyna
序列号: 0x51b5d071
哈希算法: sha512
证书MD5: 8fe7116df948f0bc818c532e600a8c60
证书SHA1: 608b8ea380c32de5bbaad951885d1782c4a7cc84
证书SHA256: bbd369d979718cc259e07e4c27cc3781f66d60b8aadd8a23eb4e50b45894ade0
证书SHA512: 21c8004e276cd5ecc8ac9a062f24ddb6df09a3751b8c443294d0d1e7fea6d47e467f770a37291abe88b041442792f3d7439a3860945797f5e32d113647e87470
公钥算法: rsa
密钥长度: 4096
指纹: 1cc7014a3d0cf332ee4c7bebfd50b563780d26c383472d6019685b6f4484d2ff
找到 1 个唯一证书
应用程序权限
证书安全分析
标题 | 严重程度 | 描述信息 |
---|---|---|
已签名应用 | 信息 | 应用程序使用代码签名证书进行签名 |
MANIFEST分析
序号 | 问题 | 严重程度 | 描述信息 | 操作 |
---|---|---|---|---|
1 |
应用程序已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。 | |
2 |
Service (org.telegram.messenger.GcmPushListenerService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
3 |
Service (org.telegram.messenger.GoogleVoiceClientService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
4 |
Activity (org.telegram.messenger.GoogleVoiceClientActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
5 |
Activity-Alias (org.telegram.messenger.DefaultIcon) 未被保护。 [android:exported=true] |
警告 | 发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
6 |
Activity-Alias (org.telegram.messenger.VintageIcon) 未被保护。 [android:exported=true] |
警告 | 发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
7 |
Activity-Alias (org.telegram.messenger.AquaIcon) 未被保护。 [android:exported=true] |
警告 | 发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
8 |
Activity-Alias (org.telegram.messenger.PremiumIcon) 未被保护。 [android:exported=true] |
警告 | 发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
9 |
Activity-Alias (org.telegram.messenger.TurboIcon) 未被保护。 [android:exported=true] |
警告 | 发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
10 |
Activity-Alias (org.telegram.messenger.NoxIcon) 未被保护。 [android:exported=true] |
警告 | 发现 Activity-Alias与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
11 |
Activity-Alias (org.telegram.ui.CallsActivity) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.CALL_PHONE [android:exported=true] |
警告 | 发现一个 Activity-Alias被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
12 |
Activity (org.telegram.ui.ShareActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
13 |
Activity (org.telegram.ui.ExternalActionActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
14 |
Activity (org.telegram.ui.ChatsWidgetConfigActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
15 |
Activity (org.telegram.ui.ContactsWidgetConfigActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
16 |
Activity (org.telegram.messenger.OpenChatReceiver) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
17 |
Activity设置了TaskAffinity属性 (org.telegram.ui.VoIPPermissionActivity) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
18 |
Activity设置了TaskAffinity属性 (org.telegram.ui.VoIPFeedbackActivity) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
19 |
Broadcast Receiver (org.telegram.messenger.SmsReceiver) 未被保护。 [android:exported=true] |
警告 | 发现 Broadcast Receiver与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
20 |
Service (org.telegram.messenger.AuthenticatorService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
21 |
Service (org.telegram.messenger.ContactsSyncAdapterService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
22 |
Service (org.telegram.messenger.BringAppForegroundService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
23 |
Service (org.telegram.messenger.NotificationsService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
24 |
Service (org.telegram.messenger.VideoEncodingService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
25 |
Service (org.telegram.messenger.ImportingService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
26 |
Service (org.telegram.messenger.LocationSharingService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
27 |
Service (org.telegram.messenger.MusicPlayerService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
28 |
Service (org.telegram.messenger.MusicBrowserService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
29 |
Service (org.telegram.messenger.voip.TelegramConnectionService) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.BIND_TELECOM_CONNECTION_SERVICE [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
30 |
Broadcast Receiver (org.telegram.messenger.RefererReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.INSTALL_PACKAGES [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
31 |
Content Provider (org.telegram.messenger.voip.CallNotificationSoundProvider) 未被保护。 [android:exported=true] |
警告 | 发现 Content Provider与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
32 |
Service (androidx.sharetarget.ChooserTargetServiceCompat) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.BIND_CHOOSER_TARGET_SERVICE [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
33 |
Broadcast Receiver (com.google.firebase.iid.FirebaseInstanceIdReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: com.google.android.c2dm.permission.SEND [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
34 |
Service (com.google.android.gms.auth.api.signin.RevocationBoundService) 受权限保护, 但是应该检查权限的保护级别。 Permission: com.google.android.gms.auth.api.signin.permission.REVOCATION_NOTIFICATION [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 |
可浏览的Activity组件
ACTIVITY | INTENT |
---|---|
org.telegram.ui.LaunchActivity |
Schemes:
http://,
https://,
jmt://,
dgu1wq://,
tg://,
Hosts: telegram.me, telegram.dog, t.me, Mime Types: image/*, video/*, text/plain, */*, vnd.android.cursor.item/vnd.org.telegram.messenger.android.profile, |
org.telegram.ui.ShareActivity |
Schemes:
tgb://,
|
网络通信安全
序号 | 范围 | 严重级别 | 描述 |
---|
API调用分析
安全漏洞检测
序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
---|---|---|---|---|---|
1 | 应用程序记录日志信息,不得记录敏感信息 | 信息 |
CWE: CWE-532: 通过日志文件的信息暴露
OWASP MASVS: MSTG-STORAGE-3 |
升级会员:解锁高级权限 | |
2 | 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
3 | 不安全的Web视图实现。可能存在WebView任意代码执行漏洞 | 警告 |
CWE: CWE-749: 暴露危险方法或函数
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 | |
4 | 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它 | 信息 |
OWASP MASVS: MSTG-STORAGE-10 |
升级会员:解锁高级权限 | |
5 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
6 | IP地址泄露 | 警告 |
CWE: CWE-200: 信息泄露
OWASP MASVS: MSTG-CODE-2 |
升级会员:解锁高级权限 | |
7 | 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等 | 警告 |
CWE: CWE-312: 明文存储敏感信息
OWASP Top 10: M9: Reverse Engineering OWASP MASVS: MSTG-STORAGE-14 |
升级会员:解锁高级权限 | |
8 | SHA-1是已知存在哈希冲突的弱哈希 | 警告 |
CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 | |
9 | MD5是已知存在哈希冲突的弱哈希 | 警告 |
CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 | |
10 | 可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息 | 警告 |
CWE: CWE-200: 信息泄露
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 | |
11 | 如果一个应用程序使用WebView.loadDataWithBaseURL方法来加载一个网页到WebView,那么这个应用程序可能会遭受跨站脚本攻击 | 高危 |
CWE: CWE-79: 在Web页面生成时对输入的转义处理不恰当('跨站脚本')
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-6 |
升级会员:解锁高级权限 | |
12 | 应用程序创建临时文件。敏感信息永远不应该被写进临时文件 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
13 | 此应用侦听剪贴板更改。一些恶意软件也会监听剪贴板更改 | 信息 |
OWASP MASVS: MSTG-PLATFORM-4 |
升级会员:解锁高级权限 | |
14 | 此应用程序使用Safety Net API。 | 安全 |
OWASP MASVS: MSTG-RESILIENCE-7 |
升级会员:解锁高级权限 |
Native库安全分析
序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
---|---|---|---|---|---|---|---|---|---|
1 | arm64-v8a/libbeaconid.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 符号被剥离 |
2 | arm64-v8a/libcloudclink-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 |
False
warning 二进制文件没有任何加固函数。加固函数提供了针对 glibc 的常见不安全函数(如 strcpy,gets 等)的缓冲区溢出检查。使用编译选项 -D_FORTIFY_SOURCE=2 来加固函数。这个检查对于 Dart/Flutter 库不适用 |
True
info 符号被剥离 |
3 | arm64-v8a/liblanguage_id_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 |
True
info 二进制文件有以下加固函数: ['__vsnprintf_chk'] |
True
info 符号被剥离 |
4 | arm64-v8a/libqmp.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 符号被剥离 |
5 | arm64-v8a/libtmessages.45.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 二进制文件有以下加固函数: ['__strlen_chk', '__FD_SET_chk', '__memcpy_chk', '__memset_chk', '__FD_CLR_chk', '__FD_ISSET_chk', '__vsnprintf_chk', '__memmove_chk', '__read_chk', '__strchr_chk'] |
True
info 符号被剥离 |
文件分析
序号 | 问题 | 文件 |
---|
行为分析
编号 | 行为 | 标签 | 文件 |
---|---|---|---|
00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
00072 | 将 HTTP 输入流写入文件 |
命令 网络 文件 |
升级会员:解锁高级权限 |
00089 | 连接到 URL 并接收来自服务器的输入流 |
命令 网络 |
升级会员:解锁高级权限 |
00094 | 连接到 URL 并从中读取数据 |
命令 网络 |
升级会员:解锁高级权限 |
00108 | 从给定的 URL 读取输入流 |
网络 命令 |
升级会员:解锁高级权限 |
00063 | 隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
00036 | 从 res/raw 目录获取资源文件 |
反射 |
升级会员:解锁高级权限 |
00013 | 读取文件并将其放入流中 |
文件 |
升级会员:解锁高级权限 |
00025 | 监视要执行的一般操作 |
反射 |
升级会员:解锁高级权限 |
00125 | 检查给定的文件路径是否存在 |
文件 |
升级会员:解锁高级权限 |
00015 | 将缓冲流(数据)放入 JSON 对象 |
文件 |
升级会员:解锁高级权限 |
00014 | 将文件读入流并将其放入 JSON 对象中 |
文件 |
升级会员:解锁高级权限 |
00004 | 获取文件名并将其放入 JSON 对象 |
文件 信息收集 |
升级会员:解锁高级权限 |
00012 | 读取数据并放入缓冲流 |
文件 |
升级会员:解锁高级权限 |
00056 | 修改语音音量 |
控制 |
升级会员:解锁高级权限 |
00204 | 获取默认铃声 |
信息收集 |
升级会员:解锁高级权限 |
00051 | 通过setData隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
00191 | 获取短信收件箱中的消息 |
短信 |
升级会员:解锁高级权限 |
00079 | 隐藏当前应用程序的图标 |
规避 |
升级会员:解锁高级权限 |
00065 | 获取SIM卡提供商的国家代码 |
信息收集 |
升级会员:解锁高级权限 |
00112 | 获取日历事件的日期 |
信息收集 日历 |
升级会员:解锁高级权限 |
00054 | 从文件安装其他APK |
反射 |
升级会员:解锁高级权限 |
00003 | 将压缩后的位图数据放入JSON对象中 |
相机 |
升级会员:解锁高级权限 |
00005 | 获取文件的绝对路径并将其放入 JSON 对象 |
文件 |
升级会员:解锁高级权限 |
00123 | 连接到远程服务器后将响应保存为 JSON |
网络 命令 |
升级会员:解锁高级权限 |
00163 | 创建新的 Socket 并连接到它 |
socket |
升级会员:解锁高级权限 |
00030 | 通过给定的 URL 连接到远程服务器 |
网络 |
升级会员:解锁高级权限 |
00109 | 连接到 URL 并获取响应代码 |
网络 命令 |
升级会员:解锁高级权限 |
00001 | 初始化位图对象并将数据(例如JPEG)压缩为位图对象 |
相机 |
升级会员:解锁高级权限 |
00080 | 将录制的音频/视频保存到文件 |
录制音视频 文件 |
升级会员:解锁高级权限 |
00101 | 初始化录音机 |
录制音视频 |
升级会员:解锁高级权限 |
00199 | 停止录音并释放录音资源 |
录制音视频 |
升级会员:解锁高级权限 |
00198 | 初始化录音机并开始录音 |
录制音视频 |
升级会员:解锁高级权限 |
00136 | 停止录音 |
录制音视频 命令 |
升级会员:解锁高级权限 |
00194 | 设置音源(MIC)和录制文件格式 |
录制音视频 |
升级会员:解锁高级权限 |
00090 | 设置录制的音频/视频文件格式 |
录制音视频 |
升级会员:解锁高级权限 |
00197 | 设置音频编码器并初始化录音机 |
录制音视频 |
升级会员:解锁高级权限 |
00138 | 设置音频源(MIC) |
录制音视频 |
升级会员:解锁高级权限 |
00196 | 设置录制文件格式和输出路径 |
录制音视频 文件 |
升级会员:解锁高级权限 |
00133 | 开始录音 |
录制音视频 命令 |
升级会员:解锁高级权限 |
00206 | 检查视图的文本是否包含给定的字符串 |
无障碍服务 |
升级会员:解锁高级权限 |
00096 | 连接到 URL 并设置请求方法 |
命令 网络 |
升级会员:解锁高级权限 |
00146 | 获取网络运营商名称和 IMSI |
电话服务 信息收集 |
升级会员:解锁高级权限 |
00078 | 获取网络运营商名称 |
信息收集 电话服务 |
升级会员:解锁高级权限 |
00038 | 查询电话号码 |
信息收集 |
升级会员:解锁高级权限 |
00117 | 获取 IMSI 和网络运营商名称 |
电话服务 信息收集 |
升级会员:解锁高级权限 |
00033 | 查询IMEI号 |
信息收集 |
升级会员:解锁高级权限 |
00067 | 查询IMSI号码 |
信息收集 |
升级会员:解锁高级权限 |
00189 | 获取短信内容 |
短信 |
升级会员:解锁高级权限 |
00188 | 获取短信地址 |
短信 |
升级会员:解锁高级权限 |
00011 | 从 URI 查询数据(SMS、CALLLOGS) |
短信 通话记录 信息收集 |
升级会员:解锁高级权限 |
00200 | 从联系人列表中查询数据 |
信息收集 联系人 |
升级会员:解锁高级权限 |
00187 | 查询 URI 并检查结果 |
信息收集 短信 通话记录 日历 |
升级会员:解锁高级权限 |
00201 | 从通话记录中查询数据 |
信息收集 通话记录 |
升级会员:解锁高级权限 |
00077 | 读取敏感数据(短信、通话记录等) |
信息收集 短信 通话记录 日历 |
升级会员:解锁高级权限 |
00075 | 获取设备的位置 |
信息收集 位置 |
升级会员:解锁高级权限 |
00137 | 获取设备的最后已知位置 |
位置 信息收集 |
升级会员:解锁高级权限 |
00115 | 获取设备的最后已知位置 |
信息收集 位置 |
升级会员:解锁高级权限 |
00052 | 删除内容 URI 指定的媒体(SMS、CALL_LOG、文件等) |
短信 |
升级会员:解锁高级权限 |
00104 | 检查给定路径是否是目录 |
文件 |
升级会员:解锁高级权限 |
00126 | 读取敏感数据(短信、通话记录等) |
信息收集 短信 通话记录 日历 |
升级会员:解锁高级权限 |
00102 | 将手机扬声器设置为打开 |
命令 |
升级会员:解锁高级权限 |
00208 | 捕获设备屏幕的内容 |
信息收集 屏幕 |
升级会员:解锁高级权限 |
00064 | 监控来电状态 |
控制 |
升级会员:解锁高级权限 |
00162 | 创建 InetSocketAddress 对象并连接到它 |
socket |
升级会员:解锁高级权限 |
00183 | 获取当前相机参数并更改设置 |
相机 |
升级会员:解锁高级权限 |
00002 | 打开相机并拍照 |
相机 |
升级会员:解锁高级权限 |
00195 | 设置录制文件的输出路径 |
录制音视频 文件 |
升级会员:解锁高级权限 |
00024 | Base64解码后写入文件 |
反射 文件 |
升级会员:解锁高级权限 |
00007 | Use absolute path of directory for the output media file path |
文件 |
升级会员:解锁高级权限 |
00121 | 创建目录 |
文件 命令 |
升级会员:解锁高级权限 |
00202 | 打电话 |
控制 |
升级会员:解锁高级权限 |
00203 | 将电话号码放入意图中 |
控制 |
升级会员:解锁高级权限 |
00053 | 监视给定内容 URI 标识的数据更改(SMS、MMS 等) |
短信 |
升级会员:解锁高级权限 |
敏感权限分析
恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
其它常用权限 是已知恶意软件经常滥用的权限。
IP地理位置
恶意域名检测
域名 | 状态 | 中国境内 | 位置信息 | 解析 |
---|---|---|---|---|
translations.telegram.org |
安全 |
否 |
IP地址: 149.154.167.99 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
ip.jmtim.cn |
安全 |
是 |
IP地址: 221.228.32.13 国家: 中国 地区: 江苏 城市: 无锡 查看: 高德地图 |
|
tun-cos-1258344701.file.myqcloud.com |
安全 |
是 |
IP地址: 180.97.228.88 国家: 中国 地区: 江苏 城市: 苏州 查看: 高德地图 |
|
www.ietf.org |
安全 |
否 |
IP地址: 104.16.44.99 国家: 美国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
tmessages2.firebaseio.com |
安全 |
否 |
IP地址: 149.154.167.99 国家: 美国 地区: 密苏里州 城市: 堪萨斯城 查看: Google 地图 |
|
player.vimeo.com |
安全 |
否 |
IP地址: 162.159.128.61 国家: 美国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
telegram.me |
安全 |
否 |
IP地址: 149.154.167.99 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
stripe.com |
安全 |
否 |
IP地址: 52.89.224.113 国家: 美国 地区: 俄勒冈 城市: 博德曼 查看: Google 地图 |
|
ss3.4sqi.net |
安全 |
否 |
IP地址: 151.101.130.132 国家: 美国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
fragment.com |
安全 |
否 |
IP地址: 104.16.44.99 国家: 美国 地区: 加利福尼亚 城市: 旧金山 查看: Google 地图 |
|
www.aparat.com |
安全 |
否 |
IP地址: 185.147.178.13 国家: 伊朗(伊斯兰共和国) 地区: 德黑兰 城市: 德黑兰 查看: Google 地图 |
|
crbug.com |
安全 |
否 |
IP地址: 216.239.32.29 国家: 美国 地区: 加利福尼亚 城市: 山景城 查看: Google 地图 |
|
usher.ttvnw.net |
安全 |
否 |
IP地址: 216.239.32.29 国家: 美国 地区: 加利福尼亚 城市: 洛杉矶 查看: Google 地图 |
|
api.stripe.com |
安全 |
否 |
IP地址: 149.154.167.99 国家: 美国 地区: 俄勒冈 城市: 博德曼 查看: Google 地图 |
|
messenger.telegram.org |
安全 |
否 |
IP地址: 149.154.167.99 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
aomediacodec.github.io |
安全 |
否 |
IP地址: 185.199.110.153 国家: 美国 地区: 宾夕法尼亚 城市: 加利福尼亚 查看: Google 地图 |
|
coub.com |
安全 |
否 |
IP地址: 95.213.253.85 国家: 俄罗斯联邦 地区: 桑克-彼得堡 城市: 圣彼得堡 查看: Google 地图 |
|
attheme.org |
安全 |
否 |
IP地址: 212.32.237.90 国家: 荷兰(王国) 地区: 北荷兰省 城市: 阿姆斯特丹 查看: Google 地图 |
|
desktop.telegram.org |
安全 |
否 |
IP地址: 149.154.167.99 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
telegram.org |
安全 |
否 |
IP地址: 149.154.167.99 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
t.me |
安全 |
否 |
IP地址: 149.154.167.99 国家: 大不列颠及北爱尔兰联合王国 地区: 英格兰 城市: 伦敦 查看: Google 地图 |
|
api.twitch.tv |
安全 |
否 |
IP地址: 18.65.25.109 国家: 美国 地区: 加利福尼亚 城市: 洛杉矶 查看: Google 地图 |
|
手机号提取
URL链接分析
URL信息 | 源码文件 |
---|---|
https://turing.captcha.qcloud.com/TCaptcha.js |
自研引擎-A |
https://stripe.com/docs/stripe.js |
com/stripe/android/Stripe.java |
1.192.191.208 140.246.91.79 59.80.54.91 125.74.8.107 171.15.112.158 203.3.115.180 121.204.201.122 36.138.227.31 36.212.125.31 120.49.71.93 117.24.6.15 110.42.8.215 125.124.129.161 1.194.237.166 202.181.124.93 http://180.188.18.171:8088/uploadfiles/2019/07/201907301107350403.jpg http://43.128.131.127:8088/uploadfiles/2019/07/201907301107350403.jpg 119.29.197.121 120.71.181.33 1.71.6.150 114.107.253.156 116.198.232.183 14.22.81.222 140.246.95.151 36.134.57.247 36.212.135.48 http://99.83.138.65:8088/uploadfiles/2019/07/201907301107350403.jpg 118.121.204.189 47.122.30.145 36.213.47.12 http://ip.jmtim.cn:9999 36.103.251.220 120.70.102.209 http://81.70.151.69:15000/api/uploadlog 36.133.39.62 124.225.201.202 127.0.0.1 121.204.194.190 36.133.39.114 117.88.69.92 114.67.107.109 http://45.251.9.173:8088/uploadfiles/2019/07/201907301107350403.jpg http://43.133.175.21:8088/uploadfiles/2019/07/201907301107350403.jpg 218.78.62.94 106.119.163.1 223.247.188.141 36.99.192.72 106.225.197.139 36.134.128.206 http://75.2.107.146:8088/uploadfiles/2019/07/201907301107350403.jpg 182.106.191.92 36.103.169.2 36.212.125.51 36.138.21.41 223.247.151.198 171.104.140.160 36.133.42.253 http://125.77.166.117:8088/uploadfiles/2019/07/201907301107350403.jpg 113.219.240.115 101.42.40.27 113.141.166.9 39.101.73.94 123.52.66.236 121.229.202.80 116.198.252.38 |
cos/MyCOSService.java |
https://t.me/socks? https://t.me/proxy? |
org/telegram/messenger/SharedConfig.java |
https://snowflake.qq.com/ola https://test.snowflake.qq.com/ola |
com/tencent/qimei/e/a.java |
https://telegram.org/dl |
org/telegram/messenger/ContactsController.java |
1.2.13.1 |
com/tencent/qimei/upload/BuildConfig.java |
https://play.google.com/store/account/subscriptions?sku=%s&package=%s |
org/telegram/messenger/BillingController.java |
https://tun-cos-1258344701.file.myqcloud.com/fp.js |
com/tencent/qimei/s/a.java |
https://tun-cos-1258344701.file.myqcloud.com/my.html https://tun-cos-1258344701.file.myqcloud.com/fp.js |
com/tencent/qimei/s/c.java |
10.0.2.15 |
org/telegram/messenger/EmuDetector.java |
https://api.stripe.com |
com/stripe/android/net/StripeApiHandler.java |
https://telegram.org/embed |
org/telegram/ui/ArticleViewer.java |
https://fragment.com https://fragment.com/username/ |
org/telegram/ui/ChangeUsernameActivity.java |
https://fragment.com/username/ |
org/telegram/ui/ChannelCreateActivity.java |
https://fragment.com/username/ |
org/telegram/ui/ChatEditTypeActivity.java |
https://t.me/botfather?start= |
org/telegram/ui/ChatEditActivity.java |
http://ip.jmtim.cn:9999 |
org/telegram/ui/JMTFastShotManager.java |
https://ss3.4sqi.net/img/categories_v2/ |
org/telegram/ui/LocationActivity.java |
https://t.me/joinchat/ https://t.me/+ |
org/telegram/ui/ManageLinksActivity.java |
https://telegram.org/deactivate?phone= |
org/telegram/ui/PassportActivity.java |
https://t.me/+%s |
org/telegram/ui/PrivacyControlActivity.java |
https://t.me/$ |
org/telegram/ui/PremiumPreviewFragment.java |
https://t.me/socks? https://t.me/proxy? |
org/telegram/ui/ProxySettingsActivity.java |
https://fragment.com |
org/telegram/ui/ProfileActivity.java |
https://telegram.org |
org/telegram/ui/ThemePreviewActivity.java |
https://attheme.org?slug= |
org/telegram/ui/ActionBar/Theme.java |
https://telegram.org |
org/telegram/ui/Cells/ThemePreviewMessagesCell.java |
https://messenger.telegram.org/ |
org/telegram/ui/Components/EmbedBottomSheet.java |
http://www.aparat.com/video/video/embed/vt/frame/showvideo/yes/videohash/%s https://player.vimeo.com/video/%s/config https://coub.com/api/v2/coubs/%s.json https://api.twitch.tv/api/channels/%s/access_token https://api.twitch.tv/kraken/streams/%s?stream_type=all https://usher.ttvnw.net/api/channel/hls/%s.m3u8?%s |
org/telegram/ui/Components/WebPlayerView.java |
https://play.google.com/store/apps/details?id=org.telegram.messenger |
org/telegram/ui/Components/Premium/PremiumNotAvailableBottomSheet.java |
https://telegram.org/faq#secret-chats https://telegram.org/faq https://tmessages2.firebaseio.com https://telegram.org/faq#passport https://telegram.org https://telegram.org/faq#q-i-have-a-new-phone-number-what-do-i-do https://translations.telegram.org/%1$s/emoji https://telegram.org/privacy https://desktop.telegram.org/ https://telegram.me/telegramtips |
自研引擎-S |
1.3.3.6 127.0.0.1 |
lib/arm64-v8a/libcloudclink-lib.so |
1.192.191.208 140.246.91.79 59.80.54.91 125.74.8.107 171.15.112.158 203.3.115.180 121.204.201.122 36.138.227.31 36.212.125.31 120.49.71.93 110.42.8.215 117.24.6.15 125.124.129.161 1.194.237.166 202.181.124.93 119.29.197.121 1.71.6.150 120.71.181.33 114.107.253.156 116.198.232.183 14.22.81.222 140.246.95.151 36.134.57.247 36.212.135.48 118.121.204.189 47.122.30.145 36.213.47.12 https://crbug.com/1053756 36.103.251.220 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01 120.70.102.209 124.225.201.202 36.133.39.62 127.0.0.1 36.133.39.114 117.88.69.92 28.8.8.8 114.67.107.109 223.247.188.141 106.119.163.1 218.78.62.94 36.99.192.72 https://aomediacodec.github.io/av1-rtp-spec/#dependency-descriptor-rtp-header-extension 106.225.197.139 36.134.128.206 182.106.191.92 171.104.140.160 36.103.169.2 36.138.21.41 223.247.151.198 36.212.125.51 36.133.42.253 113.219.240.115 101.42.40.27 113.141.166.9 121.204.194.190 123.52.66.236 121.229.202.80 39.101.73.94 116.198.252.38 |
lib/arm64-v8a/libtmessages.45.so |
Firebase配置检测
标题 | 严重程度 | 描述信息 |
---|---|---|
应用与Firebase数据库通信 | 信息 |
该应用与位于 https://tmessages2.firebaseio.com 的 Firebase 数据库进行通信 |
Firebase远程配置已禁用 | 安全 |
Firebase远程配置URL ( https://firebaseremoteconfig.googleapis.com/v1/projects/760348033671/namespaces/firebase:fetch?key=AIzaSyA-t0jLPjUt2FxrA8VPK2EiYHcYcboIR6k ) 已禁用。响应内容如下所示: 响应码是 403 |
邮箱地址提取
源码文件 | |
---|---|
support@stripe.com |
com/stripe/android/net/StripeApiHandler.java |
sms@telegram.org |
org/telegram/ui/LoginActivity.java |
sms@telegram.org |
org/telegram/ui/PassportActivity.java |
sms@stel.com |
自研引擎-S |
firebase-ml-android-sdk-releaser@otke9-20020a9d73090000b02900f41f914691.prod.google.com |
lib/arm64-v8a/liblanguage_id_jni.so |
第三方追踪器
名称 | 类别 | 网址 |
---|---|---|
Bugly | https://reports.exodus-privacy.eu.org/trackers/190 |
敏感凭证泄露
活动列表
显示 15 个 activities
服务列表
显示 30 个 services
广播接收者列表
显示 23 个 receivers
内容提供者列表
显示 6 个 providers
第三方SDK
SDK名称 | 开发者 | 描述信息 |
---|---|---|
腾讯灯塔 SDK | Tencent | 灯塔(beacon)SDK 由腾讯灯塔团队开发,用于移动应用统计分析。 |
Bugly | Tencent | 腾讯 Bugly,为移动开发者提供专业的异常上报和运营统计,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。 |
Golang | Go 是一种开源编程语言,可轻松构建简单,可靠和高效的软件。 | |
360 加固 | 360 | 360 加固保是基于 360 核心加密技术,给安卓应用进行深度加密、加壳保护的安全技术产品,可保护应用远离恶意破解、反编译、二次打包,内存抓取等威胁。 |
Qimei SDK | Tencent | 提供终端设备的唯一标识 ID 体系服务,能精准的区分识别每一台终端设备,拥有海量的跨应用用户 ID 关系积累,以及实时的 ID 找回能力,应用于常规运营,结算场景。 |
Google Play Billing | Google Play 结算服务可让您在 Android 上销售数字内容。本文档介绍了 Google Play 结算服务解决方案的基本构建基块。要决定如何实现特定的 Google Play 结算服务解决方案,您必须了解这些构建基块。 | |
Google Sign-In | 提供使用 Google 登录的 API。 | |
Google Play Service | 借助 Google Play 服务,您的应用可以利用由 Google 提供的最新功能,例如地图,Google+ 等,并通过 Google Play 商店以 APK 的形式分发自动平台更新。 这样一来,您的用户可以更快地接收更新,并且可以更轻松地集成 Google 必须提供的最新信息。 | |
XPopup | li-xiaojun | 内置几种了常用的弹窗,十几种良好的动画,将弹窗和动画的自定义设计的极其简单。 |
File Provider | Android | FileProvider 是 ContentProvider 的特殊子类,它通过创建 content://Uri 代替 file:///Uri 以促进安全分享与应用程序关联的文件。 |
Jetpack App Startup | App Startup 库提供了一种直接,高效的方法来在应用程序启动时初始化组件。库开发人员和应用程序开发人员都可以使用 App Startup 来简化启动顺序并显式设置初始化顺序。App Startup 允许您定义共享单个内容提供程序的组件初始化程序,而不必为需要初始化的每个组件定义单独的内容提供程序。这可以大大缩短应用启动时间。 | |
Firebase | Firebase 提供了分析、数据库、消息传递和崩溃报告等功能,可助您快速采取行动并专注于您的用户。 | |
Jetpack AppCompat | Allows access to new APIs on older API versions of the platform (many using Material Design). | |
Jetpack ShareTarget | 提供向后兼容性,可以将快捷方式用作直接共享目标。 |
文件列表
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……规则名称 | 描述信息 | 操作 |
---|---|---|
病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |