文件信息
文件名称 bhapp133.apk文件大小 40.02MB
MD5 b90616185b91bc7854732da16c72084d
SHA1 8aaba2045a8aa171eda9c501d6aac9edd458bbb3
SHA256 760ab3729259a0eac538b9658c93b9af64cd9429d0316a0168cd3f617710ff5f
病毒检测 无法判定
文件信息
文件名称 bhapp133.apk证书信息
二进制文件已签名
v1 签名: True
v2 签名: True
v3 签名: False
v4 签名: False
主题: ST=sh, L=sh, O=ccic, OU=ccic, CN=ddsd
签名算法: rsassa_pkcs1v15
有效期自: 2020-05-22 07:20:06+00:00
有效期至: 2045-05-16 07:20:06+00:00
发行人: ST=sh, L=sh, O=ccic, OU=ccic, CN=ddsd
序列号: 0x3aece77
哈希算法: sha256
证书MD5: 33d9e61b4ed6720cd4c26ae6c2657e01
证书SHA1: a59698bdc6bedc81502ce8879d02942aa29727e7
证书SHA256: e440ec44d91133bfede75e7c1c11c0433a0a237cbf1d57049aed29ab9048c805
证书SHA512: 9acaa7b0cae99016c4272fc23cf326f6304e73eb9c1abd2fea49a6b0ad603b5abbdf3967ad47a16a2a7547e2fb145a6a8f8ff53b571b5709a521218203ab3dbb
公钥算法: rsa
密钥长度: 2048
指纹: 538c6d00027b5700731d3a18bc1b4903bbb80eaf538bc3fddcb2ccbd0b9f4103
找到 1 个唯一证书
应用程序权限
权限名称 | 安全等级 | 权限内容 | 权限描述 | 关联代码 |
---|---|---|---|---|
android.permission.READ_PRIVILEGED_PHONE_STATE | 未知 | 未知权限 | 来自 android 引用的未知权限。 | |
android.permission.INTERNET | 危险 | 完全互联网访问 | 允许应用程序创建网络套接字。 | |
android.permission.CAMERA | 危险 | 拍照和录制视频 | 允许应用程序拍摄照片和视频,且允许应用程序收集相机在任何时候拍到的图像。 | |
android.permission.ACCESS_WIFI_STATE | 普通 | 查看Wi-Fi状态 | 允许应用程序查看有关Wi-Fi状态的信息。 | |
android.permission.READ_PHONE_STATE | 危险 | 读取手机状态和标识 | 允许应用程序访问设备的手机功能。有此权限的应用程序可确定此手机的号码和序列号,是否正在通话,以及对方的号码等。 | |
android.permission.ACCESS_NETWORK_STATE | 普通 | 获取网络状态 | 允许应用程序查看所有网络的状态。 | |
android.permission.READ_EXTERNAL_STORAGE | 危险 | 读取SD卡内容 | 允许应用程序从SD卡读取信息。 | 显示文件 |
android.permission.WRITE_EXTERNAL_STORAGE | 危险 | 读取/修改/删除外部存储内容 | 允许应用程序写入外部存储。 | 显示文件 |
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.RECORD_AUDIO | 危险 | 获取录音权限 | 允许应用程序获取录音权限。 | |
android.permission.BLUETOOTH | 危险 | 创建蓝牙连接 | 允许应用程序查看或创建蓝牙连接。 | |
android.permission.ACCESS_LOCATION_EXTRA_COMMANDS | 普通 | 访问定位额外命令 | 访问额外位置提供程序命令,恶意应用程序可能会使用它来干扰GPS或其他位置源的操作。 | |
android.permission.BLUETOOTH_ADMIN | 危险 | 管理蓝牙 | 允许程序发现和配对新的蓝牙设备。 | |
android.permission.CALL_PHONE | 危险 | 直接拨打电话 | 允许应用程序直接拨打电话。恶意程序会在用户未知的情况下拨打电话造成损失。但不被允许拨打紧急电话。 | |
android.permission.MANAGE_OWN_CALLS | 普通 | 使呼叫应用程序能够管理自己的呼叫 | 允许通过自我管理的ConnectionService API管理自己的调用的调用应用程序。 | |
android.permission.READ_CALL_LOG | 危险 | 读取通话记录 | 允许应用程序读取用户的通话记录 | |
com.android.alarm.permission.SET_ALARM | 未知 | 未知权限 | 来自 android 引用的未知权限。 | |
android.permission.MOUNT_UNMOUNT_FILESYSTEMS | 危险 | 装载和卸载文件系统 | 允许应用程序装载和卸载可移动存储器的文件系统。 | |
android.permission.WAKE_LOCK | 危险 | 防止手机休眠 | 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。 | |
android.permission.SYSTEM_ALERT_WINDOW | 危险 | 弹窗 | 允许应用程序弹窗。 恶意程序可以接管手机的整个屏幕。 | |
android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS | 普通 | 使用 Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS 的权限 | 应用程序必须拥有权限才能使用 Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS。 | |
android.permission.MODIFY_AUDIO_SETTINGS | 危险 | 允许应用修改全局音频设置 | 允许应用程序修改全局音频设置,如音量。多用于消息语音功能。 | |
android.os.Parcel.readException | 未知 | 未知权限 | 来自 android 引用的未知权限。 | |
android.permission.FOREGROUND_SERVICE | 普通 | 创建前台Service | Android 9.0以上允许常规应用程序使用 Service.startForeground,用于podcast播放(推送悬浮播放,锁屏播放) | |
android.permission.DOWNLOAD_WITHOUT_NOTIFICATION | 普通 | 后台下载文件 | 这个权限是允许应用通过下载管理器下载文件,且不对用户进行任何提示。 | |
android.permission.REQUEST_INSTALL_PACKAGES | 危险 | 允许安装应用程序 | Android8.0 以上系统允许安装未知来源应用程序权限。 | |
android.permission.KILL_BACKGROUND_PROCESSES | 普通 | 结束进程 | 允许应用程序结束其他应用程序的后台进程。 | |
android.permission.RESTART_PACKAGES | 普通 | 重启进程 | 允许程序自己重启或重启其他程序 | |
android.permission.RECEIVE_BOOT_COMPLETED | 普通 | 开机自启 | 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。 | |
android.permission.CHANGE_CONFIGURATION | 危险 | 改变UI设置 | 允许应用程序 允许应用程序更改当前配置,例如语言区域或整体的字体大小。 | |
android.permission.WRITE_SETTINGS | 危险 | 修改全局系统设置 | 允许应用程序修改系统设置方面的数据。恶意应用程序可借此破坏您的系统配置。 |
证书安全分析
标题 | 严重程度 | 描述信息 |
---|---|---|
已签名应用 | 信息 | 应用程序已使用代码签名证书进行签名 |
应用程序存在Janus漏洞 | 警告 | 应用程序使用了v1签名方案进行签名,如果只使用v1签名方案,那么它就容易受到安卓5.0-8.0上的Janus漏洞的攻击。在安卓5.0-7.0上运行的使用了v1签名方案的应用程序,以及同时使用了v2/v3签名方案的应用程序也同样存在漏洞。 |
MANIFEST分析
序号 | 问题 | 严重程度 | 描述信息 | 操作 |
---|---|---|---|---|
1 |
应用程序可以安装在有漏洞的已更新 Android 版本上 Android 6.0-6.0.1, [minSdk=23] |
警告 | 该应用程序可以安装在具有多个未修复漏洞的旧版本 Android 上。这些设备不会从 Google 接收合理的安全更新。支持 Android 版本 => 10、API 29 以接收合理的安全更新。 | |
2 |
应用程序具有网络安全配置 [android:networkSecurityConfig=@xml/network_security_config] |
信息 | 网络安全配置功能让应用程序可以在一个安全的,声明式的配置文件中自定义他们的网络安全设置,而不需要修改应用程序代码。这些设置可以针对特定的域名和特定的应用程序进行配置。 | |
3 |
应用程序数据可以被备份 [android:allowBackup=true] |
警告 | 这个标志允许任何人通过adb备份你的应用程序数据。它允许已经启用了USB调试的用户从设备上复制应用程序数据。 | |
4 |
Activity (com.ccicnet.ccms.ui.act.LoginActivity) 未被保护。 存在一个intent-filter。 |
警告 | 发现 Activity与设备上的其他应用程序共享,因此让它可以被设备上的任何其他应用程序访问。intent-filter的存在表明这个Activity是显式导出的。 | |
5 |
Service (com.ccicnet.ccms.widget.alarm11.AlarmService) 未被保护。 [android:exported=true] |
警告 | 发现 Service与设备上的其他应用程序共享,因此使其对设备上的任何其他应用程序都可访问。 | |
6 |
Activity (com.yunmai.android.idcard.ARecognize) 未被保护。 存在一个intent-filter。 |
警告 | 发现 Activity与设备上的其他应用程序共享,因此让它可以被设备上的任何其他应用程序访问。intent-filter的存在表明这个Activity是显式导出的。 | |
7 |
Activity设置了TaskAffinity属性 (com.readystatesoftware.chuck.internal.ui.MainActivity) |
警告 | 如果设置了 taskAffinity,其他应用程序可能会读取发送到属于另一个任务的 Activity 的 Intent。为了防止其他应用程序读取发送或接收的 Intent 中的敏感信息,请始终使用默认设置,将 affinity 保持为包名 | |
8 |
Service (androidx.work.impl.background.systemjob.SystemJobService) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.BIND_JOB_SERVICE [android:exported=true] |
警告 | 发现一个 Service被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 | |
9 |
Broadcast Receiver (androidx.work.impl.diagnostics.DiagnosticsReceiver) 受权限保护, 但是应该检查权限的保护级别。 Permission: android.permission.DUMP [android:exported=true] |
警告 | 发现一个 Broadcast Receiver被共享给了设备上的其他应用程序,因此让它可以被设备上的任何其他应用程序访问。它受到一个在分析的应用程序中没有定义的权限的保护。因此,应该在定义它的地方检查权限的保护级别。如果它被设置为普通或危险,一个恶意应用程序可以请求并获得这个权限,并与该组件交互。如果它被设置为签名,只有使用相同证书签名的应用程序才能获得这个权限。 |
可浏览的Activity组件
ACTIVITY | INTENT |
---|---|
com.ccicnet.ccms.ui.act.LoginActivity |
Schemes:
saa8e5e77e://,
|
网络通信安全
序号 | 范围 | 严重级别 | 描述 |
---|---|---|---|
1 | * | 高 | 基本配置不安全地配置为允许到所有域的明文流量。 |
API调用分析
API功能 | 源码文件 |
---|---|
一般功能-> 加载so文件 | com/qihoo/util/DtcLoader.java com/stub/StubApp.java |
DEX-> 动态加载 | com/stub/StubApp.java |
调用java反射机制 | com/qihoo/util/DtcLoader.java com/qihoo/util/a.java com/stub/StubApp.java |
一般功能-> 文件操作 | com/qihoo/util/a.java com/stub/StubApp.java |
DEX-> 加载和操作Dex文件 | com/stub/StubApp.java |
进程操作-> 杀死进程 | com/stub/StubApp.java |
安全漏洞检测
序号 | 问题 | 等级 | 参考标准 | 文件位置 | 操作 |
---|
Native库安全分析
序号 | 动态库 | NX(堆栈禁止执行) | PIE | STACK CANARY(栈保护) | RELRO | RPATH(指定SO搜索路径) | RUNPATH(指定SO搜索路径) | FORTIFY(常用函数加强检查) | SYMBOLS STRIPPED(裁剪符号表) |
---|---|---|---|---|---|---|---|---|---|
1 | armeabi/libIDCardengine.so |
True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
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 库不适用 |
False
warning 符号可用 |
2 | armeabi/libimageengine.so |
True
info 二进制文件设置了 NX 位。这标志着内存页面不可执行,使得攻击者注入的 shellcode 不可执行。 |
|
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 库不适用 |
False
warning 符号可用 |
文件分析
序号 | 问题 | 文件 |
---|
敏感权限分析
恶意软件常用权限 是被已知恶意软件广泛滥用的权限。
其它常用权限 是已知恶意软件经常滥用的权限。
IP地理位置
恶意域名检测
域名 | 状态 | 中国境内 | 位置信息 | 解析 |
---|---|---|---|---|
web.ccyunmai.com |
安全 |
是 |
IP地址: 183.250.166.187 国家: China 地区: Fujian 城市: Xiamen 查看: 高德地图 |
|
手机号提取
URL链接分析
URL信息 | 源码文件 |
---|---|
http://web.ccyunmai.com:81/SrvTimeChk?T=%s&M=%s&S=%s&V=%s&C=%d |
lib/armeabi/libIDCardengine.so |
Firebase配置检测
邮箱地址提取
第三方追踪器
名称 | 类别 | 网址 |
---|
敏感凭证泄露
活动列表
显示 28 个 activities
服务列表
显示 11 个 services
广播接收者列表
显示 8 个 receivers
内容提供者列表
显示 7 个 providers
第三方SDK
SDK名称 | 开发者 | 描述信息 |
---|---|---|
C++ 共享库 | Android | 在 Android 应用中运行原生代码。 |
360 加固 | 360 | 360 加固保是基于 360 核心加密技术,给安卓应用进行深度加密、加壳保护的安全技术产品,可保护应用远离恶意破解、反编译、二次打包,内存抓取等威胁。 |
WebRTC | WebRTC | 借助 WebRTC,您可以在基于开放标准的应用程序中添加实时通信功能。它支持在同级之间发送视频,语音和通用数据,从而使开发人员能够构建功能强大的语音和视频通信解决方案。该技术可在所有现代浏览器以及所有主要平台的本机客户端上使用。 WebRTC 背后的技术被实现为一个开放的 Web 标准,并在所有主要浏览器中均以常规 JavaScript API 的形式提供。 |
RenderScript | Android | RenderScript 是用于在 Android 上以高性能运行计算密集型任务的框架。RenderScript 主要用于数据并行计算,不过串行工作负载也可以从中受益。RenderScript 运行时可在设备上提供的多个处理器(如多核 CPU 和 GPU)间并行调度工作。这样您就能够专注于表达算法而不是调度工作。RenderScript 对于执行图像处理、计算摄影或计算机视觉的应用来说尤其有用。 |
文件列表
污点分析
当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……规则名称 | 描述信息 | 操作 |
---|---|---|
病毒分析 | 使用安卓恶意软件常用的API进行污点分析 | 开始分析 |
漏洞挖掘 | 漏洞挖掘场景下的污点分析 | 开始分析 |
隐私合规 | 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 | 开始分析 |
密码分析 | 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 | 开始分析 |
Callback | 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 | 开始分析 |