页面标题
本平台专为移动应用安全风险研究与合规评估设计,严禁用于任何非法用途。 如有疑问或建议,欢迎加入微信群交流。
应用基础信息
文件基本信息
应用基础信息
Google Play 应用市场信息
关于此应用
组件导出状态统计
文件结构与资源列表
应用签名证书信息
二进制文件已签名
v1 签名: False
v2 签名: True
v3 签名: True
v4 签名: False
主题: C=US, ST=California, L=Mountain View, O=Google Inc., OU=Android, CN=Android
签名算法: rsassa_pkcs1v15
有效期自: 2023-02-20 06:47:28+00:00
有效期至: 2053-02-20 06:47:28+00:00
发行人: C=US, ST=California, L=Mountain View, O=Google Inc., OU=Android, CN=Android
序列号: 0x1e8cc75e2de05c1624b5c768c9d72b2af3ae4193
哈希算法: sha256
证书MD5: 9a9dd43029861ff97aa9b0c4e1dd1884
证书SHA1: ceacdaf5a71280c0e4e4958d0b4c0141157bd2f1
证书SHA256: f79d71c3cd88c85217ba76d34bd621f531430502bc1705be807c1bd415c63e07
证书SHA512: 27823e279ceb26458fe6b9606faf1a97a8cd3b9f7d852f20c16628a1097eac64aefd428b5ad6537b39be98fb6ff1c0d64bf0648172cd0d885378fdc90a494182
公钥算法: rsa
密钥长度: 4096
指纹: fa226036b6ee2252d91c1928d5bf0d09ec16838566fbafa96ffd6c682a7e7ced
找到 1 个唯一证书
证书安全分析
0
0
1
| 标题 | 严重程度 | 描述信息 |
|---|---|---|
| 已签名应用 | 信息 | 应用程序使用代码签名证书进行签名 |
权限声明与风险分级
| 权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
|---|---|---|---|---|
| android.permission.WRITE_EXTERNAL_STORAGE | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 |
|
|
| android.permission.READ_PHONE_STATE | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 | 无 | |
| android.permission.READ_EXTERNAL_STORAGE | 读取SD卡内容 | 允许应用程序从SD卡读取信息。 |
|
|
| android.permission.READ_MEDIA_VISUAL_USER_SELECTED | 允许从外部存储读取用户选择的图像或视频文件 | 允许应用程序从用户通过权限提示照片选择器选择的外部存储中读取图像或视频文件。应用程序可以检查此权限以验证用户是否决定使用照片选择器,而不是授予对 READ_MEDIA_IMAGES 或 READ_MEDIA_VIDEO 的访问权限。它不会阻止应用程序手动访问标准照片选择器。应与 READ_MEDIA_IMAGES 和/或 READ_MEDIA_VIDEO 一起请求此权限,具体取决于所需的媒体类型。 | 无 | |
| android.permission.INTERNET | 完全互联网访问 | 允许应用程序创建网络套接字。 |
|
|
| android.permission.ACCESS_NETWORK_STATE | 获取网络状态 | 允许应用程序查看所有网络的状态。 | ||
| com.huawei.android.launcher.permission.CHANGE_BADGE | 在应用程序上显示通知计数 | 在华为手机的应用程序启动图标上显示通知计数或徽章。 | 无 | |
| com.vivo.notification.permission.BADGE_ICON | 桌面图标角标 | vivo平台桌面图标角标,接入vivo平台后需要用户手动开启,开启完成后收到新消息时,在已安装的应用桌面图标右上角显示“数字角标”。 | 无 | |
| android.permission.CAMERA | 拍照和录制视频 | 允许应用程序拍摄照片和视频,且允许应用程序收集相机在任何时候拍到的图像。 | 无 | |
| com.sec.android.provider.badge.permission.READ | 在应用程序上显示通知计数 | 在三星手机的应用程序启动图标上显示通知计数或徽章。 | 无 | |
| com.sec.android.provider.badge.permission.WRITE | 在应用程序上显示通知计数 | 在三星手机的应用程序启动图标上显示通知计数或徽章。 | 无 | |
| android.permission.ACCESS_WIFI_STATE | 查看Wi-Fi状态 | 允许应用程序查看有关Wi-Fi状态的信息。 | ||
| android.permission.REORDER_TASKS | 对正在运行的应用程序重新排序 | 允许应用程序将任务移至前端和后台。恶意应用程序可借此强行进入前端,而不受您的控制。 | 无 | |
| com.epever.epeverApp.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION | 未知权限 | 来自 android 引用的未知权限。 | 无 | |
| android.permission.ACCESS_COARSE_LOCATION | 获取粗略位置 | 通过WiFi或移动基站的方式获取用户粗略的经纬度信息,定位精度大概误差在30~1500米。恶意程序可以用它来确定您的大概位置。 | 无 | |
| android.permission.ACCESS_FINE_LOCATION | 获取精确位置 | 通过GPS芯片接收卫星的定位信息,定位精度达10米以内。恶意程序可以用它来确定您所在的位置。 | 无 | |
| android.permission.CHANGE_NETWORK_STATE | 改变网络连通性 | 允许应用程序改变网络连通性。 | 无 | |
| android.permission.CHANGE_WIFI_STATE | 改变Wi-Fi状态 | 允许应用程序改变Wi-Fi状态。 | ||
| android.permission.FLASHLIGHT | 控制闪光灯 | 允许应用程序控制闪光灯。 | 无 | |
| android.permission.WAKE_LOCK | 防止手机休眠 | 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。 | 无 | |
| android.permission.BLUETOOTH_ADMIN | 管理蓝牙 | 允许程序发现和配对新的蓝牙设备。 | 无 | |
| android.permission.BLUETOOTH | 创建蓝牙连接 | 允许应用程序查看或创建蓝牙连接。 | ||
| android.permission.BLUETOOTH_SCAN | 新蓝牙运行时权限 | Android 12 系统引入了新的运行时权限,需要能够发现和配对附近的蓝牙设备。 | 无 | |
| android.permission.BLUETOOTH_CONNECT | 新蓝牙运行时权限 | Android 12 系统引入了新的运行时权限,需要能够连接到配对的蓝牙设备。 | 无 | |
| android.permission.VIBRATE | 控制振动器 | 允许应用程序控制振动器,用于消息通知振动功能。 | 无 |
Manifest 配置安全分析
0
5
0
0
| 序号 | 问题 | 严重程度 | 描述信息 | 操作 |
|---|---|---|---|---|
| 1 |
应用程序已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。 | |
| 2 |
Activity (androidx.test.core.app.InstrumentationActivityInvoker$BootstrapActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
| 3 |
Activity (androidx.test.core.app.InstrumentationActivityInvoker$EmptyActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
| 4 |
Activity (androidx.test.core.app.InstrumentationActivityInvoker$EmptyFloatingActivity) 未被保护。 [android:exported=true] |
警告 | 发现 Activity与设备上的其他应用程序共享,因此可被设备上的任何其他应用程序访问。 | |
| 5 |
Broadcast Receiver (androidx.profileinstaller.ProfileInstallReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.DUMP [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 |
可浏览 Activity 组件分析
| ACTIVITY | INTENT |
|---|
网络通信安全风险分析
| 序号 | 范围 | 严重级别 | 描述 |
|---|
API调用分析
安全漏洞检测
0
5
1
2
0
| 序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
|---|---|---|---|---|---|
| 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 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
| 4 | 此应用程序使用SSL Pinning 来检测或防止安全通信通道中的MITM攻击 | 安全 |
OWASP MASVS: MSTG-NETWORK-4 |
升级会员:解锁高级权限 | |
| 5 | 此应用程序可能具有Root检测功能 | 安全 |
OWASP MASVS: MSTG-RESILIENCE-1 |
升级会员:解锁高级权限 | |
| 6 | 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等 | 警告 |
CWE: CWE-312: 明文存储敏感信息
OWASP Top 10: M9: Reverse Engineering OWASP MASVS: MSTG-STORAGE-14 |
升级会员:解锁高级权限 | |
| 7 | IP地址泄露 | 警告 |
CWE: CWE-200: 信息泄露
OWASP MASVS: MSTG-CODE-2 |
升级会员:解锁高级权限 | |
| 8 | 应用程序创建临时文件。敏感信息永远不应该被写进临时文件 | 警告 |
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(裁剪符号表) |
|---|
文件分析
| 序号 | 问题 | 文件 |
|---|
行为分析
| 编号 | 行为 | 标签 | 文件 |
|---|---|---|---|
| 00013 | 读取文件并将其放入流中 |
文件 |
升级会员:解锁高级权限 |
| 00191 | 获取短信收件箱中的消息 |
短信 |
升级会员:解锁高级权限 |
| 00036 | 从 res/raw 目录获取资源文件 |
反射 |
升级会员:解锁高级权限 |
| 00012 | 读取数据并放入缓冲流 |
文件 |
升级会员:解锁高级权限 |
| 00063 | 隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
| 00162 | 创建 InetSocketAddress 对象并连接到它 |
socket |
升级会员:解锁高级权限 |
| 00163 | 创建新的 Socket 并连接到它 |
socket |
升级会员:解锁高级权限 |
| 00051 | 通过setData隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
| 00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
| 00042 | 查询WiFi BSSID及扫描结果 |
信息收集 WiFi |
升级会员:解锁高级权限 |
| 00058 | 连接到特定的WIFI网络 |
WiFi 控制 |
升级会员:解锁高级权限 |
| 00130 | 获取当前WIFI信息 |
WiFi 信息收集 |
升级会员:解锁高级权限 |
| 00139 | 获取当前WiFi id |
信息收集 WiFi |
升级会员:解锁高级权限 |
| 00089 | 连接到 URL 并接收来自服务器的输入流 |
命令 网络 |
升级会员:解锁高级权限 |
| 00109 | 连接到 URL 并获取响应代码 |
网络 命令 |
升级会员:解锁高级权限 |
IP地理位置
恶意域名检测
手机号提取
URL链接分析
| URL信息 | 源码文件 |
|---|---|
|
https://momentjs.com/timezone/docs https://play.google.com/store/apps/details?id https://hub.usr.cn:7100 https://hncomm.epsolarpv.com:7100 https://www.mapbox.com/api-documentation https://github.com/cujojs/when/blob/master/docs/es6-promise-shim.md https://sg.mysolarguardian.com:7100 http://momentjs.com/timezone/docs https://www.mapbox.com/mapbox-gl-js/api https://github.com/mapbox/mapbox-gl-js/issues/new?assignees=&labels=&template=Bug_report.mdnand https://service.dcloud.net.cn/uniapp/feedback.html https://api.next.bspapp.com https://gl.mysolarguardian.com/usr-draw https://sj.qq.com/appdetail/com.epever.epeverApp https://docs.mapbox.com/mapbox-gl-js/style-spec/expressions https://api.mapbox.com https://api.mapbox.cn https://api.bspapp.com http://hncloud.epsolarpv.com/uploads http://underscorejs.org/LICENSE https://bit.ly/2ZqJzkp https://mapbox.com/api-documentation https://events.mapbox.cn/events/v2 https://feross.org https://account.mapbox.com https://github.com/mapbox/mapbox-gl-js/issues/2907 https://hncloud.epsolarpv.com/usr-draw https://lodash.com https://docs.mapbox.com/mapbox-gl-js/guides/install http://momentjs.com/guides https://github.com/mapbox/mapbox-gl-js/issues/11609 https://feross.org/opensource https://hncloudapi.epsolarpv.com/usrCloud/upload/uploadAppGeneralFile https://gl.mysolarguardian.com/uploads https://www.mapbox.com http://192.168.0.47:18081/repository/npm-internal https://api.mysolarguardian.com/usrCloud https://hncloudapi.epsolarpv.com/usrCloud https://lodash.com/license https://openjsf.org http://gitlab.usr.cn/usrcloud/jssdk.git https://github.com/MikeMcl/decimal.js https://events.mapbox.com/events/v2 http://feross.org https://apps.mapbox.com/feedback https://img-cdn-qiniu.dcloud.net.cn/uniapp/doc/github.svg |
自研引擎-A |
Firebase配置检测
邮箱地址提取
第三方追踪器
| 名称 | 类别 | 网址 |
|---|
敏感凭证泄露
已显示 7 个secrets
1、 DCLOUD的 "APPID" : "__UNI__7C5A74D"
2、 DCLOUD的 "AD_ID" : "125306200604"
3、 DCLOUD的 "CHANNEL" : "google"
4、 DCLOUD的 "ApplicationId" : "com.epever.epeverApp"
5、 DCLOUD的 "DCLOUD_STREAMAPP_CHANNEL" : "com.epever.epeverApp|__UNI__7C5A74D|125306200604|google"
6、 "dcloud_permissions_reauthorization" : "reauthorize"
7、 1a86f7dea1c3a293dd355d6453a0d1308
活动列表
显示 14 个 activities
服务列表
显示 1 个 services
广播接收者列表
显示 2 个 receivers
内容提供者列表
第三方SDK
| SDK名称 | 开发者 | 描述信息 |
|---|---|---|
| Jetpack Test | 在 Android 中进行测试。 | |
| File Provider | Android | FileProvider 是 ContentProvider 的特殊子类,它通过创建 content://Uri 代替 file:///Uri 以促进安全分享与应用程序关联的文件。 |
| Jetpack App Startup | App Startup 库提供了一种直接,高效的方法来在应用程序启动时初始化组件。库开发人员和应用程序开发人员都可以使用 App Startup 来简化启动顺序并显式设置初始化顺序。App Startup 允许您定义共享单个内容提供程序的组件初始化程序,而不必为需要初始化的每个组件定义单独的内容提供程序。这可以大大缩短应用启动时间。 | |
| Jetpack Media | 与其他应用共享媒体内容和控件。已被 media2 取代。 | |
| Jetpack ProfileInstaller | 让库能够提前预填充要由 ART 读取的编译轨迹。 | |
| Jetpack AppCompat | Allows access to new APIs on older API versions of the platform (many using Material Design). |
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……| 规则名称 | 描述信息 | 操作 |
|---|---|---|
| 病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
| 漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
| 隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
| 密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
| Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |