Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
dirtyfrag-patches — Correções de kernel para a vulnerabilidade Dirty Frag (CVE-2026-43284, CVE-2026-43500) | Kitploit
Ferramentas/GitHubGitHub/metalx1993/dirtyfrag-patches
Escalada de PrivilégiosAnálise de VulnerabilidadesExploração
GitHubmetalx1993/dirtyfrag-patches

dirtyfrag-patches

Correções de kernel para a vulnerabilidade Dirty Frag (CVE-2026-43284, CVE-2026-43500)

Ver Repositório
57há 4 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Dirty Frag — Patches de Kernel

Série de patches para a classe de vulnerabilidade Dirty Frag descoberta por Hyunwoo Kim (@v4bel).

Dirty Frag permite que um usuário local sem privilégios sobrescreva bytes arbitrários do cache de páginas de arquivos somente leitura (ex.: /usr/bin/su, /etc/passwd), levando à escalada local de privilégios para root em todas as principais distribuições Linux.


⚠️ Atribuição

Os patches neste repositório NÃO foram escritos pelo mantenedor deste repositório.

  • CVE-2026-43284 (patch ESP): de autoria de Hyunwoo Kim (@v4bel) e Kuan-Ting Chen. Integrado ao mainline do kernel Linux no commit f4c50a4034e6.
  • CVE-2026-43500 (patch RxRPC): de autoria de Hyunwoo Kim (@v4bel). Enviado para a lista de discussão netdev em afKV2zGR6rrelPC7@v4bel, aguardando integração.

Este repositório é um espelho formatado desses patches, reunidos aqui por conveniência em formato pronto para git am. Todo o crédito vai para os autores originais. Pesquisa original e PoC: https://github.com/V4bel/dirtyfrag


Patches

ArquivoCVESubsistemaStatus
0001-net-xfrm-fix-page-cache-write-via-esp-splice-CVE-2026-43284.patchCVE-2026-43284net/ipv4/esp4.c, net/ipv6/esp6.c, net/ipv4/ip_output.c, net/ipv6/ip6_output.c✅ Integrado no mainline (f4c50a4034e6)
0002-net-rxrpc-fix-page-cache-write-via-rxkad-splice-CVE-2026-43500.patchCVE-2026-43500net/rxrpc/call_event.c, net/rxrpc/conn_event.c⏳ Enviado para a ML netdev (afKV2zGR6rrelPC7@v4bel), aguardando integração

Versões de Kernel Afetadas

  • CVE-2026-43284 (ESP): kernels de 4.10 (commit cac2661c53f3, 2017-01-17) até 6.x anteriores ao f4c50a4034e6
  • CVE-2026-43500 (RxRPC): kernels de 6.4 (commit 2dc334f1a63a, 2023-06-08) até o upstream (nenhum patch integrado ainda)

Como Aplicar

Aplicar em uma árvore de fontes do kernel

git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
cd linux

# Aplicar patch 1 (ESP — CVE-2026-43284)
git am 0001-net-xfrm-fix-page-cache-write-via-esp-splice-CVE-2026-43284.patch

# Aplicar patch 2 (RxRPC — CVE-2026-43500)
git am 0002-net-rxrpc-fix-page-cache-write-via-rxkad-splice-CVE-2026-43500.patch

Aplicar com patch (se o git am falhar devido a desvio de contexto)

patch -p1 < 0001-net-xfrm-fix-page-cache-write-via-esp-splice-CVE-2026-43284.patch
patch -p1 < 0002-net-rxrpc-fix-page-cache-write-via-rxkad-splice-CVE-2026-43500.patch

Mitigação Imediata (sem necessidade de recompilar o kernel)

Se você não puder aplicar o patch imediatamente, coloque os módulos vulneráveis na lista negra:

sudo sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' \
    > /etc/modprobe.d/dirtyfrag.conf && \
    rmmod esp4 esp6 rxrpc 2>/dev/null; \
    echo 3 > /proc/sys/vm/drop_caches"

Aviso: Remover esp4/esp6 desativa o IPsec ESP. Avalie o impacto antes de aplicar em sistemas de produção.


Resumo Técnico

Causa Raiz

Ambas as variantes compartilham a mesma causa raiz: o caminho de splice() de cópia zero do kernel insere uma página do cache de páginas somente leitura diretamente em um frag de skb sem semântica de copy-on-write. Operações criptográficas subsequentes in-place então escrevem nessa página do cache de páginas, modificando permanentemente o conteúdo do arquivo em cache.

splice(file_fd → pipe → socket)
         │
         ▼
  skb->frags[0].page = &page_cache_page_P   <- sem CoW!
         │
         ▼
  [esp_input / rxkad_verify_packet_1]
  descriptografia AEAD/fcrypt in-place  src == dst == &P
         │
         ▼
  STORE para page_cache_page_P     <- escrita arbitrária no cache de arquivo somente leitura

Estratégia de Correção

VarianteAbordagem
ESPMarcar frags de splice com SKBFL_SHARED_FRAG; verificar essa flag em esp_input()/esp6_input() para forçar skb_cow_data() antes da criptografia in-place
RxRPCEstender a verificação de skb_cloned() para (skb_cloned(skb) || skb->data_len) para que skbs não lineares (que podem conter frags de splice) sejam sempre copiados antes da descriptografia in-place

Referências

  • PoC original e artigo: https://github.com/V4bel/dirtyfrag
  • CVE-2026-43284: https://www.cve.org/CVERecord?id=CVE-2026-43284
  • CVE-2026-43500: https://www.cve.org/CVERecord?id=CVE-2026-43500
  • Commit no mainline (correção ESP): https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f4c50a4034e62ab75f1d5cdd191dd5f9c77fdff4
  • Patch RxRPC (ML netdev): https://lore.kernel.org/all/afKV2zGR6rrelPC7@v4bel/
  • Copy Fail (vulnerabilidade ancestral): https://copy.fail/
  • Dirty Pipe (mesma classe de bug): https://dirtypipe.cm4all.com/
Baixar ferramenta