文件基本信息
应用基础信息
文件基本信息
应用基础信息
文件结构与资源列表
应用签名证书信息
二进制文件已签名
v1 签名: True
v2 签名: False
v3 签名: False
v4 签名: False
主题: C=CN, ST=Guangdong, L=Shenzhen, O=www.joydao.net, OU=www.joydao.net, CN=joydao
签名算法: rsassa_pkcs1v15
有效期自: 2010-04-02 01:47:29+00:00
有效期至: 2065-01-03 01:47:29+00:00
发行人: C=CN, ST=Guangdong, L=Shenzhen, O=www.joydao.net, OU=www.joydao.net, CN=joydao
序列号: 0x4bb54cb1
哈希算法: sha1
证书MD5: 8483e0c6ffb2826db0d39727969cc8ee
证书SHA1: 362aa4dbb63c005fa33019fcb4263efab1eb04bf
证书SHA256: 4d31762526e8a79d754dbb9197d326ae6abf21bb3ae60efd2ecbb679a787d610
证书SHA512: d110b9cb2f44aea69f008ebb389f9335814923dbc1fb051dbc06d512f288dfd84f33885a452f67fb2b308f4c5709373c8b5ddd864a2c12d88cb5c1fa7ecb45f7
找到 1 个唯一证书
权限声明与风险分级
权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
---|---|---|---|---|
android.permission.INTERNET | 危险 | 完全互联网访问 | 允许应用程序创建网络套接字。 | 显示文件 |
android.permission.ACCESS_COARSE_LOCATION | 危险 | 获取粗略位置 | 通过WiFi或移动基站的方式获取用户粗略的经纬度信息,定位精度大概误差在30~1500米。恶意程序可以用它来确定您的大概位置。 | 显示文件 |
android.permission.ACCESS_NETWORK_STATE | 普通 | 获取网络状态 | 允许应用程序查看所有网络的状态。 | 显示文件 |
android.permission.READ_PHONE_STATE | 危险 | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 | 显示文件 |
android.permission.SET_WALLPAPER | 普通 | 设置壁纸 | 允许应用程序设置壁纸。 | |
android.permission.ACCESS_FINE_LOCATION | 危险 | 获取精确位置 | 通过GPS芯片接收卫星的定位信息,定位精度达10米以内。恶意程序可以用它来确定您所在的位置。 | 显示文件 |
android.permission.ACCESS_WIFI_STATE | 普通 | 查看Wi-Fi状态 | 允许应用程序查看有关Wi-Fi状态的信息。 | 显示文件 |
android.permission.READ_LOGS | 危险 | 读取系统日志文件 | 允许应用程序从系统的各日志文件中读取信息。这样应用程序可以发现您的手机使用情况,这些信息还可能包含用户个人信息或保密信息,造成隐私数据泄露。 | |
android.permission.WRITE_EXTERNAL_STORAGE | 危险 | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 | 显示文件 |
android.permission.MOUNT_UNMOUNT_FILESYSTEMS | 危险 | 装载和卸载文件系统 | 允许应用程序装载和卸载可移动存储器的文件系统。 | |
com.android.launcher.permission.INSTALL_SHORTCUT | 签名 | 创建快捷方式 | 这个权限是允许应用程序创建桌面快捷方式。 | |
android.permission.RECEIVE_BOOT_COMPLETED | 普通 | 开机自启 | 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。 | 显示文件 |
android.permission.GET_TASKS | 危险 | 检索当前运行的应用程序 | 允许应用程序检索有关当前和最近运行的任务的信息。恶意应用程序可借此发现有关其他应用程序的保密信息。 | 显示文件 |
android.permission.VIBRATE | 普通 | 控制振动器 | 允许应用程序控制振动器,用于消息通知振动功能。 | |
android.permission.CHANGE_WIFI_STATE | 危险 | 改变Wi-Fi状态 | 允许应用程序改变Wi-Fi状态。 |
证书安全合规分析
标题 | 严重程度 | 描述信息 |
---|---|---|
已签名应用 | 信息 | 应用程序使用代码签名证书进行签名 |
应用程序容易受到 Janus 漏洞的影响 | 高危 | 应用程序使用 v1 签名方案进行签名,如果仅使用 v1 签名方案进行签名,则在 Android 5.0-8.0 上容易受到 Janus 漏洞的影响。在使用 v1 和 v2/v3 方案签名的 Android 5.0-7.0 上运行的应用程序也容易受到攻击。 |
Manifest 配置安全分析
序号 | 问题 | 严重程度 | 描述信息 | 操作 |
---|---|---|---|---|
1 |
应用数据存在泄露风险 未设置[android:allowBackup]标志 |
警告 | 建议将 [android:allowBackup] 显式设置为 false。默认值为 true,允许通过 adb 工具备份应用数据,存在数据泄露风险。 | |
2 | Activity (.MainActivity) 的启动模式非 standard | 高危 | Activity 启动模式设置为 "singleTask" 或 "singleInstance" 时,可能成为根 Activity,导致其他应用可读取调用 Intent 内容。涉及敏感信息时应使用 "standard" 启动模式。 | |
3 |
Activity (.MessagesActivity) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Activity 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Activity 被显式导出,存在安全风险。 | |
4 |
Broadcast Receiver (.MessageReceiver) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Broadcast Receiver 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Broadcast Receiver 被显式导出,存在安全风险。 | |
5 |
Content Provider (.provider.MessageProvider) 未受保护。 [android:exported=true] |
警告 | 检测到 Content Provider 已导出,未受任何权限保护,任意应用均可访问。 | |
6 |
Broadcast Receiver (net.youmi.android.AdReceiver) 未受保护。 存在 intent-filter。 |
警告 | 检测到 Broadcast Receiver 已与设备上的其他应用共享,因此可被任意应用访问。intent-filter 的存在表明该 Broadcast Receiver 被显式导出,存在安全风险。 |
可浏览 Activity 组件分析
ACTIVITY | INTENT |
---|
网络通信安全风险分析
序号 | 范围 | 严重级别 | 描述 |
---|
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 | 应用程序使用不安全的随机数生成器 | 警告 |
CWE: CWE-330: 使用不充分的随机数
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-6 |
升级会员:解锁高级权限 | |
4 | 应用程序使用SQLite数据库并执行原始SQL查询。原始SQL查询中不受信任的用户输入可能会导致SQL注入。敏感信息也应加密并写入数据库 | 警告 |
CWE: CWE-89: SQL命令中使用的特殊元素转义处理不恰当('SQL 注入')
OWASP Top 10: M7: Client Code Quality |
升级会员:解锁高级权限 | |
5 | 不安全的Web视图实现。Web视图忽略SSL证书错误并接受任何SSL证书。此应用程序易受MITM攻击 | 高危 |
CWE: CWE-295: 证书验证不恰当
OWASP Top 10: M3: Insecure Communication OWASP MASVS: MSTG-NETWORK-3 |
升级会员:解锁高级权限 | |
6 | 使用弱加密算法 | 高危 |
CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 | |
7 | MD5是已知存在哈希冲突的弱哈希 | 警告 |
CWE: CWE-327: 使用了破损或被认为是不安全的加密算法
OWASP Top 10: M5: Insufficient Cryptography OWASP MASVS: MSTG-CRYPTO-4 |
升级会员:解锁高级权限 | |
8 | 如果一个应用程序使用WebView.loadDataWithBaseURL方法来加载一个网页到WebView,那么这个应用程序可能会遭受跨站脚本攻击 | 高危 |
CWE: CWE-79: 在Web页面生成时对输入的转义处理不恰当('跨站脚本')
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-6 |
升级会员:解锁高级权限 | |
9 | 文件可能包含硬编码的敏感信息,如用户名、密码、密钥等 | 警告 |
CWE: CWE-312: 明文存储敏感信息
OWASP Top 10: M9: Reverse Engineering OWASP MASVS: MSTG-STORAGE-14 |
升级会员:解锁高级权限 | |
10 | IP地址泄露 | 警告 |
CWE: CWE-200: 信息泄露
OWASP MASVS: MSTG-CODE-2 |
升级会员:解锁高级权限 | |
11 | 不安全的Web视图实现。可能存在WebView任意代码执行漏洞 | 警告 |
CWE: CWE-749: 暴露危险方法或函数
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 | |
12 | 可能存在跨域漏洞。在 WebView 中启用从 URL 访问文件可能会泄漏文件系统中的敏感信息 | 警告 |
CWE: CWE-200: 信息泄露
OWASP Top 10: M1: Improper Platform Usage OWASP MASVS: MSTG-PLATFORM-7 |
升级会员:解锁高级权限 |
Native库安全分析
序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
---|---|---|---|---|---|---|---|---|---|
1 | armeabi/libbspatch.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 符号被剥离 |
文件分析
序号 | 问题 | 文件 |
---|
行为分析
编号 | 行为 | 标签 | 文件 |
---|---|---|---|
00063 | 隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
00051 | 通过setData隐式意图(查看网页、拨打电话等) |
控制 |
升级会员:解锁高级权限 |
00137 | 获取设备的最后已知位置 |
位置 信息收集 |
升级会员:解锁高级权限 |
00115 | 获取设备的最后已知位置 |
信息收集 位置 |
升级会员:解锁高级权限 |
00016 | 获取设备的位置信息并将其放入 JSON 对象 |
位置 信息收集 |
升级会员:解锁高级权限 |
00033 | 查询IMEI号 |
信息收集 |
升级会员:解锁高级权限 |
00022 | 从给定的文件绝对路径打开文件 |
文件 |
升级会员:解锁高级权限 |
00078 | 获取网络运营商名称 |
信息收集 电话服务 |
升级会员:解锁高级权限 |
00171 | 将网络运算符与字符串进行比较 |
网络 |
升级会员:解锁高级权限 |
00130 | 获取当前WIFI信息 |
WiFi 信息收集 |
升级会员:解锁高级权限 |
00013 | 读取文件并将其放入流中 |
文件 |
升级会员:解锁高级权限 |
00036 | 从 res/raw 目录获取资源文件 |
反射 |
升级会员:解锁高级权限 |
00162 | 创建 InetSocketAddress 对象并连接到它 |
socket |
升级会员:解锁高级权限 |
00163 | 创建新的 Socket 并连接到它 |
socket |
升级会员:解锁高级权限 |
00054 | 从文件安装其他APK |
反射 |
升级会员:解锁高级权限 |
00125 | 检查给定的文件路径是否存在 |
文件 |
升级会员:解锁高级权限 |
00067 | 查询IMSI号码 |
信息收集 |
升级会员:解锁高级权限 |
00031 | 检查当前正在运行的应用程序列表 |
反射 信息收集 |
升级会员:解锁高级权限 |
00034 | 查询当前数据网络类型 |
信息收集 网络 |
升级会员:解锁高级权限 |
00035 | 查询已安装的包列表 |
反射 |
升级会员:解锁高级权限 |
00023 | 从当前应用程序启动另一个应用程序 |
反射 控制 |
升级会员:解锁高级权限 |
00112 | 获取日历事件的日期 |
信息收集 日历 |
升级会员:解锁高级权限 |
敏感权限分析
恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
其它常用权限 是已知恶意软件经常滥用的权限。
IP地理位置
手机号提取
URL链接分析
URL信息 | 源码文件 |
---|---|
223.5.5.5 |
net/youmi/android/a/b/i/c.java |
http://www.joydao.net |
net/joydao/spring2011/BaseActivity.java |
http://m.310win.com/?cid=308 |
net/joydao/spring2011/MainActivity.java |
10.0.0.172 |
net/youmi/android/a/b/i/i.java |
http://openapi.baidu.com/public/2.0/bmt/translate?client_id=illkzwrgqlh2q6s6lwse0mbw&q= |
net/joydao/spring2011/util/TranslateUtils.java |
http://w.m.taobao.com/ http://w.m.taobao.com/api/ http://w.m.taobao.com/api/r? http://w.m.taobao.com/api/q? |
com/alimama/mobile/csdk/umupdate/b/a.java |
210.72.145.44 66.92.68.246 129.7.1.66 128.118.46.3 130.149.17.21 203.117.180.36 133.100.11.8 64.236.96.53 18.145.0.30 133.100.9.2 131.107.1.10 137.92.140.80 |
net/youmi/android/onlineconfig/ntp/a.java |
10.0.0.172 |
u/aly/t.java |
Firebase配置检测
邮箱地址提取
第三方追踪器
名称 | 类别 | 网址 |
---|---|---|
Alimama (formerly AdsMogo) | Advertisement | https://reports.exodus-privacy.eu.org/trackers/338 |
Umeng Analytics | https://reports.exodus-privacy.eu.org/trackers/119 | |
Umeng Feedback | https://reports.exodus-privacy.eu.org/trackers/120 |
敏感凭证泄露
活动列表
显示 14 个 activities
服务列表
显示 4 个 services
广播接收者列表
显示 2 个 receivers
内容提供者列表
显示 1 个 providers
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……规则名称 | 描述信息 | 操作 |
---|---|---|
病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |