# CVE-2022-0847 > [!high] DirtyPipe - Escalada de Privilégio no Kernel Linux > Vulnerabilidade no mecanismo de pipe do kernel Linux permite sobrescrever conteúdo de arquivos read-only, viabilizando escalada de privilégio para root. Afeta servidores Linux com kernel 5.8+, incluindo ambientes de contêiner e cloud. ## Visão Geral A [[cve-2022-0847|CVE-2022-0847]], conhecida como **DirtyPipe**, é uma vulnerabilidade no mecanismo de **pipes** do kernel Linux descoberta pelo pesquisador Max Kellermann em fevereiro de 2022. A falha permite que um usuário sem privilégios sobrescreva páginas em cache de arquivos arbitrários, incluindo arquivos somente leitura de propriedade do root, viabilizando escalada de privilégio completa para root. O nome "DirtyPipe" é uma referência à famosa vulnerabilidade "DirtyCow" (CVE-2016-5195), à qual é conceitualmente similar mas distinta técnicamente. A DirtyPipe afeta kernels Linux 5.8 e superiores, impactando uma gama significativa de servidores modernos, incluindo instâncias em nuvem AWS, GCP e Azure rodando kernels recentes. Ambientes de contêiner (Docker, Kubernetes) rodando em kernels vulneráveis também são afetados, onde um contêiner comprometido pode utilizar esta CVE para escapar para o host. O impacto para infraestrutura cloud e servidores Linux corporativos no Brasil é direto, especialmente em organizações com ambientes DevOps modernos. ## Detalhes Técnicos | Campo | Valor | |-------|-------| | Tipo | Escalada de Privilégio Local (LPE) | | Componente | Kernel Linux - pipe_write() | | Vetor | Local (requer usuário padrão) | | Complexidade | Baixa | | PoC Público | Sim (múltiplos, 1 dia após divulgação) | ### Como Funciona O bug está em `pipe_write()` - a flag `PIPE_BUF_FLAG_CAN_MERGE` não é limpa corretamente ao alocar novos buffers de pipe. Um atacante pode: 1. Criar um pipe e preenchê-lo completamente 2. Esvaziar o pipe (mas manter a flag `CAN_MERGE`) 3. Fazer splice de um arquivo somente-leitura no pipe 4. Escrever dados no pipe - que serão mesclados na página do arquivo Resultado: escrita em arquivo somente-leitura, incluindo `/etc/passwd` ou binários SUID. ## TTPs Associadas | Técnica | Descrição | |---------|-----------| | [[t1068-exploitation-for-privilege-escalation\|T1068]] | Exploração DirtyPipe para root | | [[t1548-001-setuid-and-setgid\|T1548.001]] | Modificação de binários SUID | | [[t1059-004-unix-shell\|T1059.004]] | Shell root pós-exploração | | [[t1611-escape-to-host\|T1611]] | Escape de contêiner em ambientes Docker | ## Detecção e Defesa **Mitigações:** - Atualizar kernel para 5.16.11, 5.15.25 ou 5.10.102+ - [[m1051-update-software\|M1051]] - Atualização urgente do kernel Linux - Monitorar modificações em arquivos `/etc/passwd`, `/etc/shadow`, binários SUID - [[m1038-execution-prevention\|M1038]] - Seccomp profiles para limitar syscalls em contêineres > [!latam] Relevância para Brasil e LATAM > Servidores Linux com kernel 5.8+ são prevalentes em infraestrutura cloud e DevOps de empresas brasileiras de tecnologia, fintechs e startups. Em ambientes Kubernetes e Docker, DirtyPipe pode permitir que um contêiner comprometido escape para o nó do cluster, comprometendo toda a infraestrutura de produção. Organizações com ciclos longos de atualização de kernel são vulneráveis. ## Referências - [Max Kellermann - DirtyPipe Technical Write-up](https://dirtypipe.cm4all.com/) - [NVD - CVE-2022-0847](https://nvd.nist.gov/vuln/detail/CVE-2022-0847) - [Linux Kernel Security Advisory](https://lkml.org/lkml/2022/2/21/1021)