导航菜单

页面标题

页面副标题
平台声明

本平台专为移动应用安全风险研究与合规评估设计,严禁用于任何非法用途。 如有疑问或建议,欢迎加入微信群交流

应用基础信息

文件基本信息

文件名称 FactoryMode v1.0.apk
文件大小 13.7MB
MD5 74b2913242a8aa23b8efbf1f75f0d51c
SHA1 8fb6cebd54f50f83531ef472c8d24b62224f1a2c
SHA256 aeb9a686372f0c1b685479d4dc90a5fc6e70fbad0c16b8a996e799a6822c5161

应用基础信息

应用名称 FactoryMode
包名 com.mediatek.factorymode
主活动 com.mediatek.factorymode.FactoryTest
目标SDK 31 (API Level)
最小SDK 31 (API Level)
版本号 1.0
子版本号 1
加固信息 未加壳
开发框架 Java/Kotlin
反编译与源码导出
Manifest文件

查看应用配置清单

APK文件

下载原始安装包

Java源代码

反编译后的源代码

文件结构与资源列表

    应用签名证书信息

    APK已签名
    v1 签名: False
    v2 签名: False
    v3 签名: True
    v4 签名: False
    主题: C=US, ST=California, L=Mountain View, O=Android, OU=Android, CN=Android, [email protected]
    签名算法: rsassa_pkcs1v15
    有效期自: 2008-04-15 22:40:50+00:00
    有效期至: 2035-09-01 22:40:50+00:00
    发行人: C=US, ST=California, L=Mountain View, O=Android, OU=Android, CN=Android, [email protected]
    序列号: 0xb3998086d056cffa
    哈希算法: md5
    证书MD5: 8ddb342f2da5408402d7568af21e29f9
    证书SHA1: 27196e386b875e76adf700e7ea84e4c6eee33dfa
    证书SHA256: c8a2e9bccf597c2fb6dc66bee293fc13f2fc47ec77bc6b2b0d52c11f51192ab8
    证书SHA512: 5d802f24d6ac76c708a8e7afe28fd97e038f888cef6665fb9b4a92234c311d6ff42127ccb2eb5a898f4e7e4e553f6ef602d43d1a2ebae9f002a6598e72fd2d83
    公钥算法: rsa
    密钥长度: 2048
    指纹: 65ba0830722d5767f8779e37d0d9c67562f03ec63a2889af655ee9c59effb434
    共检测到 1 个唯一证书

    证书安全分析

    高危
    0
    警告
    0
    信息
    1
    标题 严重程度 描述信息
    已签名应用 信息 应用已使用代码签名证书进行签名。

    权限声明与风险分级

    权限名称 安全等级 权限内容 权限描述 关联代码
    android.permission.RECEIVE_BOOT_COMPLETED 普通 开机自启 允许应用程序在系统完成启动后即自行启动。这样会延长手机的启动时间,而且如果应用程序一直运行,会降低手机的整体速度。
    android.permission.WRITE_SETTINGS 危险 修改全局系统设置 允许应用程序修改系统设置方面的数据。恶意应用程序可借此破坏您的系统配置。
    android.permission.READ_SETTINGS 未知 未知权限 来自 android 引用的未知权限。
    android.permission.WRITE_EXTERNAL_STORAGE 危险 读取/修改/删除外部存储内容 允许应用程序写入外部存储。
    android.permission.WRITE_MEDIA_STORAGE 签名(系统) 获取外置SD卡的写权限 允许应用程序在外置SD卡中进行写入操作。
    android.permission.ACCESS_ALL_EXTERNAL_STORAGE 未知 未知权限 来自 android 引用的未知权限。
    android.permission.CALL_PHONE 危险 直接拨打电话 允许应用程序直接拨打电话。恶意程序会在用户未知的情况下拨打电话造成损失。但不被允许拨打紧急电话。
    android.permission.CAMERA 危险 拍照和录制视频 允许应用程序拍摄照片和视频,且允许应用程序收集相机在任何时候拍到的图像。
    android.permission.ACCESS_WIFI_STATE 普通 查看Wi-Fi状态 允许应用程序查看有关Wi-Fi状态的信息。
    android.permission.CHANGE_WIFI_STATE 危险 改变Wi-Fi状态 允许应用程序改变Wi-Fi状态。
    android.permission.MODIFY_PHONE_STATE 签名(系统) 修改手机状态 允许应用程序控制设备的电话功能。拥有此权限的应用程序可自行切换网络、打开和关闭无线通信等,而不会通知您。
    android.permission.DIAGNOSTIC 签名 读取/写入诊断所拥有的资源 允许应用程序读取/写入诊断组所拥有的任何资源(例如,/dev 中的文件)。这可能会影响系统稳定性和安全性。此权限仅供制造商或运营商诊断硬件问题。
    android.permission.HARDWARE_TEST 签名 测试硬件 允许应用程序控制各种外围设备以达到硬件测试的目的。
    android.permission.INTERNET 危险 完全互联网访问 允许应用程序创建网络套接字。
    android.permission.ACCESS_BLUETOOTH_SHARE 未知 未知权限 来自 android 引用的未知权限。
    android.permission.BLUETOOTH 危险 创建蓝牙连接 允许应用程序查看或创建蓝牙连接。
    android.permission.BLUETOOTH_ADMIN 危险 管理蓝牙 允许程序发现和配对新的蓝牙设备。
    android.permission.CHANGE_NETWORK_STATE 危险 改变网络连通性 允许应用程序改变网络连通性。
    android.permission.ACCESS_FINE_LOCATION 危险 获取精确位置 通过GPS芯片接收卫星的定位信息,定位精度达10米以内。恶意程序可以用它来确定您所在的位置。
    android.permission.ACCESS_MOCK_LOCATION 危险 获取模拟定位信息 获取模拟定位信息,一般用于帮助开发者调试应用。恶意程序可以用它来覆盖真实位置信息源。
    android.permission.UPDATE_DEVICE_STATS 签名(系统) 更新设备状态 允许应用程序更新设备状态。
    android.permission.MODIFY_AUDIO_SETTINGS 危险 允许应用修改全局音频设置 允许应用程序修改全局音频设置,如音量。多用于消息语音功能。
    android.permission.RESTART_PACKAGES 普通 重启进程 允许程序自己重启或重启其他程序
    android.permission.ACCESS_COARSE_LOCATION 危险 获取粗略位置 通过WiFi或移动基站的方式获取用户粗略的经纬度信息,定位精度大概误差在30~1500米。恶意程序可以用它来确定您的大概位置。
    android.permission.RECORD_AUDIO 危险 获取录音权限 允许应用程序获取录音权限。
    android.permission.VIBRATE 普通 控制振动器 允许应用程序控制振动器,用于消息通知振动功能。
    android.permission.WRITE_SECURE_SETTINGS 签名(系统) 修改安全系统设置 允许应用程序修改系统的安全设置数据。普通应用程序不能使用此权限。
    android.permission.MASTER_CLEAR 签名(系统) 恢复出厂设置 允许应用程序将系统恢复为出厂设置,即清除所有数据、配置以及所安装的应用程序。
    android.permission.WAKE_LOCK 危险 防止手机休眠 允许应用程序防止手机休眠,在手机屏幕关闭后后台进程仍然运行。
    android.permission.DEVICE_POWER 签名 开机或关机 允许应用程序启动/关闭设备。
    android.permission.TRANSMIT_IR 普通 允许使用设备的红外发射器 允许使用设备的红外发射器(如果可用)。
    android.permission.MOUNT_UNMOUNT_FILESYSTEMS 危险 装载和卸载文件系统 允许应用程序装载和卸载可移动存储器的文件系统。
    android.permission.REBOOT 签名(系统) 强行重新启动手机 允许应用程序强行重新启动手机。

    Manifest 配置安全分析

    高危
    0
    警告
    23
    信息
    0
    屏蔽
    0
    序号 问题 严重程度 描述信息 操作
    1 应用数据存在泄露风险
    未设置[android:allowBackup]标志
    警告 建议将 [android:allowBackup] 显式设置为 false。默认值为 true,允许通过 adb 工具备份应用数据,存在数据泄露风险。
    2 Activity-Alias (com.mediatek.factorymode.FactoryMode) 未受保护。
    [android:exported=true]
    警告 检测到 Activity-Alias 已导出,未受任何权限保护,任意应用均可访问。
    3 Activity (com.mediatek.factorymode.memory.Memory) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    4 Activity 设置了 TaskAffinity 属性
    (.camera.CameraTest)
    警告 设置 taskAffinity 后,其他应用可读取发送至该 Activity 的 Intent。为防止敏感信息泄露,建议保持默认 affinity(包名)。
    5 Activity 设置了 TaskAffinity 属性
    (.camera.CameraTest_1)
    警告 设置 taskAffinity 后,其他应用可读取发送至该 Activity 的 Intent。为防止敏感信息泄露,建议保持默认 affinity(包名)。
    6 Activity 设置了 TaskAffinity 属性
    (.camera.SubCamera)
    警告 设置 taskAffinity 后,其他应用可读取发送至该 Activity 的 Intent。为防止敏感信息泄露,建议保持默认 affinity(包名)。
    7 Activity (.FactoryReport) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    8 Activity (com.mediatek.factorymode.softwareInfo.SoftwareInfoActivity) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    9 Activity (com.mediatek.factorymode.hardwareInfo.HardwareInfoActivity) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    10 Activity (.infrared.ConsumerIR) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    11 Activity (.sensor.GSensorSettings) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    12 Activity (.updateselflabel.LabelActivity) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    13 Service (.factory.ExternalStorageClearer) 受权限保护,但应检查权限保护级别。
    Permission: android.permission.MASTER_CLEAR
    [android:exported=true]
    警告 检测到 Service 已导出并受未在本应用定义的权限保护。请在权限定义处核查其保护级别。若为 normal 或 dangerous,恶意应用可申请并与组件交互;若为 signature,仅同证书签名应用可访问。
    14 Activity (.otg.OtgTest) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    15 Activity (com.mediatek.factorymode.fakedata.FreemeFakeSettings) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    16 Broadcast Receiver (.agingtest.RebootCompleteReceiver) 未受保护。
    [android:exported=true]
    警告 检测到 Broadcast Receiver 已导出,未受任何权限保护,任意应用均可访问。
    17 Broadcast Receiver (.agingtest.AgingTestReceiver) 未受保护。
    [android:exported=true]
    警告 检测到 Broadcast Receiver 已导出,未受任何权限保护,任意应用均可访问。
    18 Activity (com.mediatek.factorymode.agingtest.AgingTestActivity) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    19 Activity (com.mediatek.factorymode.agingtest.AgingTestActivityImpl) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    20 Activity (com.mediatek.factorymode.fakedata.FreemeFakeSettings) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    21 Activity (com.mediatek.factorymode.bootanimation.FreemeSwitchBootAnimation) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    22 Activity (com.mediatek.factorymode.softwareInfo.CustomerInfoActivity) 未受保护。
    [android:exported=true]
    警告 检测到 Activity 已导出,未受任何权限保护,任意应用均可访问。
    23 检测到拨号暗码:0011230
    [android:scheme="android_secret_code"]
    警告 Manifest 中存在拨号暗码(如:*#*#4636#*#*),输入后可触发隐藏功能,存在敏感信息泄露风险。

    可浏览 Activity 组件分析

    ACTIVITY INTENT

    网络通信安全风险分析

    序号 范围 严重级别 描述

    API调用分析

    API功能 源码文件
    一般功能-> 文件操作
    DEX-> 动态加载 com/mediatek/factorymode/updateselflabel/LabelUtil.java
    一般功能-> 查看\修改Android系统属性 com/mediatek/factorymode/camera/CameraTest_1.java
    com/mediatek/factorymode/fakedata/FreemeFakeSettings.java
    com/mediatek/factorymode/updateselflabel/LabelUtil.java
    一般功能-> 获取系统服务(getSystemService)
    一般功能-> IPC通信
    com/mediatek/factorymode/FactoryTest.java
    com/mediatek/factorymode/agingtest/AgingTestActivity.java
    com/mediatek/factorymode/agingtest/AgingTestActivityImpl.java
    com/mediatek/factorymode/agingtest/AgingTestReceiver.java
    com/mediatek/factorymode/agingtest/RebootCompleteReceiver.java
    com/mediatek/factorymode/audio/Speaker.java
    com/mediatek/factorymode/base/BaseTest.java
    com/mediatek/factorymode/bluetooth/Bluetooth.java
    com/mediatek/factorymode/camera/CameraTest.java
    com/mediatek/factorymode/camera/CameraTest_1.java
    com/mediatek/factorymode/camera/StrobeTest.java
    com/mediatek/factorymode/camera/SubCamera.java
    com/mediatek/factorymode/display/LCD.java
    com/mediatek/factorymode/earphone/Earphone.java
    com/mediatek/factorymode/factory/ExternalStorageClearer.java
    com/mediatek/factorymode/factory/Factory.java
    com/mediatek/factorymode/fmradio/FMRadio.java
    com/mediatek/factorymode/googlekey/GoogleKeyTest.java
    com/mediatek/factorymode/gps/GPS.java
    com/mediatek/factorymode/headset/HeadSet.java
    com/mediatek/factorymode/hifi/HiFi.java
    com/mediatek/factorymode/infrared/ConsumerIR.java
    com/mediatek/factorymode/infrared/Infrared.java
    com/mediatek/factorymode/input/KeyboardTest.java
    com/mediatek/factorymode/input/TouchScreenFull.java
    com/mediatek/factorymode/input/TouchScreenHandWriting.java
    com/mediatek/factorymode/light/AttentionLight.java
    com/mediatek/factorymode/light/KeyboardLight.java
    com/mediatek/factorymode/light/ScreenBrightness.java
    com/mediatek/factorymode/memory/Memory.java
    com/mediatek/factorymode/mhl/MHL.java
    com/mediatek/factorymode/micophone/MicRecorder.java
    com/mediatek/factorymode/micophone/SubMicRecorder.java
    com/mediatek/factorymode/nfc/NfcTest.java
    com/mediatek/factorymode/otg/OtgTest.java
    com/mediatek/factorymode/power/BatteryInfo.java
    com/mediatek/factorymode/sensor/GSensor.java
    com/mediatek/factorymode/sensor/GyroscopeSensor.java
    com/mediatek/factorymode/sensor/HSensor.java
    com/mediatek/factorymode/sensor/LSensor.java
    com/mediatek/factorymode/sensor/MSensor.java
    com/mediatek/factorymode/sensor/PSensor.java
    com/mediatek/factorymode/signal/Signal.java
    com/mediatek/factorymode/storage/Storage.java
    com/mediatek/factorymode/vibrator/VibratorTest.java
    com/mediatek/factorymode/wifi/WiFiTest.java
    隐私数据-> 拍照摄像 com/mediatek/factorymode/camera/CameraManager.java
    com/mediatek/factorymode/camera/CameraTest.java
    com/mediatek/factorymode/camera/SubCamera.java
    隐私数据-> 录制视频 com/mediatek/factorymode/headset/HeadSet.java
    com/mediatek/factorymode/micophone/MicRecorder.java
    com/mediatek/factorymode/micophone/SubMicRecorder.java
    组件-> 启动 Activity
    组件-> 发送广播
    一般功能-> PowerManager操作 com/mediatek/factorymode/agingtest/AgingTestActivity.java
    com/mediatek/factorymode/agingtest/RebootCompleteReceiver.java
    一般功能-> 传感器相关操作
    隐私数据-> 录制音频行为 com/mediatek/factorymode/agingtest/AgingTestActivityImpl.java
    一般功能-> 设置手机铃声,媒体音量 com/mediatek/factorymode/agingtest/AgingTestActivityImpl.java
    com/mediatek/factorymode/audio/Speaker.java
    com/mediatek/factorymode/earphone/Earphone.java
    组件-> 启动 Service com/mediatek/factorymode/factory/Factory.java
    一般功能-> Android通知 com/mediatek/factorymode/light/AttentionLight.java
    命令执行-> getRuntime.exec() com/mediatek/factorymode/audio/Speaker.java
    网络通信-> NFC连接 com/mediatek/factorymode/nfc/NfcTest.java
    网络通信-> 蓝牙连接 com/mediatek/factorymode/bluetooth/Bluetooth.java

    Native库安全分析

    No Shared Objects found.
    序号 动态库 NX(堆栈禁止执行) PIE STACK CANARY(栈保护) RELRO RPATH(指定SO搜索路径) RUNPATH(指定SO搜索路径) FORTIFY(常用函数加强检查) SYMBOLS STRIPPED(裁剪符号表)

    文件分析

    序号 问题 文件

    行为分析

    编号 行为 标签 文件
    00183 获取当前相机参数并更改设置 相机
    升级会员:解锁高级权限
    00091 从广播中检索数据 信息收集
    升级会员:解锁高级权限
    00001 初始化位图对象并将数据(例如JPEG)压缩为位图对象 相机
    升级会员:解锁高级权限
    00022 从给定的文件绝对路径打开文件 文件
    升级会员:解锁高级权限
    00195 设置录制文件的输出路径 录制音视频
    文件
    升级会员:解锁高级权限
    00199 停止录音并释放录音资源 录制音视频
    升级会员:解锁高级权限
    00198 初始化录音机并开始录音 录制音视频
    升级会员:解锁高级权限
    00194 设置音源(MIC)和录制文件格式 录制音视频
    升级会员:解锁高级权限
    00197 设置音频编码器并初始化录音机 录制音视频
    升级会员:解锁高级权限
    00007 Use absolute path of directory for the output media file path 文件
    升级会员:解锁高级权限
    00196 设置录制文件格式和输出路径 录制音视频
    文件
    升级会员:解锁高级权限
    00002 打开相机并拍照 相机
    升级会员:解锁高级权限
    00056 修改语音音量 控制
    升级会员:解锁高级权限
    00125 检查给定的文件路径是否存在 文件
    升级会员:解锁高级权限
    00063 隐式意图(查看网页、拨打电话等) 控制
    升级会员:解锁高级权限
    00013 读取文件并将其放入流中 文件
    升级会员:解锁高级权限

    IP地理位置

    恶意域名检测

    手机号提取

    URL链接分析

    Firebase配置检测

    邮箱地址提取

    第三方追踪器

    名称 类别 网址

    敏感凭证泄露

    已显示 2 个secrets
    1、 "TP_Pass" : "Pass!"
    2、 "googlekey_status" : "TEE"

    字符串信息

    建议导出为TXT,方便查看。

    活动列表

    显示所有 54 个 activities

    服务列表

    广播接收者列表

    内容提供者列表

    第三方SDK

    SDK名称 开发者 描述信息

    污点分析

    当apk较大时,代码量会很大,造成数据流图(ICFG)呈现爆炸式增长,所以该功能比较耗时,请先喝杯咖啡,耐心等待……
    规则名称 描述信息 操作
    病毒分析 使用安卓恶意软件常用的API进行污点分析 开始分析  
    漏洞挖掘 漏洞挖掘场景下的污点分析 开始分析  
    隐私合规 隐私合规场景下的污点分析:组件内污点传播、组件间污点传播、组件与库函数之间的污点传播 开始分析  
    密码分析 分析加密算法是否使用常量密钥、静态初始化的向量(IV)、加密模式是否使用ECB等 开始分析  
    Callback 因为Android中系统级的Callback并不会出现显式地进行回调方法的调用,所以如果需要分析Callback方法需要在声明文件中将其声明,这里提供一份AndroidCallbacks.txt文件,里面是一些常见的原生回调接口或类,如果有特殊接口需求,可以联系管理员 开始分析