文件结构与资源列表
应用签名证书信息
APK已签名
v1 签名: True
v2 签名: True
v3 签名: False
v4 签名: False
主题: CN=Es
签名算法: rsassa_pkcs1v15
有效期自: 2017-12-04 02:01:47+00:00
有效期至: 2067-11-22 02:01:47+00:00
发行人: CN=Es
序列号: 0x7f74029d
哈希算法: sha256
证书MD5: 81669a11341b23c0f1a7c7ed7e8cfa6d
证书SHA1: be8e63015af85df6cf825dae4fc9f32fe219c610
证书SHA256: 5b173238ed8603d3fb3339619305256ce3a6255ca0e6680fd52f6a17c149488b
证书SHA512: 1f0c37a5bde6bc94dfac984f4e1c5df597c01fa746c87fe3cdbdd8f54e6620667d9f2b9bd0aa14623e91a23aa3d9acfe17fcde03057781692a7b151edbe5ee72
公钥算法: rsa
密钥长度: 2048
指纹: ad460d055e7cf8ce2a1dba3cc80667f73c64ac9d5ab18ae565eed4d7168974a9
共检测到 1 个唯一证书
权限声明与风险分级
权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
---|---|---|---|---|
android.permission.USE_FINGERPRINT | 允许使用指纹 | 此常量在 API 级别 28 中已弃用。应用程序应改为请求USE_BIOMETRIC | ||
android.permission.VIBRATE | 控制振动器 | 允许应用程序控制振动器,用于消息通知振动功能。 | ||
android.permission.MOUNT_UNMOUNT_FILESYSTEMS | 装载和卸载文件系统 | 允许应用程序装载和卸载可移动存储器的文件系统。 | 无关联代码 | |
android.permission.WRITE_EXTERNAL_STORAGE | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 | ||
android.permission.READ_EXTERNAL_STORAGE | 读取SD卡内容 | 允许应用程序从SD卡读取信息。 | ||
android.permission.CAMERA | 拍照和录制视频 | 允许应用程序拍摄照片和视频,且允许应用程序收集相机在任何时候拍到的图像。 | 无关联代码 | |
android.hardware.camera | 未知权限 | 来自 android 引用的未知权限。 | 无关联代码 | |
android.hardware.camera.autofocus | 未知权限 | 来自 android 引用的未知权限。 | 无关联代码 | |
android.permission.INTERNET | 完全互联网访问 | 允许应用程序创建网络套接字。 |
|
|
android.permission.RECORD_AUDIO | 获取录音权限 | 允许应用程序获取录音权限。 | 无关联代码 | |
android.permission.RESTART_PACKAGES | 重启进程 | 允许程序自己重启或重启其他程序 | 无关联代码 | |
android.permission.GET_TASKS | 检索当前运行的应用程序 | 允许应用程序检索有关当前和最近运行的任务的信息。恶意应用程序可借此发现有关其他应用程序的保密信息。 | ||
android.permission.WAKE_LOCK | 防止手机休眠 | 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。 | ||
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.READ_LOGS | 读取系统日志文件 | 允许应用程序从系统的各日志文件中读取信息。这样应用程序可以发现您的手机使用情况,这些信息还可能包含用户个人信息或保密信息,造成隐私数据泄露。 | 无关联代码 | |
android.permission.READ_PHONE_STATE | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 | ||
android.permission.SYSTEM_ALERT_WINDOW | 弹窗 | 允许应用程序弹窗。 恶意程序可以接管手机的整个屏幕。 |
|
|
android.permission.DOWNLOAD_WITHOUT_NOTIFICATION | 后台下载文件 | 这个权限是允许应用通过下载管理器下载文件,且不对用户进行任何提示。 | 无关联代码 | |
android.permission.REQUEST_INSTALL_PACKAGES | 允许安装应用程序 | Android8.0 以上系统允许安装未知来源应用程序权限。 | 无关联代码 | |
android.permission.BLUETOOTH | 创建蓝牙连接 | 允许应用程序查看或创建蓝牙连接。 |
|
|
android.permission.BLUETOOTH_ADMIN | 管理蓝牙 | 允许程序发现和配对新的蓝牙设备。 | ||
android.permission.RECEIVE_BOOT_COMPLETED | 开机自启 | 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。 | ||
getui.permission.GetuiService.esunny.zce.simulation | 未知权限 | 来自 android 引用的未知权限。 | 无关联代码 |
证书安全合规分析
标题 | 严重程度 | 描述信息 |
---|---|---|
已签名应用 | 信息 | 应用已使用代码签名证书进行签名。 |
Manifest 配置安全分析
序号 | 问题 | 严重程度 | 描述信息 | 操作 |
---|---|---|---|---|
1 |
应用已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用允许明文网络流量(如 HTTP、FTP 协议、DownloadManager、MediaPlayer 等)。API 级别 27 及以下默认启用,28 及以上默认禁用。明文流量缺乏机密性、完整性和真实性保护,攻击者可窃听或篡改传输数据。建议关闭明文流量,仅使用加密协议。 | |
2 |
应用数据允许备份 [android:allowBackup=true] |
警告 | 该标志允许通过 adb 工具备份应用数据。启用 USB 调试的用户可直接复制应用数据,存在数据泄露风险。 | |
3 | Activity(com.esunny.estar.MainActivity)易受 Android Task Hijacking/StrandHogg 攻击。 | 高危 | Activity 启动模式为 "singleTask" 时,恶意应用可将自身置于栈顶,导致任务劫持(StrandHogg 1.0),易被钓鱼攻击。建议将启动模式设为 "singleInstance" 或 taskAffinity 设为空(taskAffinity=""),或将 target SDK 版本(26) 升级至 28 及以上以获得平台级防护。 | |
4 | Activity (esunny.zce.simulation.wxapi.WXEntryActivity) 易受 StrandHogg 2.0 攻击 | 高危 | 检测到 Activity 存在 StrandHogg 2.0 任务劫持漏洞。攻击者可将恶意 Activity 置于易受攻击应用的任务栈顶部,使应用极易成为钓鱼攻击目标。可通过将启动模式设置为 "singleInstance" 并将 taskAffinity 设为空(taskAffinity=""),或将应用的 target SDK 版本(26)升级至 29 及以上,从平台层面修复该漏洞。 | |
5 |
Activity (esunny.zce.simulation.wxapi.WXEntryActivity) 未受保护。 [android:exported=true] |
警告 | 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。 | |
6 |
Broadcast Receiver (com.esunny.ui.util.EsDownloadManagerReceiver) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Broadcast Receiver 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Broadcast Receiver 被显式导出,存在安全风险。 | |
7 |
Broadcast Receiver (com.esunny.ui.util.EsNetworkConnectChangedReceiver) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Broadcast Receiver 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Broadcast Receiver 被显式导出,存在安全风险。 | |
8 |
Service (com.esunny.ui.common.server.DemoPushService) 未受保护。 [android:exported=true] |
警告 | 检测到 Service 已导出,未受任何权限保护,任意应用均可访问。 | |
9 | Activity(com.esunny.ui.common.setting.condition.EsTriggeredConditionalOrderActivity)易受 Android Task Hijacking/StrandHogg 攻击。 | 高危 | Activity 启动模式为 "singleTask" 时,恶意应用可将自身置于栈顶,导致任务劫持(StrandHogg 1.0),易被钓鱼攻击。建议将启动模式设为 "singleInstance" 或 taskAffinity 设为空(taskAffinity=""),或将 target SDK 版本(26) 升级至 28 及以上以获得平台级防护。 | |
10 | Activity(com.tencent.tauth.AuthActivity)易受 Android Task Hijacking/StrandHogg 攻击。 | 高危 | Activity 启动模式为 "singleTask" 时,恶意应用可将自身置于栈顶,导致任务劫持(StrandHogg 1.0),易被钓鱼攻击。建议将启动模式设为 "singleInstance" 或 taskAffinity 设为空(taskAffinity=""),或将 target SDK 版本(26) 升级至 28 及以上以获得平台级防护。 | |
11 |
Activity (com.tencent.tauth.AuthActivity) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Activity 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Activity 被显式导出,存在安全风险。 | |
12 | Activity (com.esunny.ui.wxapi.WXEntryActivity) 易受 StrandHogg 2.0 攻击 | 高危 | 检测到 Activity 存在 StrandHogg 2.0 任务劫持漏洞。攻击者可将恶意 Activity 置于易受攻击应用的任务栈顶部,使应用极易成为钓鱼攻击目标。可通过将启动模式设置为 "singleInstance" 并将 taskAffinity 设为空(taskAffinity=""),或将应用的 target SDK 版本(26)升级至 29 及以上,从平台层面修复该漏洞。 | |
13 |
Activity (com.esunny.ui.wxapi.WXEntryActivity) 未受保护。 [android:exported=true] |
警告 | 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。 | |
14 |
Broadcast Receiver (com.igexin.sdk.PushReceiver) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Broadcast Receiver 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Broadcast Receiver 被显式导出,存在安全风险。 | |
15 |
Activity 设置了 TaskAffinity 属性 (com.igexin.sdk.PushActivity) |
警告 | 设置 taskAffinity 后,其他应用可读取发送至该 Activity 的 Intent。为防止敏感信息泄露,建议保持默认 affinity(包名)。 | |
16 |
Activity 设置了 TaskAffinity 属性 (com.igexin.sdk.GActivity) |
警告 | 设置 taskAffinity 后,其他应用可读取发送至该 Activity 的 Intent。为防止敏感信息泄露,建议保持默认 affinity(包名)。 | |
17 | Activity (com.igexin.sdk.GActivity) 易受 StrandHogg 2.0 攻击 | 高危 | 检测到 Activity 存在 StrandHogg 2.0 任务劫持漏洞。攻击者可将恶意 Activity 置于易受攻击应用的任务栈顶部,使应用极易成为钓鱼攻击目标。可通过将启动模式设置为 "singleInstance" 并将 taskAffinity 设为空(taskAffinity=""),或将应用的 target SDK 版本(26)升级至 29 及以上,从平台层面修复该漏洞。 | |
18 |
Activity (com.igexin.sdk.GActivity) 未受保护。 [android:exported=true] |
警告 | 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。 |
可浏览 Activity 组件分析
ACTIVITY | INTENT |
---|---|
com.tencent.tauth.AuthActivity |
Schemes:
tencent1106900757://,
|
网络通信安全风险分析
序号 | 范围 | 严重级别 | 描述 |
---|
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 | 可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息 | 警告 |
CWE: CWE-200: 信息泄露
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 | |
5 | 如果一个应用程序使用WebView.loadDataWithBaseURL方法来加载一个网页到WebView,那么这个应用程序可能会遭受跨站脚本攻击 | 高危 |
CWE: CWE-79: 在Web页面生成时对输入的转义处理不恰当('跨站脚本')
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-6 |
升级会员:解锁高级权限 | |
6 | 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等 | 警告 |
CWE: CWE-312: 明文存储敏感信息
OWASP Top 10: M9: Reverse Engineering OWASP MASVS: MSTG-STORAGE-14 |
升级会员:解锁高级权限 | |
7 | 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库 | 警告 |
CWE: CWE-89: SQL命令中使用的特殊元素转义处理不恰当('SQL 注入')
OWASP Top 10: M7: Client Code Quality |
升级会员:解锁高级权限 | |
8 | IP地址泄露 | 警告 |
CWE: CWE-200: 信息泄露
OWASP MASVS: MSTG-CODE-2 |
升级会员:解锁高级权限 | |
9 | 此应用程序使用SQL Cipher。SQLCipher为sqlite数据库文件提供256位AES加密 | 信息 |
OWASP MASVS: MSTG-CRYPTO-1 |
升级会员:解锁高级权限 | |
10 | 应用程序使用带PKCS5/PKCS7填充的加密模式CBC。此配置容易受到填充oracle攻击。 | 高危 |
CWE: CWE-649: 依赖于混淆或加密安全相关输入而不进行完整性检查
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-3 |
升级会员:解锁高级权限 | |
11 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 |
Native库安全分析
序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
---|---|---|---|---|---|---|---|---|---|
1 | armeabi-v7a/libclientencode.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 | armeabi-v7a/libclientencode_wrap.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
动态共享对象 (DSO)
info 共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。 |
False
high 这个二进制文件没有在栈上添加栈哨兵值。栈哨兵是用于检测和防止攻击者覆盖返回地址的一种技术。使用选项-fstack-protector-all来启用栈哨兵。这对于Dart/Flutter库不适用,除非使用了Dart FFI |
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 | armeabi-v7a/libdeepsupervise.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 符号被剥离 |
4 | armeabi-v7a/libJniRsaBase64Lib.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 | armeabi-v7a/libJNISample.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
动态共享对象 (DSO)
info 共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。 |
False
high 这个二进制文件没有在栈上添加栈哨兵值。栈哨兵是用于检测和防止攻击者覆盖返回地址的一种技术。使用选项-fstack-protector-all来启用栈哨兵。这对于Dart/Flutter库不适用,除非使用了Dart FFI |
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 符号被剥离 |
6 | armeabi-v7a/libkcy.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
动态共享对象 (DSO)
info 共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。 |
False
high 这个二进制文件没有在栈上添加栈哨兵值。栈哨兵是用于检测和防止攻击者覆盖返回地址的一种技术。使用选项-fstack-protector-all来启用栈哨兵。这对于Dart/Flutter库不适用,除非使用了Dart FFI |
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 符号被剥离 |
7 | armeabi-v7a/libkcy_wrap.so | True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
动态共享对象 (DSO)
info 共享库是使用 -fPIC 标志构建的,该标志启用与地址无关的代码。这使得面向返回的编程 (ROP) 攻击更难可靠地执行。 |
False
high 这个二进制文件没有在栈上添加栈哨兵值。栈哨兵是用于检测和防止攻击者覆盖返回地址的一种技术。使用选项-fstack-protector-all来启用栈哨兵。这对于Dart/Flutter库不适用,除非使用了Dart FFI |
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 符号被剥离 |
8 | armeabi-v7a/libStarMobileAndroidApi.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 符号被剥离 |
文件分析
序号 | 问题 | 文件 |
---|---|---|
1 | 检测到应用内硬编码的证书或密钥文件。 |
assets/default.crt |
行为分析
编号 | 行为 | 标签 | 文件 |
---|---|---|---|
00038 | 查询电话号码 |
信息收集 |
升级会员:解锁高级权限 |
00130 | 获取当前WIFI信息 |
WiFi 信息收集 |
升级会员:解锁高级权限 |
00033 | 查询IMEI号 |
信息收集 |
升级会员:解锁高级权限 |
00066 | 查询ICCID号码 |
信息收集 |
升级会员:解锁高级权限 |
00134 | 获取当前WiFi IP地址 |
WiFi 信息收集 |
升级会员:解锁高级权限 |
00067 | 查询IMSI号码 |
信息收集 |
升级会员:解锁高级权限 |
00089 | 连接到 URL 并接收来自服务器的输入流 |
命令 网络 |
升级会员:解锁高级权限 |
00063 | 隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
00177 | 检查是否授予权限并请求 |
权限 |
升级会员:解锁高级权限 |
00191 | 获取短信收件箱中的消息 |
短信 |
升级会员:解锁高级权限 |
00036 | 从 res/raw 目录获取资源文件 |
反射 |
升级会员:解锁高级权限 |
00162 | 创建 InetSocketAddress 对象并连接到它 |
socket |
升级会员:解锁高级权限 |
00163 | 创建新的 Socket 并连接到它 |
socket |
升级会员:解锁高级权限 |
00076 | 获取当前WiFi信息并放入JSON中 |
信息收集 WiFi |
升级会员:解锁高级权限 |
00054 | 从文件安装其他APK |
反射 |
升级会员:解锁高级权限 |
00091 | 从广播中检索数据 |
信息收集 |
升级会员:解锁高级权限 |
00075 | 获取设备的位置 |
信息收集 位置 |
升级会员:解锁高级权限 |
00137 | 获取设备的最后已知位置 |
位置 信息收集 |
升级会员:解锁高级权限 |
00115 | 获取设备的最后已知位置 |
信息收集 位置 |
升级会员:解锁高级权限 |
00062 | 查询WiFi信息和WiFi Mac地址 |
WiFi 信息收集 |
升级会员:解锁高级权限 |
00082 | 获取当前WiFi MAC地址 |
信息收集 WiFi |
升级会员:解锁高级权限 |
00013 | 读取文件并将其放入流中 |
文件 |
升级会员:解锁高级权限 |
00012 | 读取数据并放入缓冲流 |
文件 |
升级会员:解锁高级权限 |
00096 | 连接到 URL 并设置请求方法 |
命令 网络 |
升级会员:解锁高级权限 |
00072 | 将 HTTP 输入流写入文件 |
命令 网络 文件 |
升级会员:解锁高级权限 |
00030 | 通过给定的 URL 连接到远程服务器 |
网络 |
升级会员:解锁高级权限 |
00094 | 连接到 URL 并从中读取数据 |
命令 网络 |
升级会员:解锁高级权限 |
00108 | 从给定的 URL 读取输入流 |
网络 命令 |
升级会员:解锁高级权限 |
敏感权限分析
恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
其它常用权限 是已知恶意软件经常滥用的权限。
IP地理位置
恶意域名检测
域名 | 状态 | 中国境内 | 位置信息 | 解析 |
---|---|---|---|---|
investorservice.cfmmc.com |
安全 |
是 |
IP地址: 124.126.25.9 国家: 中国 地区: 北京市 城市: 金融街 查看: 高德地图 |
|
news.epolestar.xyz |
安全 |
是 |
IP地址: 61.163.80.198 国家: 中国 地区: 河南 城市: 郑州 查看: 高德地图 |
|
edu.czce.com.cn |
安全 |
是 |
IP地址: 61.163.80.198 国家: 中国 地区: 河南 城市: 郑州 查看: 高德地图 |
|
www.epolestar.xyz |
安全 |
是 |
IP地址: 61.163.80.198 国家: 中国 地区: 河南 城市: 郑州 查看: 高德地图 |
|
pay.epolestar.xyz |
安全 |
否 |
IP地址: 35.84.155.203 国家: 美国 地区: 俄勒冈 城市: 波特兰 查看: Google 地图 |
|
zdu.epolestar.info |
安全 |
否 | 没有可用的地理位置信息。 |
|
download.epolestar.xyz |
安全 |
是 |
IP地址: 61.163.80.198 国家: 中国 地区: 河南 城市: 郑州 查看: 高德地图 |
|
手机号提取
URL链接分析
URL信息 | 源码文件 |
---|---|
https://g.alicdn.com/thx/cube/1.3.2/cube.min.css https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834 https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834 http://www.idangero.us http://news.epolestar.xyz/disclaimer/CHS/index.html?language=0&theme=0&packageNo=0 https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834 http://dabblet.com http://www.idangero.us/framework7 https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834 https://a1.alicdn.com/oss/uploads/2018/12/26/a3f714d0-08e6-11e9-8a15-ebf944d7534c.js https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=531263 https://prismjs.com/download.html https://gtms04.alicdn.com/tps/i4/TB1_oz6GVXXXXaFXpXXJDFnIXXX-64-64.ico https://github.com/ftlabs/fastclick https://a1.alicdn.com/oss/uploads/2018/12/26/7bfddb60-08e8-11e9-9b04-53e73bb6408b.js http://labnote.beedesk.com/click-scroll-and-pseudo-active-on-mobile-webk https://www.iconfont.cn http://news.epolestar.xyz/disclaimer/CHS/index.html?language=0&theme=1&packageNo=000735 |
自研引擎-A |
http://www.epolestar.xyz/updatehistoryestar.html?language=%d&theme=%d&type=1 www.epolestar.xyz |
com/esunny/ui/common/setting/about/EsAboutActivity.java |
http://news.epolestar.xyz/newsh5/chs/detail.html?newsid=%d&theme=%d |
com/esunny/ui/common/news/EsNewsDetailActivity.java |
javascript:hidechecklist |
com/esunny/ui/common/activity/EsDisclaimerActivity.java |
http://www.epolestar.xyz |
com/esunny/data/api/EsBaseApi.java |
http://news.epolestar.xyz/newsh5/chs/gettags.cgi http://news.epolestar.xyz/newsh5/chs/gettagnews.cgi http://news.epolestar.xyz/pc/chs/client/getcontent.cgi http://news.epolestar.xyz/newsh5/chs/getclass.cgi http://118.25.173.30:5000/index.wsgi |
com/esunny/data/api/EsWebApi.java |
http://download.epolestar.xyz/android/phoneimg.php?packageno=%s&height=%d&width=%d http://pay.epolestar.xyz/phone/find.html?language=%d&theme=%d https://edu.czce.com.cn/ http://news.epolestar.xyz/info.html http://news.epolestar.xyz/authority/index.html?language=%d https://investorservice.cfmmc.com/ http://pay.epolestar.xyz/phone/register.html?language=%d&theme=%d http://news.epolestar.xyz/newsh5/chs/detail.html?newsid=%s&theme=%d http://zdu.epolestar.info/statement?userno=%s&date=%s http://news.epolestar.xyz/risk.html http://news.epolestar.xyz/disclaimer/index.html?language=%d&theme=%d&packageno=%s http://news.epolestar.xyz/newsh5/index.html?language=%d&theme=%d&classid=%d&packageno=%s&hostname=%s&macaddr=%s&localip=%s&localport=%s&productinfo=%s&productversion=%s |
com/esunny/ui/util/EsWebUrlData.java |
106.54.250.26 49.234.36.124 152.136.91.140 119.28.15.59 122.51.51.243 140.143.70.16 210.176.173.34 47.91.200.66 39.108.49.124 188.131.234.20 101.132.73.33 193.112.81.61 |
com/esunny/database/AddressDatabaseHelper.java |
139.219.227.220 139.219.106.119 42.159.199.134 40.125.204.255 58.246.206.146 |
lib/armeabi-v7a/libStarMobileAndroidApi.so |
Firebase配置检测
邮箱地址提取
源码文件 | |
---|---|
6h@fo.lwft |
lib/armeabi-v7a/libkcy_wrap.so |
第三方追踪器
名称 | 类别 | 网址 |
---|---|---|
Bugly | https://reports.exodus-privacy.eu.org/trackers/190 | |
Tencent Stats | Analytics | https://reports.exodus-privacy.eu.org/trackers/116 |
敏感凭证泄露
活动列表
显示所有 79 个 activities
广播接收者列表
显示 3 个 receivers
内容提供者列表
显示 2 个 providers
第三方SDK
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……规则名称 | 描述信息 | 操作 |
---|---|---|
病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |