Posted on ::

测试环境与研究说明
操作系统:ColorOS 15(基于 Android 15)
研究方法:ADB Shell 运行时状态核验、Package Manager 元数据审计、DEX 字节码符号反编译(JADX / Baksmali)、Binder IPC / AIDL 调用链分析。


一、 系统架构与数据流向总览

在 ColorOS 底层,系统预装的遥测、运营商设备管理与行为画像组件并非孤立运行,而是通过 Binder IPC、ContentProvider 与本地数据库构成了跨层级的数据流转体系:

flowchart TD
    subgraph DataCollection["数据采集层(底层探针与硬件透传)"]
        RegService["com.coloros.regservice\n(彩讯科技/移动DM: Wi-Fi列表/蓝牙/应用时长)"]
        CTAuto["com.oppo.ctautoregist\n(电信自动注册: 静默短信/15天周期/基站)"]
        QTI["com.qualcomm.qti.devicestatisticsservice\n(高通Radio HAL: 触控交互与屏幕状态透传)"]
    end

    subgraph TelemetryHub["数据汇聚与系统审计层"]
        DCS["com.oplus.statistics.rom\n(DCS遥测中枢: 全系统应用启停/HttpDNS穿透)"]
        SecGuard["com.coloros.securityguard\n(安全审计: AppOps篡改/Epona IPC拦截)"]
        RemoteGuard["com.coloros.remoteguardservice\n(应用使用时长与前台状态统计)"]
    end

    subgraph Profiling["端侧特征提取与画像建模"]
        DeepThinker["com.oplus.deepthinker\n(AI情境感知: 读短信/通话/日历/通知监听/职住聚类)"]
    end

    subgraph Commercial["标识符分发与商业广告变现"]
        OpenID["com.heytap.openid\n(OAID/VAID分发与云控状态管理)"]
        OPOSAds["com.opos.ads\n(ADX广告竞价与MDP UserTrace上报)"]
        AdServices["com.android.adservices.api\n(Android Privacy Sandbox系统级归因)"]
    end

    DataCollection -->|SIM状态/基站/Wi-Fi/蓝牙| DCS
    TelemetryHub -->|应用事件/运行审计/屏幕时间| DCS
    DCS -->|全域行为数据接入| DeepThinker
    DeepThinker -->|生成用户属性标签| OpenID
    OpenID -->|OAID设备映射| OPOSAds
    OpenID -->|跨应用归因| AdServices

二、 核心组件技术逆向深度剖析

1. 运营商常驻管理探针

01. com.coloros.regservice(中国移动终端管理 / 彩讯科技 DM SDK)

  • 安装路径:/product/app/RegService/RegService.apk
  • 组件属性:中国移动深度合作方彩讯科技(Richinfo)为移动定制的 OMA-DM(Open Mobile Alliance Device Management)终端设备管理与环境采集模块。
(1) 权限配置审计

通过 dumpsys package com.coloros.regservice 获取其核心权限声明:

android.permission.PACKAGE_USAGE_STATS       // 静默获取全量应用使用时长与启动频次
android.permission.ACCESS_FINE_LOCATION      // 高精度地理位置(系统级默认静默授予)
android.permission.ACCESS_BACKGROUND_LOCATION// 后台全时定位
android.permission.READ_PRIVILEGED_PHONE_STATE// 读取不可变硬件标识符(IMEI/IMSI/ICCID)
android.permission.LOCAL_MAC_ADDRESS         // 读取本机真实 Wi-Fi MAC 地址
android.permission.WRITE_SECURE_SETTINGS     // 修改系统安全设置
android.permission.WRITE_APN_SETTINGS        // 写入网络接入点
usesOptionalLibraries: vendor.oplus.hardware.charger-V1.0 // 绑定充电硬件 HAL
(2) 字节码实现分析

提取其 DEX 字节码,核心业务集中于 cn.richinfo.dm 及 com.dmyk.android.telephony 包。核心调度类 cn.richinfo.dm.DMController 的符号表展示了以下采集功能:

// 反编译提取自 cn.richinfo.dm.DMController
lambda$appInfoReport$12$cn-richinfo-dm-DMController     // 遍历并上报全机已安装应用及活跃列表
lambda$networkCollect$18$cn-richinfo-dm-DMController     // 采集蜂窝网络基站 CellID、频段与 5G 状态
lambda$wifiListCollect$19$cn-richinfo-dm-DMController    // 扫描并采集周边所有 Wi-Fi SSID 与 BSSID 列表
lambda$reportBluetoothLog$20$cn-richinfo-dm-DMController // 收集蓝牙配对与连接历史
lambda$reportBatteryChargeLog$13$cn-richinfo-dm-DMController // 记录电池充电周期与健康度
lambda$timeTrafficReport$11$cn-richinfo-dm-DMController  // 分时段统计移动流量与 Wi-Fi 流量消耗
lambda$onDevLockStateChange$4$cn-richinfo-dm-DMController // 远程锁机状态监听

在配置字典中,存在明确的上报开关配置项:

  • KEY_APP_REPORT_SWITCH(应用上报开关)
  • KEY_PRE_INSTALLED_REPORT_SWITCH(预装应用上报)
  • KEY_WIFI_LIST_REPORT_SWITCH(周边 Wi-Fi 列表上报)
  • KEY_BLUETOOTH_REPORT_SWITCH(蓝牙连接上报)
  • COLUMN_DO_TERMINAL_LOCK 及路径 /TerminalConfigService/terminalConf/lock(下发远程锁机指令通道)
(3) 通信端点
  • 请求载荷格式:采用 EncryptJsonRequest 与 GZIPJsonRequest 压缩加密。
  • 服务器域名:
    • https://a.fxltsbl.com(IP 地址解析接口:/getIpAddr)
    • https://b.fxltsbl.com(丰讯移动终端管理主通信节点)
    • android.dmyk.net、cn.richinfo.dmyk.me

02. com.oppo.ctautoregist(中国电信自动注册 CTAutoRegist)

  • 安装路径:/product/priv-app/CTAutoRegist/CTAutoRegist.apk
  • 组件属性:中国电信天翼终端设备管理、入网验证与卡状态监听组件。
(1) 权限配置审计
android.permission.SEND_SMS                  // 系统级静默发送短信
android.permission.RECEIVE_SMS               // 拦截与接收短信
android.permission.READ_SMS                  // 读取短信记录
android.permission.READ_PRIVILEGED_PHONE_STATE// 读取电话底层硬件标识
android.permission.ACCESS_FINE_LOCATION      // 获取基站与精确地理位置
(2) 触发机制与业务逻辑

组件内的 RegisterReceiver 监听多组系统广播,用于感知硬件和网络变化:

com.oplus.intent.action.5G_switch_click          // 用户切换 5G 开关
oppo.intent.action.simsettings.VOLTE_STATE_ON    // 启用 VoLTE 状态
oppo.intent.action.simsettings.PrimaryCardChange // 插拔 SIM 卡或更换主卡
oplus.software.radio.tt_satellite_support        // 天通卫星通信支持检测
oplus.intent.action.ims_sms_period_retry_action  // 周期性短信重发触发器

当插入电信 SIM 卡后,组件执行以下操作:

  1. 静默短信注册:启动 SatelliteSmsSim1RegisterService 与 ImsSmsSim1RegisterService,调用底层 SmsManager.sendDataMessage / sendTextMessage 向电信通道发送加密注册短信,并由内部 mDataSmsReceiver 拦截回执,整个通信过程不经过系统短彩信应用,收件箱无记录。
  2. 周期性唤醒:内置 15days_register 机制(代码字段:is15DaysRegister、startRegister after 15 days),设备开机正常运行期间,每隔 15 天强制重新触发一次入网验证。
  3. 上报数据载荷:收集 IMEI1、IMEI2、IMEI3(天通卫星通信专用终端识别码)、ICCID、LteImsi、CellInfo(当前基站蜂窝信息)。
(3) 通信端点
  • https://typdm.tydevice.com?jsonstr=(中国电信天翼终端管理平台)
  • https://zzhc.vnet.cn/ 及 https://zzhc.vnet.cn/pi(中国电信终端验证节点)

2. 厂商遥测总线与系统安全审计

03. com.oplus.statistics.rom(ColorOS ROM 级全量遥测 DCS)

  • 安装路径:/product/priv-app/DCS/DCS.apk
  • 组件属性:OPPO / ColorOS 数据收集系统(Data Collection System / Center,简称 DCS),属于系统级遥测总汇聚点。
(1) 权限与广播监听
  • 拥有 PACKAGE_USAGE_STATS、READ_PRIVILEGED_PHONE_STATE、ACCESS_FINE_LOCATION。
  • 注册全系统广播监听器:
    • oplus.intent.action.PACKAGE_ADDED
    • oplus.intent.action.PACKAGE_REMOVED
    • android.intent.action.OPLUS_PACKAGE_ADDED
      全系统所有应用的安装、卸载及更新均会在毫秒级生成审计事件。
(2) 核心机制分析
  • OneID 统一设备标识体系:集成 com.oplus.statistic.rom.oneidsdk(OneIdOsTokenKitSdk),在后台读取 oneid_kv_store,定时向 OneID 服务拉取统一设备标识与 Token,使上报的事件日志具备全局唯一硬件标识锚定能力。
  • HttpDNS 机制:逆向发现完整的 com.heytap.httpdns 实现。DCS 发起遥测网络请求时,直接通过 HTTP 接口向服务端获取解析 IP,不调用系统底层的本地 DNS 解析接口。因此,网络层配置的 DNS 拦截(如 Pi-hole、AdGuard Home)或系统级私密 DNS(DoT)对该组件的请求均无法起到拦截效果。
  • 通信端点:apisnd.heytap、*.heytapmobi.com、*.heytapmobile.com。

04. com.coloros.securityguard(ColorOS 安全守护组件)

  • 安装路径:/product/app/SecurityGuard/SecurityGuard.apk
  • 组件属性:系统底层安全审计与风险控制模块(技术定位与小米 MIUI 的 GuardProvider 类似)。
(1) 特权配置
  • android.permission.MANAGE_APP_OPS_MODES:具备修改系统中任意第三方应用 AppOps 权限的系统能力。
  • android.permission.UPDATE_APP_OPS_STATS:监听并更新全系统应用权限调用频率。
  • android.permission.QUERY_ALL_PACKAGES:全量扫描已安装应用包信息。
(2) 架构与调用拦截
  • IPC 框架层拦截器:基于 ColorOS IPC 框架(Epona)部署拦截管道:
    • Epona->LaunchComponentInterceptor(组件启动拦截)
    • Epona->CallComponentInterceptor(组件跨进程调用拦截)
    • Epona->CallProviderInterceptor(ContentProvider 查询拦截)
  • 风险规则与云控更新:内置 SQLite 数据库,维护风险应用库结构:
    INSERT OR REPLACE INTO `riskApps` (`packageName`,`riskName`,`riskDesc`,`riskLevel`,`certMd5`) VALUES (?,?,?,?,?)
    
    通过 InstructionReceiver 监听 com.oplus.familyguard.action.ACTION_HANDLE_SECURITY_EVENT_INSTRUCTION 与 coloros.intent.action.BROADCAST_SERVER_INSTRUCTION,支持云端动态下发策略对特定包名或证书签名的应用实施执行限制。
  • 数据回流:内置 DcsUploadUtil.kt,应用拦截记录与特征 Hash 校验数据最终回流至 DCS 遥测节点。

05. com.coloros.remoteguardservice(远程守护后台服务)

  • 安装路径:/product/priv-app/RemoteGuardService/RemoteGuardService.apk
  • 组件属性:家庭守护与应用使用时长统计的后台服务。
  • 依赖关系:元数据中配置了 queriesPackages:
    com.coloros.familyguard      // 家庭守护
    com.coloros.digitalwellbeing // 数字健康
    com.android.launcher3        // 桌面启动器
    com.heytap.openid            // OAID 服务
    
  • 实现逻辑:包含 ActivityMonitorImpl、AppUsageDBUtil 及 BatteryChargingTracker 模块,通过 AppUsageProvider 聚合记录应用的前台运行生命周期(包含 usageMillsBeforeRemove、isScreenOnWithoutKeyguard 等细粒度指标)。

3. 硬件基带透传与商业画像闭环

06. com.qualcomm.qti.devicestatisticsservice(高通芯片级设备统计服务)

  • 安装路径:/product/app/DeviceStatisticsService/DeviceStatisticsService.apk
  • 组件属性:高通(Qualcomm Technologies, Inc.)为骁龙芯片组提供的硬件遥测与 Radio 状态同步服务。
(1) Radio HAL 接口绑定

代码通过 AIDL / HIDL 跨进程连接高通专有 Radio HAL:

vendor.qti.hardware.radio.internal.deviceinfo.IDeviceInfo/deviceinfo
[email protected]::IDeviceInfo
(2) 数据交互分析

在 DeviceInfoAidlClient 中实现了以下方法调用:

sendDeviceInteractiveInfo()  // 向基带实时同步设备的“交互状态”(屏幕亮灭、是否正处于用户触控交互中)
sendDevicePowerInfo()        // 向基带同步电池容量、电量百分比及省电模式状态
ACTION_RADIO_POWER_STATE_CHANGED // 监听射频电源状态变更
  • 技术影响:除用于基带射频动态功耗调整外,该通道使得高通专有诊断系统(Diag / QMI 日志体系)能够获得毫秒级对齐的屏幕亮灭与用户触控时间戳,实现硬件通信日志与物理交互行为的精确对齐。

07. com.heytap.openid(HeyTap OpenID / MSA OAID 标识符服务)

  • 安装路径:/product/priv-app/OpenID/OpenID.apk
  • 组件属性:移动安全联盟(CAICT / MSA)在 ColorOS 体系下的设备标识符颁发模块。
逆向关键发现:云控状态管理
  • 负责向全系统分发 OAID(匿名设备标识符)、VAID(开发者匿名标识符)与 AAID(应用匿名标识符)。
  • 字节码中包含了以下字段:
    oaidStatusByCloud
    oaidStatusByUser
    ERR_OAID_CLOSE_BY_CLOUD
    ALTER TABLE oaid_status_info ADD COLUMN oaidStatusECM INTEGER DEFAULT -1 NOT NULL
    
    逆向逻辑表明,OAID 的开启与分发状态受服务端下发配置(oaidStatusByCloud)控制,云端策略具备对本地用户设置状态的检查与干预能力。

08. com.opos.ads(系统级广告引擎)

  • 安装路径:/product/app/ADS/ADS.apk
  • 组件属性:ColorOS 系统级广告投放、竞价与效果归因 SDK。
逆向关键发现:MDP UserTrace 追踪管道
  • 广告竞价与策略接口:
    • https://adx.ads.heytapmobi.com/v1/mixapi/ad_list(多广告源聚合竞价与物料拉取)
    • https://adx.ads.heytapmobi.com/ads/system_apk/stragety(系统级 APK 广告策略下发)
  • 用户行为追踪通信(直连移动营销平台 MDP):
    • 根域名:https://mdp-usertrace-cn.heytapmobi.com
    • 接口路径:/usertrace/log/business/config、/usertrace/log/business/report、/usertrace/log/business/upload
    • 数据对象:UserTraceConfigDto,负责上报广告位曝光时长、设备指纹、用户点击坐标及转化路径。

09. com.oplus.deepthinker(情境感知与用户画像端侧大脑)

  • 安装路径:/system_ext/priv-app/DeepThinker/DeepThinker.apk(APK 体积约 26MB)
  • 组件属性:ColorOS 内部最庞大的端侧 AI 学习与用户画像(User Profile)分析引擎。
(1) 特权权限矩阵
android.permission.READ_SMS                  // 读取短信记录
android.permission.READ_CALL_LOG              // 读取通话记录
android.permission.READ_CALENDAR              // 读取日程与日历事件
android.permission.ACCESS_FINE_LOCATION       // 高精度 GPS 定位
android.permission.PACKAGE_USAGE_STATS        // 应用使用统计
com.coloros.alarmclock.permission.ACCESS_CLOCK_PLATFORM // 读取系统闹钟配置
  • 系统通知监听服务:注册了 DtNotificationListenerService,具备直接获取全系统所有第三方应用通知栏文本内容的特权能力。
(2) 16 项端侧 AI 能力

在 com.oplus.deepthinker.ability 包中反编译出 16 个核心特征工程模块:

ai/activityrecognize  // 运动姿态识别(静止/步行/跑步/车载出行)
ai/appscene           // 应用使用场景推断(音视频/会议/游戏)
ai/apptype            // 应用分类打标(理财/社交/电商/资讯等)
ai/appunuse           // 僵尸应用检测
ai/appusagesort       // 应用使用频率排序
ai/awareness          // 综合情境感知
ai/cityfence          // 城市级地理围栏
ai/deepsleep          // 睡眠周期推算(结合充电状态、熄屏时长与闹钟设置)
ai/eventassociation   // 事件关联分析
ai/idlescreen         // 屏幕空闲行为模式
ai/intentdecision     // 用户意图决策引擎
ai/nextapp            // 下一个启动 App 预测模型
ai/periodtopapps      // 时段高频应用统计
ai/residencefence     // 职住围栏算法(基于 AgglomerativeClustering 层次聚类算法推算“家庭”与“工作单位”经纬度)
ai/smartgps           // 智能 GPS 触发机制
ai/userprofile        // 用户全息画像系统
(3) 商业化画像链路打通证据

逆向代码证实 DeepThinker 的特征计算并非仅用于系统底层调度,而是直接与营销平台实现了数据打通:

  • 画像与 OAID 绑定:方法 getUserProfileResultByOpenIdList 直接将 DeepThinker 在端侧推算出的用户画像标签与 com.heytap.openid(OAID)关联映射。
  • MDP 营销数据平台对接:代码中直接引用 local_userprofile_mdp_config.json 与 localUserprofileMdpList。
  • 本地画像库持久化:本地维护 userProfile.db 数据库,持久化存储包括 WorkDayOpenLabel(工作日特征)、ResidenceOpenLabel(常驻地特征)、PublicRideAction(公共出行)、NfcEvent(NFC 刷卡记录)、NearPoiAction(周边兴趣点行为)等用户标签。

10. com.android.adservices.api(Android Privacy Sandbox 广告服务)

  • 安装路径:/apex/com.android.adservices/priv-app/[email protected]/AdServicesApk.apk
  • 组件属性:Google 在 Android 14/15 官方基线中推行的系统级隐私沙盒广告归因与竞价服务。
  • 核心服务结构:
    • TopicsService(android.adservices.TOPICS_SERVICE):基于设备日常应用使用频次,由系统直接在本地计算并生成粗粒度兴趣主题(Topics),供第三方广告 SDK 免显式权限读取。
    • AdSelectionService(android.adservices.adselection.AD_SELECTION_SERVICE):在手机本地运行 Protected Audience / FLEDGE 广告竞价算法。
    • MeasurementService(android.adservices.MEASUREMENT_SERVICE):负责跨应用广告转化归因与上报。

三、 全链路调用时序还原

将各组件在运行时的 Binder IPC 与网络交互关联还原,整体调用链如下:

sequenceDiagram
    autonumber
    participant Net as 网络/基带/传感器<br/>(Wi-Fi / 蜂窝基站 / GPS)
    participant Carrier as 运营商服务<br/>(RegService / CTAutoRegist)
    participant DCS as 遥测总线<br/>(com.oplus.statistics.rom)
    participant AI as 端侧AI画像中枢<br/>(DeepThinker)
    participant ID as 标识符中心<br/>(HeyTap OpenID)
    participant ADS as 广告系统<br/>(OPOS Ads / Privacy Sandbox)

    Net->>Carrier: 检测到SIM卡变动/网络接入/周边Wi-Fi扫描
    Carrier->>Carrier: 底层静默短信 / 定时上报IMEI/ICCID/CellID/周边BSSID列表
    Net->>DCS: 屏幕亮灭/应用安装卸载/前台启停/通知文本
    DCS->>DCS: 通过 HttpDNS 直连 IP 绕过本地拦截,上报 HeyTap 遥测云端
    DCS->>AI: 传输应用使用习惯、日历日程、短信与通知文本
    AI->>AI: 运行层次聚类模型,推算职住经纬度、作息规律与兴趣标签
    AI->>ID: 将画像标签通过 getUserProfileResultByOpenIdList 绑定至 OAID
    ID->>ADS: 提供带精准画像标签的 OAID 与人群包
    ADS->>ADS: 在系统广告位投放针对性物料,上报 UserTrace 转化日志

四、 极客防护与安全停用方案

1. 停用方式说明

在 Android 系统中,不建议使用 pm uninstall -k --user 0 彻底删除系统组件,避免在系统后续大版本 OTA 时因找不到预置包元数据引发开机向导报错或 Bootloop。
推荐使用 pm disable-user --user 0 将目标组件状态标记为 disabled-user(enabled=3)。此时该组件无法接收系统广播唤醒、无常驻进程、无后台网络请求,同时包体元数据仍完整保留在系统分区中,具备 100% 无损随时恢复能力。

2. 停用命令清单

# 连接设备后进入 ADB Shell
adb shell

# 一、 运营商常驻管理探针(Wi-Fi/蓝牙扫描与静默短信)
pm disable-user --user 0 com.coloros.regservice
pm disable-user --user 0 com.oppo.ctautoregist

# 二、 厂商遥测与安全审计
pm disable-user --user 0 com.oplus.statistics.rom
pm disable-user --user 0 com.coloros.securityguard
pm disable-user --user 0 com.coloros.remoteguardservice

# 三、 硬件基带交互透传
pm disable-user --user 0 com.qualcomm.qti.devicestatisticsservice

# 四、 端侧行为画像与商业广告追踪
pm disable-user --user 0 com.oplus.deepthinker
pm disable-user --user 0 com.heytap.openid
pm disable-user --user 0 com.opos.ads
pm disable-user --user 0 com.android.adservices.api

3. 组件停用影响与依赖对照表

组件包名停用后的正向收益潜在系统功能影响与注意事项
com.coloros.regservice切断周边 Wi-Fi 列表、蓝牙日志及应用时长的采集无负面影响。移动 SIM 卡正常通话、5G 上网完全不受影响。
com.oppo.ctautoregist阻止电信卡后台静默短信注册及 15 天周期重发电信卡正常通话、VoLTE、短信收发完全正常。注:若需使用天通卫星通信电话功能,建议保留。
com.oplus.statistics.rom阻断全系统应用事件上报,切断 HttpDNS 遥测隧道降低后台待机唤醒;设置中的“用户体验改进计划”完全失效。
com.coloros.securityguard解除对非商店/第三方 APK 安装的权限强制干预安装未知来源应用不再受系统弹窗拦截;需用户自行核验应用安全性。
com.coloros.remoteguardservice消除后台守护常驻,停止屏幕使用细节统计“家庭守护/长辈关爱”功能不可用。
com.qualcomm.qti.devicestatisticsservice阻止亮灭屏与触控交互时间戳透传至高通基带基带蜂窝通信正常工作,日常无异常。
com.heytap.openid第三方应用无法获取 OAID 设备标识符,阻断跨 App 追踪极个别严格依赖 OAID 校验设备防刷的应用可能需降级使用其他标识。
com.opos.ads屏蔽系统内置广告 SDK,广告位直接空白或失效界面更加纯净。
com.oplus.deepthinker停止职住经纬度聚类、作息推算与全局通知文本监听“小布建议”智能卡片(如下班通勤提醒、下一个 App 预测)停止服务;后台省电与性能表现提升。
com.android.adservices.api阻断 Android 14+ 系统级隐私沙盒广告本地竞价与归因第三方广告 SDK 无法通过系统沙盒接口获取 Topics 标签。

4. 恢复方法

如后续因业务需要恢复某一组件,执行:

adb shell pm enable <目标包名>
# 例:adb shell pm enable com.coloros.regservice
Table of Contents