页面标题
本平台专为移动应用安全风险研究与合规评估设计,严禁用于任何非法用途。 如有疑问或建议,欢迎加入微信群交流。
应用基础信息
文件基本信息
应用基础信息
组件导出状态统计
文件结构与资源列表
应用签名证书信息
二进制文件已签名
v1 签名: True
v2 签名: True
v3 签名: True
v4 签名: False
主题: C=inject, ST=inject, L=inject, O=inject, OU=inject, CN=inject.keystore
签名算法: rsassa_pkcs1v15
有效期自: 2019-10-11 02:39:57+00:00
有效期至: 2841-02-23 02:39:57+00:00
发行人: C=inject, ST=inject, L=inject, O=inject, OU=inject, CN=inject.keystore
序列号: 0x47f931c3
哈希算法: sha256
证书MD5: 64843786c6ada15ca4254f4da77e4978
证书SHA1: b2e643d00042e8e23481794e88eedd3966c65dfa
证书SHA256: 28afa96de62296ef3b7598b27d00b673920d3e0bf5fad9c95ad4ef8de5d8df99
证书SHA512: 2bcfcb9c6759eb8689d05d7f2393725c1ebea61bf8c4559c9057dc654ad28c1c776ddbe55a6f8a6af71968f2883555e7a74e6c588854a5a2c275ddb4cf0536d2
公钥算法: rsa
密钥长度: 1024
指纹: 61cc7d71417395a5265a787e508b72c4fdc6d6d0107c97d17221206671ae528f
找到 1 个唯一证书
证书安全分析
0
1
1
| 标题 | 严重程度 | 描述信息 |
|---|---|---|
| 已签名应用 | 信息 | 应用程序使用代码签名证书进行签名 |
权限声明与风险分级
| 权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
|---|---|---|---|---|
| android.permission.INTERNET | 完全互联网访问 | 允许应用程序创建网络套接字。 |
|
|
| android.permission.WRITE_EXTERNAL_STORAGE | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 |
|
|
| android.permission.SYSTEM_ALERT_WINDOW | 弹窗 | 允许应用程序弹窗。 恶意程序可以接管手机的整个屏幕。 | ||
| android.permission.READ_EXTERNAL_STORAGE | 读取SD卡内容 | 允许应用程序从SD卡读取信息。 | ||
| android.permission.MANAGE_EXTERNAL_STORAGE | 文件列表访问权限 | Android11新增权限,读取本地文件,如简历,聊天图片。 | 无 | |
| android.permission.REQUEST_INSTALL_PACKAGES | 允许安装应用程序 | Android8.0 以上系统允许安装未知来源应用程序权限。 | 无 | |
| android.permission.QUERY_ALL_PACKAGES | 获取已安装应用程序列表 | Android 11引入与包可见性相关的权限,允许查询设备上的任何普通应用程序,而不考虑清单声明。 | 无 | |
| moe.shizuku.manager.permission.API_V23 | 未知权限 | 来自 android 引用的未知权限。 | 无 | |
| android.permission.REORDER_TASKS | 对正在运行的应用程序重新排序 | 允许应用程序将任务移至前端和后台。恶意应用程序可借此强行进入前端,而不受您的控制。 | 无 | |
| android.permission.FOREGROUND_SERVICE | 创建前台Service | Android 9.0以上允许常规应用程序使用 Service.startForeground,用于podcast播放(推送悬浮播放,锁屏播放) | ||
| android.permission.READ_PHONE_STATE | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 |
|
|
| android.permission.BIND_VPN_SERVICE | VpnServices 需要进行系统绑定 | 必须是VpnService, 以确保只有系统可以绑定到它。 | 无 | |
| android.permission.ACCESS_NETWORK_STATE | 获取网络状态 | 允许应用程序查看所有网络的状态。 |
|
|
| android.permission.ACCESS_WIFI_STATE | 查看Wi-Fi状态 | 允许应用程序查看有关Wi-Fi状态的信息。 |
Manifest 配置安全分析
1
2
0
0
| 序号 | 问题 | 严重程度 | 描述信息 | 操作 |
|---|---|---|---|---|
| 1 |
应用程序已启用明文网络流量 [android:usesCleartextTraffic=true] |
警告 | 应用程序打算使用明文网络流量,例如明文HTTP,FTP协议,DownloadManager和MediaPlayer。针对API级别27或更低的应用程序,默认值为“true”。针对API级别28或更高的应用程序,默认值为“false”。避免使用明文流量的主要原因是缺乏机密性,真实性和防篡改保护;网络攻击者可以窃听传输的数据,并且可以在不被检测到的情况下修改它。 | |
| 2 |
应用程序具有网络安全配置 [android:networkSecurityConfig=@xml/network_config] |
信息 | 网络安全配置功能让应用程序可以在一个安全的,声明式的配置文件中自定义他们的网络安全设置,而不需要修改应用程序代码。这些设置可以针对特定的域名和特定的应用程序进行配置。 | |
| 3 | Activity (com.iapp.app.run.mian) 容易受到StrandHogg 2.0的攻击 | 高危 | 已发现活动存在 StrandHogg 2.0 栈劫持漏洞的风险。漏洞利用时,其他应用程序可以将恶意活动放置在易受攻击的应用程序的活动栈顶部,从而使应用程序成为网络钓鱼攻击的易受攻击目标。可以通过将启动模式属性设置为“singleInstance”并设置空 taskAffinity (taskAffinity="") 来修复此漏洞。您还可以将应用的目标 SDK 版本 (28) 更新到 29 或更高版本以在平台级别修复此问题。 | |
| 4 |
Content Provider (rikka.shizuku.ShizukuProvider) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.INTERACT_ACROSS_USERS_FULL [android:exported=true] |
警告 | 发现一个 Content Provider被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 |
可浏览 Activity 组件分析
| ACTIVITY | INTENT |
|---|
网络通信安全风险分析
1
0
0
0
| 序号 | 范围 | 严重级别 | 描述 |
|---|---|---|---|
| 1 | * | 高危 | 基本配置不安全地配置为允许到所有域的明文流量。 |
API调用分析
安全漏洞检测
2
6
2
1
0
| 序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
|---|---|---|---|---|---|
| 1 | IP地址泄露 | 警告 |
CWE: CWE-200: 信息泄露
OWASP MASVS: MSTG-CODE-2 |
升级会员:解锁高级权限 | |
| 2 | 应用程序记录日志信息,不得记录敏感信息 | 信息 |
CWE: CWE-532: 通过日志文件的信息暴露
OWASP MASVS: MSTG-STORAGE-3 |
升级会员:解锁高级权限 | |
| 3 | 可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息 | 警告 |
CWE: CWE-200: 信息泄露
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 | |
| 4 | 不安全的Web视图实现。可能存在WebView任意代码执行漏洞 | 警告 |
CWE: CWE-749: 暴露危险方法或函数
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 | |
| 5 | 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库 | 警告 |
CWE: CWE-89: SQL命令中使用的特殊元素转义处理不恰当('SQL 注入')
OWASP Top 10: M7: Client Code Quality |
升级会员:解锁高级权限 | |
| 6 | 启用了调试配置。生产版本不能是可调试的 | 高危 |
CWE: CWE-919: 移动应用程序中的弱点
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-RESILIENCE-2 |
升级会员:解锁高级权限 | |
| 7 | 此应用程序将数据复制到剪贴板。敏感数据不应复制到剪贴板,因为其他应用程序可以访问它 | 信息 |
OWASP MASVS: MSTG-STORAGE-10 |
升级会员:解锁高级权限 | |
| 8 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
| 9 | 此应用程序使用SSL Pinning 来检测或防止安全通信通道中的MITM攻击 | 安全 |
OWASP MASVS: MSTG-NETWORK-4 |
升级会员:解锁高级权限 | |
| 10 | 应用程序可以读取/写入外部存储器,任何应用程序都可以读取写入外部存储器的数据 | 警告 |
CWE: CWE-276: 默认权限不正确
OWASP Top 10: M2: Insecure Data Storage OWASP MASVS: MSTG-STORAGE-2 |
升级会员:解锁高级权限 | |
| 11 | 如果一个应用程序使用WebView.loadDataWithBaseURL方法来加载一个网页到WebView,那么这个应用程序可能会遭受跨站脚本攻击 | 高危 |
CWE: CWE-79: 在Web页面生成时对输入的转义处理不恰当('跨站脚本')
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-6 |
升级会员:解锁高级权限 |
Native库安全分析
| 序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
|---|
文件分析
| 序号 | 问题 | 文件 |
|---|
行为分析
| 编号 | 行为 | 标签 | 文件 |
|---|---|---|---|
| 00013 | 读取文件并将其放入流中 |
文件 |
升级会员:解锁高级权限 |
| 00091 | 从广播中检索数据 |
信息收集 |
升级会员:解锁高级权限 |
| 00025 | 监视要执行的一般操作 |
反射 |
升级会员:解锁高级权限 |
| 00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
| 00202 | 打电话 |
控制 |
升级会员:解锁高级权限 |
| 00080 | 将录制的音频/视频保存到文件 |
录制音视频 文件 |
升级会员:解锁高级权限 |
| 00101 | 初始化录音机 |
录制音视频 |
升级会员:解锁高级权限 |
| 00183 | 获取当前相机参数并更改设置 |
相机 |
升级会员:解锁高级权限 |
| 00009 | 将游标中的数据放入JSON对象 |
文件 |
升级会员:解锁高级权限 |
| 00199 | 停止录音并释放录音资源 |
录制音视频 |
升级会员:解锁高级权限 |
| 00198 | 初始化录音机并开始录音 |
录制音视频 |
升级会员:解锁高级权限 |
| 00136 | 停止录音 |
录制音视频 命令 |
升级会员:解锁高级权限 |
| 00194 | 设置音源(MIC)和录制文件格式 |
录制音视频 |
升级会员:解锁高级权限 |
| 00090 | 设置录制的音频/视频文件格式 |
录制音视频 |
升级会员:解锁高级权限 |
| 00182 | 打开相机 |
相机 |
升级会员:解锁高级权限 |
| 00004 | 获取文件名并将其放入 JSON 对象 |
文件 信息收集 |
升级会员:解锁高级权限 |
| 00197 | 设置音频编码器并初始化录音机 |
录制音视频 |
升级会员:解锁高级权限 |
| 00067 | 查询IMSI号码 |
信息收集 |
升级会员:解锁高级权限 |
| 00138 | 设置音频源(MIC) |
录制音视频 |
升级会员:解锁高级权限 |
| 00196 | 设置录制文件格式和输出路径 |
录制音视频 文件 |
升级会员:解锁高级权限 |
| 00125 | 检查给定的文件路径是否存在 |
文件 |
升级会员:解锁高级权限 |
| 00133 | 开始录音 |
录制音视频 命令 |
升级会员:解锁高级权限 |
| 00104 | 检查给定路径是否是目录 |
文件 |
升级会员:解锁高级权限 |
| 00041 | 将录制的音频/视频保存到文件 |
录制音视频 |
升级会员:解锁高级权限 |
| 00096 | 连接到 URL 并设置请求方法 |
命令 网络 |
升级会员:解锁高级权限 |
| 00089 | 连接到 URL 并接收来自服务器的输入流 |
命令 网络 |
升级会员:解锁高级权限 |
| 00109 | 连接到 URL 并获取响应代码 |
网络 命令 |
升级会员:解锁高级权限 |
| 00063 | 隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
| 00002 | 打开相机并拍照 |
相机 |
升级会员:解锁高级权限 |
| 00001 | 初始化位图对象并将数据(例如JPEG)压缩为位图对象 |
相机 |
升级会员:解锁高级权限 |
| 00163 | 创建新的 Socket 并连接到它 |
socket |
升级会员:解锁高级权限 |
| 00012 | 读取数据并放入缓冲流 |
文件 |
升级会员:解锁高级权限 |
| 00023 | 从当前应用程序启动另一个应用程序 |
反射 控制 |
升级会员:解锁高级权限 |
| 00160 | 使用辅助服务执行通过视图 ID 获取节点信息的操作 |
无障碍服务 |
升级会员:解锁高级权限 |
| 00161 | 对可访问性节点信息执行可访问性服务操作 |
无障碍服务 |
升级会员:解锁高级权限 |
| 00159 | 使用辅助服务执行通过文本获取节点信息的操作 |
无障碍服务 |
升级会员:解锁高级权限 |
| 00173 | 获取 AccessibilityNodeInfo 屏幕中的边界并执行操作 |
无障碍服务 |
升级会员:解锁高级权限 |
| 00054 | 从文件安装其他APK |
反射 |
升级会员:解锁高级权限 |
| 00036 | 从 res/raw 目录获取资源文件 |
反射 |
升级会员:解锁高级权限 |
| 00019 | 从给定的类名中查找方法,通常用于反射 |
反射 |
升级会员:解锁高级权限 |
| 00046 | 方法反射 |
反射 |
升级会员:解锁高级权限 |
| 00026 | 方法反射 |
反射 |
升级会员:解锁高级权限 |
| 00072 | 将 HTTP 输入流写入文件 |
命令 网络 文件 |
升级会员:解锁高级权限 |
| 00030 | 通过给定的 URL 连接到远程服务器 |
网络 |
升级会员:解锁高级权限 |
| 00153 | 通过 HTTP 发送二进制数据 |
http |
升级会员:解锁高级权限 |
| 00094 | 连接到 URL 并从中读取数据 |
命令 网络 |
升级会员:解锁高级权限 |
| 00108 | 从给定的 URL 读取输入流 |
网络 命令 |
升级会员:解锁高级权限 |
| 00208 | 捕获设备屏幕的内容 |
信息收集 屏幕 |
升级会员:解锁高级权限 |
| 00029 | 动态初始化类对象 |
反射 |
升级会员:解锁高级权限 |
| 00039 | 启动网络服务器 |
控制 网络 |
升级会员:解锁高级权限 |
IP地理位置
恶意域名检测
| 域名 | 状态 | 中国境内 | 位置信息 | 解析 |
|---|---|---|---|---|
| www.objectweb.org |
安全 |
否 |
IP地址: 87.228.10.221 国家: 俄罗斯联邦 地区: 桑克-彼得堡 城市: 圣彼得堡 查看: Google 地图 |
|
手机号提取
URL链接分析
Firebase配置检测
邮箱地址提取
| 源码文件 | |
|---|---|
|
pat@pat.net |
bsh/Interpreter.java |
第三方追踪器
| 名称 | 类别 | 网址 |
|---|
敏感凭证泄露
已显示 3 个secrets
1、 ff9728d9d88a25680000242d50cf1f9f
2、 0e078ac77f12a974c5d775bbed32177b
3、 f750ba72e0cf4a294f4482ebdd7b095a246413da6630524be63f7b084871f3d0
活动列表
显示 10 个 activities
服务列表
广播接收者列表
内容提供者列表
显示 2 个 providers
第三方SDK
| SDK名称 | 开发者 | 描述信息 |
|---|---|---|
| AndroLua | mkottman | AndroLua 是基于 LuaJava 开发的安卓平台轻量级脚本编程语言工具,既具有 Lua 简洁优雅的特质,又支持绝大部分安卓 API,可以使你在手机上快速编写小型应用。 |
| android-gif-drawable | koral-- | android-gif-drawable 是在 Android 上显示动画 GIF 的绘制库。 |
| iApp | iApp | 将想法变为现实一款国产手机端可视化编程软件。 |
| File Provider | Android | FileProvider 是 ContentProvider 的特殊子类,它通过创建 content://Uri 代替 file:///Uri 以促进安全分享与应用程序关联的文件。 |
| Shizuku | RikkaW | Shizuku 可以帮助普通应用借助一个由 app_process 启动的 Java 进程直接以 adb 或 root 特权使用系统 API。 |
| Jetpack Media | 与其他应用共享媒体内容和控件。已被 media2 取代。 |
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……| 规则名称 | 描述信息 | 操作 |
|---|---|---|
| 病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
| 漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
| 隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
| 密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
| Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |