系统服务

系统服务滥用指攻击者通过创建或修改系统服务实现恶意代码执行的技术手段,既可用于实现持久化驻留,也可用于临时任务执行。Windows服务控制管理器(SCM)提供的远程服务管理接口(如OpenService、CreateService)常被攻击者利用,通过服务注册表项配置恶意启动参数。防御措施包括监控服务创建/修改事件、校验服务二进制文件签名,以及分析服务启动模式与系统基线的一致性。

为规避基于服务配置审计和行为分析的检测机制,攻击者发展出多维度的服务匿迹技术,通过动态注入、进程劫持、瞬时驻留等手法,将恶意操作深度嵌入系统服务管理框架,实现"无实体、低接触、高仿生"的新型服务攻击范式。

当前系统服务匿迹技术的共性在于突破传统服务攻击的实体依赖,构建虚实交织的攻击载体:动态服务注入通过内存操作规避注册表修改,实现"无痕"攻击;合法服务伪装模仿既有服务配置,达成"合法"伪装;短暂服务驻留压缩攻击生命周期,突破"持续存在即风险"的检测假设。三类技术均着眼于攻击载体与系统服务管理机制的深度融合,通过服务组件的合法功能调用链承载恶意负载,使得恶意行为在权限层级、进程树关系和资源访问模式等维度与正常服务活动高度同构,传统基于服务枚举、文件哈希校验或启动频率统计的检测手段难以有效识别。

匿迹技术的演进迫使防御体系向内存取证、注册表行为建模等深度检测方向转型,需构建服务操作意图识别模型,结合注册表键值操作序列分析与服务进程运行时监控,实现对隐蔽服务攻击的精准捕获。

ID: T1569
Sub-techniques:  T1569.001, T1569.002, T1569.003
Tactic: 攻击执行
Platforms: Linux, Windows, macOS
Supports Remote:  Yes
Version: 1.3
Created: 10 March 2020
Last Modified: 20 September 2024

匿迹效应

效应类型 是否存在
特征伪装
行为透明
数据遮蔽
时空释痕

特征伪装

攻击者通过克隆合法服务元数据(如服务名称、描述信息)和盗用有效数字签名,使恶意服务在注册表、任务管理器等系统界面中呈现为合法组件。例如将恶意DLL路径注入Windows标准服务注册表项,或使用PsExec等合法管理工具触发服务操作,使得攻击流量在进程树、注册表结构和命令行参数等维度与正常运维活动高度相似。

行为透明

系统服务本身是操作系统中的关键组件,广泛用于日常管理和维护,这为攻击者提供了隐藏其行为的天然伪装。攻击者可以利用合法的命令行工具来对服务进行操作,其调用行为在系统日志中不会显得异常,通过模仿正常的服务操作模式,将恶意行为嵌入合法活动中,显著减少行为特征的可疑性。

时空释痕

动态服务注入技术使得传统基于静态特征检测或服务文件完整性校验的防御手段失效,短暂性服务驻留技术将服务生命周期压缩至秒级,利用服务控制器审计延迟窗口实现"创建-执行-删除"的瞬时操作,使得攻击痕迹在时空维度上快速消散,传统审计机制难以有效捕获。

Procedure Examples

ID Name Description
G0139 TeamTNT

TeamTNT has created system services to execute cryptocurrency mining software.[1]

Mitigations

ID Mitigation Description
M1040 Behavior Prevention on Endpoint

On Windows 10, enable Attack Surface Reduction (ASR) rules to block processes created by PsExec from running. [2]

M1026 Privileged Account Management

Ensure that permissions disallow services that run at a higher permissions level from being created or interacted with by a user with a lower permission level.

M1022 Restrict File and Directory Permissions

Ensure that high permission level service binaries cannot be replaced or modified by users with a lower permission level.

M1018 User Account Management

Prevent users from installing their own launch agents or launch daemons.

Detection

ID Data Source Data Component Detects
DS0017 Command Command Execution

Monitor command-line invocations for tools capable of creating or modifying system services (e.g., systemctl on Linux, sc.exe on Windows, launchctl on macOS).

Analytic 1 - Unusual service modification tools.

sourcetype=command_logs| search command IN ("systemctl", "sc", "launchctl")

DS0022 File File Modification

Track changes to critical service-related files (e.g., /etc/systemd/system/, /etc/init.d/, and service binaries on Linux, C:\Windows\System32\services.exe`` on Windows, or/Library/LaunchDaemons``` on macOS).

Analytic 1 - Unusual file modifications related to system services.

sourcetype=file_monitor| search file_path IN ("/etc/systemd/system/", "/etc/init.d/", "/Library/LaunchDaemons/*", "C:\Windows\System32\services.exe")

DS0009 Process Process Creation

Monitor newly executed processes that may abuse system services or daemons to execute commands or programs.

Analytic 1 - New processes abusing system services.

sourcetype=process_logs| search process IN ("services.exe", "systemd", "launchd")

DS0019 Service Service Creation

Track the creation of new services, which could indicate adversarial activity aimed at persistence or execution.

Analytic 1 - Monitors service creation and modification activities

sourcetype=service_logs| search service_action="create" OR service_action="modify"| where user NOT IN ("known_admins") AND service_name NOT IN ("known_services")

DS0024 Windows Registry Windows Registry Key Modification

Monitor for changes made to windows registry keys and/or values that may abuse system services or daemons to execute commands or programs.

Analytic 1 - Malicious service modification

sourcetype= Sysmon EventCode=12| search registry_path="HKLM\SYSTEM\CurrentControlSet\Services\*" | where registry_action="modified" AND user NOT IN ("known_admins")

References