# DC0023 - Named Pipe Creation > [!info] Monitora a criação de named pipes no Windows — mecanismos de comunicação entre processos (IPC). Pipes com nomes característicos de frameworks C2 (Cobalt Strike, Metasploit) são indicadores confiáveis de comprometimento ativo. ## Descrição Named Pipe Creation monitora a criação de named pipes no Windows, que são mecanismos de comunicação entre processos (IPC) que permitem troca de dados entre processos locais ou remotos. Named pipes são amplamente abusados por ferramentas de ataque como Cobalt Strike (que cria pipes com nomes característicos como `\\\\.\\pipe\\msagent_*`), por técnicas de impersonation de tokens e como canal de comunicação para movimentação lateral via SMB. A detecção de pipes com nomes incomuns é um indicador confiável de frameworks C2. ## Fonte de Dados Parent: [[ds0023-named-pipe|DS0023 - Named Pipe]] ## Pipeline de Detecção ```mermaid graph TB A["🔗 Sysmon Event ID 17<br/>PipeCreated"] --> B["📛 Nome do Pipe<br/>Capturado"] B --> C{"🎯 Nome em Lista<br/>de C2 Conhecidos?"} C -->|Cobalt Strike| D["🚨 Alerta P1<br/>CS Beacon Pipe"] C -->|Metasploit| E["🚨 Alerta P1<br/>Meterpreter Pipe"] C -->|Aleatório / Hash| F["🟧 Alerta P2<br/>Pipe Suspeito"] C -->|Pipe do Sistema| G{"🔍 Processo<br/>Criador Esperado?"} G -->|Não| H["🟧 Investigar<br/>Contexto"] G -->|Sim| I["✔️ Pipe<br/>Legítimo"] classDef p1 fill:#e74c3c,color:#ecf0f1 classDef p2 fill:#e67e22,color:#ecf0f1 classDef ok fill:#2ecc71,color:#2c3e50 classDef proc fill:#2c3e50,color:#ecf0f1 class D,E p1 class F,H p2 class I ok class A,B,C,G proc ``` ## O Que Monitorar - Sysmon Event ID 17 (PipeCreated) e Event ID 18 (PipeConnected) - Named pipes com nomes aleatórios ou que imitam pipes do sistema - Pipes criados por processos que normalmente não usam IPC (Office, browsers) - Pipes conhecidos de frameworks C2: `msagent_`, `mojo.`, `postex_`, `status_` - Conexões a pipes remotos via SMB (`\\host\pipe\...`) - Pipes usados por serviços maliciosos para comunicação com processos injetados - Pipes criados em sequência com ações de impersonation de token ## Técnicas Detectadas | Técnica | ID | Como Detectar | |---------|-----|---------------| | Component Object Model | [[t1559-inter-process-communication\|T1559.001]] | Pipes COM usados para comunicação maliciosa entre processos | | Token Impersonation/Theft | [[t1134-access-token-manipulation\|T1134.001]] | Pipe criado para impersonation de token de cliente | | SMB/Windows Admin Shares | [[t1021-remote-services\|T1021.002]] | Conexão a pipe remoto via SMB para execução lateral | | Process Injection | [[t1055-process-injection\|T1055]] | Pipe usado como canal de comunicação entre processo injetor e payload | ## Implementação **Sysmon Event IDs 17 e 18:** ```xml <RuleGroup name="PipeEvent" groupRelation="or"> <PipeEvent onmatch="include"> <EventType condition="is">CreatePipe</EventType> <PipeName condition="contains">msagent</PipeName> <PipeName condition="contains">postex</PipeName> </PipeEvent> </RuleGroup> ``` **Lista de pipes conhecidos de frameworks C2:** - Cobalt Strike: `msagent_*`, `status_*`, `postex_*`, `mojo.*` - Metasploit: `meterpreter_*` - PoshC2: pipes aleatórios de 8 caracteres **Ferramenta de baseline:** Usar `pipelist.exe` (Sysinternals) para inventariar pipes normais do ambiente e criar lista de exclusão. **Ferramentas:** Sysmon, CrowdStrike Falcon, Microsoft Defender for Endpoint, Elastic Endpoint, Brim/Zeek para pipes remotos via SMB. ## Consultas KQL — Microsoft Sentinel / Defender ### Pipes Conhecidos de Frameworks C2 ```kql // DC0023 - Named pipes associados a Cobalt Strike e outros frameworks C2 let known_c2_pipes = dynamic([ "msagent_", "status_", "postex_", "mojo.", "meterpreter", "lsarpc", "samr", "netlogon", "srvsvc" ]); // Nota: Combinar com Sysmon Event ID 17 via pipeline de ingestão DeviceEvents | where Timestamp > ago(1d) | where ActionType == "NamedPipeEvent" | where AdditionalFields has_any (known_c2_pipes) | where InitiatingProcessFileName !in~ ( "svchost.exe", "lsass.exe", "csrss.exe", "System", "wininit.exe" ) | project Timestamp, DeviceName, InitiatingProcessFileName, InitiatingProcessCommandLine, InitiatingProcessAccountName, AdditionalFields | order by Timestamp desc ``` ### Pipe Remoto via SMB - Lateral Movement ```kql // DC0023 - Conexão a named pipe remoto via SMB (possível movimento lateral) DeviceNetworkEvents | where Timestamp > ago(7d) | where RemotePort == 445 | where InitiatingProcessFileName !in~ ( "System", "svchost.exe", "lsass.exe" ) | join kind=inner ( DeviceProcessEvents | where FileName in~ ("cmd.exe", "powershell.exe", "wmic.exe", "psexec.exe") | project DeviceName, InitiatingProcessId = ProcessId, CmdLine = ProcessCommandLine ) on DeviceName | project Timestamp, DeviceName, RemoteIP, RemotePort, InitiatingProcessFileName, CmdLine | order by Timestamp desc ``` ## Contexto LATAM > [!latam] Relevância Regional > **Cobalt Strike é o framework ofensivo dominante em ataques APT e ransomware na América Latina.** Grupos documentados em operações no Brasil em 2024-2025 — incluindo afiliados do **RansomHub** e **Black Basta** — utilizam Cobalt Strike como plataforma C2 principal. O mapeamento de pipes característicos do CS (`msagent_*`, `postex_*`) é uma das detecções mais confiáveis para identificar beacons ativos em endpoints comprometidos. Em ambientes brasileiros onde EDR avançado (CrowdStrike, SentinelOne) ainda não tem penetração total, o **Sysmon Event ID 17** combinado com regras de named pipe é uma alternativa de baixo custo para detectar C2 ativo antes do deployment do ransomware. ## Referências - [MITRE ATT&CK - DS0023 Named Pipe](https://attack.mitre.org/datasources/DS0023/) - [Cobalt Strike Named Pipes - MDSec](https://www.mdsec.co.uk/2021/11/) - [Sysmon Event ID 17/18 - Microsoft](https://learn.microsoft.com/en-us/sysinternals/downloads/sysmon) - [C2 Pipe Detection - The DFIR Report](https://thedfirreport.com/)