了解Microsoft Compatibility Telemetry
Microsoft Compatibility Telemetry是Windows操作系统中的一个组件,用于收集和发送有关用户设备上软件和硬件的使用数据。主要目的是让微软能够分析这些遥测数据,发现程序和设备与最新版本Windows的兼容性问题,然后进行改进和修复。
主要收集以下方面信息:
1、硬件配置信息,例如处理器型号、内存大小、显卡信息等。
2、软件使用情况,包括安装的应用程序、其版本号以及运行时的性能数据。
3、设备驱动程序信息,用于分析设备与操作系统的兼容性情况。
4、错误报告和崩溃信息,帮助微软了解用户遇到的问题并改进系统稳定性。等等
收集到的数据经过处理和匿名化后,通过加密方式传输到Microsoft的服务器。这些数据使用了TELEMETRY组件进行封装和传输,以保护用户隐私和数据安全。
了解CompatTelRunner
CompatTelRunner.exe是Microsoft Compatibility Telemetry的实现,程序位于:C:WindowsSystem32CompatTelRunner.exe,CompatTelRunner.exe有三种运行模式:Nighlty、Maintenance、Oobe,运行时会首先检查是否满足以下条件。
1、系统是Windows 10/Server 2019
2、系统是Windows客户端版本
3、HKEY_LOCAL_MACHINE SoftwareMicrosoftWindowsCurrentVersionPoliciesDataCollectionCommercialDataOptIn是DWORD类型 并且不为0
了解Microsoft Compatibility Appraiser
Microsoft Compatibility Appraiser(Microsoft兼容性评估程序)是Windows操作系统中的一个计划任务,用于评估已安装应用程序的兼容性和性能。这个组件与 CompatTelRunner.exe 一起工作,共同完成兼容性分析的任务。
1、功能和目的:Microsoft Compatibility Appraiser主要用于收集应用程序的相关信息,并对其进行评估,以确定其在特定版本的Windows操作系统上的兼容性和性能情况。
2、数据收集:Microsoft Compatibility Appraiser收集以下与应用程序有关的数据:
(1)应用程序列表:收集已安装的应用程序的名称、版本号等信息。
(2)使用情况数据:记录应用程序的使用频率、启动时间、占用资源等数据。
3、评估过程:Microsoft Compatibility Appraiser根据收集到的数据以及内部的评估算法,对每个应用程序进行评估。评估的内容包括但不限于:
(1)兼容性:判断应用程序是否与特定版本的Windows操作系统相互兼容。
(2)性能:评估应用程序对系统资源的占用情况,如CPU、内存和磁盘使用等。
4、用途:Microsoft Compatibility Appraiser的评估结果可以被其他Windows组件和工具使用,例如:
(1)Windows更新:评估结果可以用于确定哪些应用程序需要进行更新或修复,以提高其在特定版本的Windows操作系统上的兼容性和性能。
(2)应用程序兼容性工具:评估结果还可用于帮助开发人员和管理员识别应用程序的兼容性问题,并采取相应的解决措施。
实验步骤
1、创建一个新的项
在TelemetryController下面创建新的项
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionAppCompatFlagsTelemetryController
2、指定要加载的程序并设定运行模式。
新建一个REG_SZ类型的键(字符串值),键的值指向需要加载的程序,这里使用cs信标测试。
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionAppCompatFlagsTelemetryControllerWindowsCheck
创建指定运行模式
3、通过Microsoft Compatibility Telemetry启动CompatTelRunner.exe加载我们的程序。
手动执行计划任务:
schtasks /run /tn "MicrosoftWindowsApplication ExperienceMicrosoft Compatibility Appraiser"
Tips:1、该计划任务自动每天运行一次,如果不是可以手动更改一下。
2、计划任务会以system权限执行,所以上线cs也是system权限。
查看计划任务详细信息:
schtasks /query /tn "MicrosoftWindowsApplication ExperienceMicrosoft Compatibility Appraiser" /xml
成功上线,我的计划任务存在问题,这里手动执行CompatTelRunner也会加载恶意表项,不过权限是用户权限。
当CompatTelRunner.exe执行完毕,cs的进程不会中断。
彩蛋
总结复盘
原理:在目标计算机添加恶意的表项,再通过计划任务触发执行CompatTelRunner,CompatTelRunner执行时再加载我们的恶意表项。
优点:
1、microsoft compatibility telemetry是默认开启的。
2、CompatTelRunner从Win 2008开始即装载,适用性广。
3、可定制程度高,不仅仅可执行exe。并且会以system权限执行程序。
4、因为通过telemetry加载,所以可以绕过一些监管。
缺点:
1、依赖与计划任务触发,不能实时唤醒。
2、更改注册表需要高权限
原文始发于微信公众号(YongYe 安全实验室):权限维持二、Telemetry维权技术
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论