# DC0060 — Service Creation
## Descrição
O **Service Creation** registra o evento de registro de um novo serviço ou daemon no sistema operacional. No Windows, isso ocorre quando uma nova entrada é adicionada ao registro em `HKLM\SYSTEM\CurrentControlSet\Services`, via `sc creaté`, `New-Service` (PowerShell), ou diretamente via API `CreateService`. No Linux, corresponde à criação de uma nova unidade systemd, script SysV init, ou equivalente. No macOS, à adição de um LaunchDaemon ou LaunchAgent.
Serviços são um dos mecanismos de persistência mais utilizados por adversários — eles sobrevivem a reboots, rodam com privilégios elevados, e são iniciados automaticamente pelo sistema operacional sem interação do usuário. O MITRE ATT&CK categoriza isso em [[t1543-create-or-modify-system-process|T1543-creaté-or-modify-system-process]] (Windows Service) e [[t1569-system-services|T1569-system-services]] (Service Execution). Ransomware, RATs e ferramentas C2 frequentemente instalam serviços para garantir persistência persistente.
Além de persistência, a criação de serviços pode ser usada para executar código com privilégios de SYSTEM sem necessidade de uma sessão de usuário ativa. Ferramentas como `PsExec` da Sysinternals, amplamente usadas em movimento lateral por grupos APT e operadores de ransomware, criam temporariamente um serviço para execução remota — o Windows Event ID 7045 captura esse evento com o nome do serviço criado.
A correlação entre Service Creation e outros indicadores é poderosa: um serviço criado por um processo não-sistema, com executável em caminho de usuário (`AppData`, `Temp`, `Downloads`) ou sem assinatura digital, é altamente suspeito. Operadores do [[lockbit]] e [[blackcat]] criam serviços específicos para execução de payloads durante o ataque.
## Telemetria
| Plataforma | Event ID | Descrição | Log Source |
|---|---|---|---|
| Windows | 7045 | Novo serviço instalado no sistema | System.evtx |
| Windows | 4697 | Serviço instalado (auditoria habilitada) | Security.evtx |
| Windows | Sysmon 1 | Processo `sc.exe` ou `services.exe` criando serviço | Sysmon |
| Windows | Sysmon 13 | Modificação de registry em `CurrentControlSet\Services` | Sysmon |
| Linux | Auditd `inotify` | Criação de arquivo em `/etc/systemd/system/` | Auditd |
| Linux | `journalctl` | Novas unidades systemd habilitadas | systemd Journal |
| macOS | `launchctl` / FSEvents | Novos arquivos em `/Library/LaunchDaemons/` | FSEvents / Unified Logs |
## Queries de Detecção
### KQL — Azure Sentinel / Microsoft Defender
```kql
// Novo serviço Windows criado com executável em caminho suspeito
DeviceEvents
| where ActionType == "ServiceInstalled"
| extend ServiceImagePath = tostring(AdditionalFields.ServiceImagePath)
| extend ServiceAccountName = tostring(AdditionalFields.ServiceAccountName)
| where not(ServiceImagePath has_any (@"C:\Windows\", @"C:\Program Files\", @"C:\Program Files (x86)\"))
| project Timestamp, DeviceName, ServiceImagePath, ServiceAccountName,
InitiatingProcessFileName, InitiatingProcessCommandLine
| order by Timestamp desc
```
### SPL — Splunk (com Windows Events + Sysmon)
```spl
(index=wineventlog source="WinEventLog:System" EventCode=7045)
OR
(index=wineventlog source="WinEventLog:Security" EventCode=4697)
| eval exe_path=coalesce(ServiceFileName, ServiceImagePath)
| where NOT (exe_path LIKE "C:\\Windows\\%"
OR exe_path LIKE "C:\\Program Files\\%"
OR exe_path LIKE "\\\\.\\%")
| eval risk=case(
like(exe_path, "%\\AppData\\%"), "critical",
like(exe_path, "%\\Temp\\%"), "critical",
like(exe_path, "%\\Users\\%"), "high",
1=1, "medium")
| table _time, ComputerName, ServiceName, exe_path, ServiceAccountName, risk
| sort - risk, _time
```
## Técnicas Relacionadas
| Técnica | Nome | Relevância |
|---|---|---|
| [[t1543-create-or-modify-system-process\|T1543-creaté-or-modify-system-process]] | Create or Modify System Process | Criação de serviço Windows/Linux para persistência |
| [[t1569-system-services\|T1569-system-services]] | System Services | Execução de código via serviço recém-criado |
| [[t1053-scheduled-task-job\|T1053-scheduled-task-job]] | Scheduled Task/Job | Frequentemente usado em conjunto com criação de serviços |
## Contexto LATAM
> [!globe] Relevância Regional
> O Windows Event ID 7045 (instalação de serviço) é um dos controles de detecção mais acessíveis e de alto valor para SOCs brasileiros — especialmente para detectar uso de `PsExec` em movimento lateral (padrão comum em ataques de ransomware ao Brasil). A regra de detectar serviços criados com executável fora de `C:\Windows\` e `C:\Program Files\` tem alta precisão e cobre um amplo espectro de ataques, desde ransomware até APTs com persistência via serviços.
## Referências
- [MITRE ATT&CK — DC0060 Service Creation](https://attack.mitre.org/datasources/DS0019/#Service%20Creation)
- [Windows Event ID 7045 — Service Installed](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/dn319093(v=ws.11))
- [Windows Event ID 4697 — Service Installed](https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/event-4697)
- [[ds0019-service|DS0019 — Service]]
- [[t1543-create-or-modify-system-process|T1543-creaté-or-modify-system-process]]
- [[t1569-system-services|T1569-system-services]]