Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
XCP_ng_CVE-2026-43284_tester — Testador para CVE-2026-43284 | Kitploit
Ferramentas/GitHubGitHub/grabesec/xcp_ng_cve-2026-43284_tester
Análise de VulnerabilidadesExploraçãoTestes de PenetraçãoSegurança na NuvemAprendizado e EducaçãoExploração de BináriosLabs e Prática
GitHubgrabesec/xcp_ng_cve-2026-43284_tester

XCP_ng_CVE-2026-43284_tester

Testador para CVE-2026-43284

Ver Repositório
5há 3 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

Diagnóstico de Dirty Frag para XCP-ng — CVE-2026-43284

Platform Kernel CVE CVSS License

Uma ferramenta de diagnóstico da comunidade para determinar se um host XCP-ng dom0 está exposto ao CVE-2026-43284 ("Dirty Frag"), uma vulnerabilidade de escalonamento de privilégio local no subsistema xfrm-ESP do kernel Linux.

TL;DR — Todas as versões atuais do XCP-ng (8.1, 8.2, 8.3) que executam o kernel dom0 4.19 padrão estão dentro da faixa de código vulnerável. Nenhuma correção oficial do XCP-ng foi publicada até maio de 2026. Esta ferramenta informa definitivamente se o seu host está exposto e fornece uma mitigação provisória segura.


Contexto

"Dirty Frag" é uma vulnerabilidade de escalonamento de privilégio local divulgada publicamente em maio de 2026 pelo pesquisador Hyunwoo Kim (@v4bel). Ela explora um caminho rápido de descriptografia in-place no subsistema IPsec ESP do kernel Linux, introduzido em janeiro de 2017 (kernel 4.14+). Uma prova de conceito pública funcional permite obter um shell de root por meio de syscalls padrão, sem exigir exploits de kernel.

Duas CVEs foram publicadas:

CVESubsistemaIntroduzidoAplica-se ao XCP-ng 4.19?
CVE-2026-43284xfrm-ESP (esp4/esp6)kernel 4.14, jan/2017SIM
CVE-2026-43500RxRPC (rxkad)kernel 6.4, jun/2023Não — rxrpc.ko não fornecido

O XCP-ng não exige que o CVE-2026-43500 seja explorável. O caminho esp4 (CVE-2026-43284) por si só é suficiente, pois o dom0 do XCP-ng não possui política AppArmor e permite a criação de namespaces de usuário sem privilégios — o único pré-requisito que o caminho de exploração do esp4 exige. Consulte TECHNICAL.md para a análise completa.


O Que Esta Ferramenta Faz

O script de diagnóstico testa o pré-requisito necessário e suficiente para o CVE-2026-43284 no XCP-ng: se um processo sem privilégios consegue acionar o mecanismo de descriptografia in-place esp4 por meio da interface XFRM netlink dentro de um namespace de usuário.

Ele não:

  • Tenta escalonamento de privilégio
  • Grava qualquer payload de exploit
  • Modifica qualquer arquivo do sistema
  • Deixa artefatos permanentes (o estado XFRM é limpo ao sair)

É seguro executá-lo no dom0 de produção.


Início Rápido

root@kitploit:~
# Clone the repository
git clone https://github.com/grabesec/XCP_ng_CVE-2026-43284_tester.git
cd XCP_ng_CVE-2026-43284_tester

# Run the diagnostic (as non-root for the strongest proof)
python3 XCP_ng_CVE_2026_43284_tester.py

Nota: Execute como um usuário não-root sempre que possível. Isso simula o modelo de ameaça real: uma conta de serviço comprometida ou uma fuga de convidado que chega ao dom0. Executar como root ainda produz um resultado válido, mas é menos ilustrativo.


Saída Esperada — Host Vulnerável

root@kitploit:~
=================================================================
  XCP-ng Dirty Frag Diagnostic -- CVE-2026-43284
  xfrm-ESP Page-Cache Write / Local Privilege Escalation
=================================================================
  Kernel  : 4.19.0+1
  Host    : xcpng-prod-01
  PID     : 52306  |  UID: 1000
=================================================================

[Phase 0] Pre-flight environment checks
---------------------------------------------
[*] Unprivileged user namespaces : ALLOWED
[*] esp4 blacklist in modprobe.d  : NOT FOUND
[*] CVE-2026-43284 patch in kernel RPM : NOT FOUND

[Phase 1] Baseline esp4 module state
---------------------------------------------
[*] esp4 is DORMANT -- not currently loaded in the kernel.
    The autoload mechanism may fetch it on demand via XFRM.

[Phase 2] Attempting esp4 engagement from unprivileged namespace
---------------------------------------------
[*] Spawning child in isolated user+network namespace
    (unshare -U -n -r) -- simulating a non-root local attacker

[*] Child signal    : XFRM SA accepted by kernel
[*] esp4 refcount   : 0 (before)  ->  1 (now)
[*] /proc/modules   : esp4 16384 1 - Live 0xffffffffc0a12000

[Phase 3] Engineering verdict
=================================================================

  [!!!]  PROOF OF EXPOSURE -- CVE-2026-43284  [!!!]

  esp4 refcount increased: 0 -> 1

  An unprivileged process inside a user+network namespace
  successfully registered an XFRM Security Association and
  engaged the esp4 in-place decryption engine in the host
  kernel. This is the gate condition for CVE-2026-43284.

  XCP-ng-specific analysis:
    [FAIL] Kernel 4.19 carries the vulnerable code (since 4.14)
    [FAIL] User namespaces are open -- esp4 path is reachable
    [OK]   rxrpc.ko absent -- CVE-2026-43500 does not apply
    [FAIL] esp4 path alone is sufficient on this configuration

Saída Esperada — Host Mitigado

root@kitploit:~
[Phase 0] Pre-flight environment checks
---------------------------------------------
[+] esp4 blacklist found in /etc/modprobe.d/
    Module-load mitigation appears to be in place.
...
[Phase 2] Attempting esp4 engagement from unprivileged namespace
---------------------------------------------
[+] XFRM state add was REJECTED by the kernel.
    The esp4 engine was not engaged from the namespace.

[RESULT] The namespace loophole did NOT grant esp4 access.

Mitigação

Automatizada (recomendada)

O script mitigate.sh incluído aplica a mitigação com segurança, com detecção de IPsec integrada para evitar a interrupção de túneis:

root@kitploit:~
# Check current status only (no changes)
sudo ./mitigate.sh --check

# Apply mitigation (aborts if IPsec is detected)
sudo ./mitigate.sh

# Remove mitigation (after applying official kernel patch)
sudo ./mitigate.sh --undo

Manual

Opção A — Hosts que NÃO usam IPsec (a maioria dos dom0s):

root@kitploit:~
echo 'install esp4 /bin/false' > /etc/modprobe.d/dirtyfrag-cve-2026-43284.conf
rmmod esp4 2>/dev/null || true
echo 3 > /proc/sys/vm/drop_caches

Opção B — Hosts que usam IPsec (strongSwan / Libreswan):

NÃO coloque esp4 na lista negra — isso interromperá imediatamente todos os túneis. Em vez disso:

  • Limite o acesso ao shell do dom0 ao conjunto mínimo de contas de administrador confiáveis
  • Acompanhe os anúncios de atualização do XCP-ng para a correção oficial do kernel

⚠️ Este é um escalonamento de privilégio LOCAL. Um atacante já deve ter um shell ou execução de código no dom0. A defesa primária é limitar quem tem acesso local ao dom0 em primeiro lugar. Root do dom0 = root do hipervisor = todas as VMs convidadas comprometidas.


Requisitos

RequisitoObservações
Python 3.6+Incluído no dom0 do XCP-ng 8.x
iproute2 (comando ip)Incluído no dom0 do XCP-ng 8.x
unshareParte do util-linux, incluído no dom0 do XCP-ng 8.x
Kernel LinuxQualquer kernel 4.14–6.x em um dom0 do XCP-ng

Nenhuma biblioteca Python externa é necessária. Nenhum pip install é necessário.


Arquivos

root@kitploit:~
XCP_ng_CVE-2026-43284_tester/
├── XCP_ng_CVE_2026_43284_tester.py   # Diagnostic script — run this first
├── mitigate.sh                        # Mitigation script with IPsec detection
├── README.md                          # This file — quick start and overview
├── TECHNICAL.md                       # Deep technical analysis — attack chain,
│                                      # why rxrpc is not needed on XCP-ng,
│                                      # script internals explained
├── CHANGELOG.md                       # Version history
└── LICENSE                            # MIT

Detalhes Técnicos

Para uma explicação completa de:

  • Como o Dirty Frag funciona mecanicamente (a primitiva de escrita no page cache)
  • Por que o CVE-2026-43500 (RxRPC) é irrelevante para o XCP-ng, apesar de completar a cadeia no Ubuntu
  • A cadeia de ataque completa de 6 etapas específica do dom0 do XCP-ng
  • Como cada seção do script de diagnóstico funciona

Consulte TECHNICAL.md.


Status da Correção

Versão do XCP-ngKernelVulnerável?Correção oficial?
8.3 LTS4.19 + patches da VatesSIMNão publicada até maio de 2026
8.24.19 + patches da VatesSIMNão publicada até maio de 2026
8.1 (EOL)4.19 + patches da VatesSIMNão esperada

Acompanhe: https://xcp-ng.org/forum/topic/365/updates-announcements


Nota Sobre Divulgação Responsável

Esta ferramenta testa apenas o pré-requisito para exploração (namespace + acesso ao esp4). Ela não contém, reproduz ou referencia nenhum código de exploit. A vulnerabilidade subjacente é publicamente conhecida, possui uma prova de conceito publicada pelo pesquisador original e recebeu CVEs. O objetivo desta ferramenta é ajudar administradores de XCP-ng a determinar sua exposição e aplicar mitigações provisórias enquanto aguardam uma correção oficial do kernel pela Vates.


Referências

  • CVE-2026-43284 — NVD
  • Análise original — Hyunwoo Kim (@v4bel)
  • Blog de Segurança da Microsoft — Aviso de ataque ativo
  • Sysdig — Orientação de detecção
  • Anúncios de atualização do XCP-ng
  • Commit de correção do kernel (upstream)

Autor

Rodrigo Gracia — Contribuição de segurança da comunidade
Praticante de XCP-ng / Xen Orchestra
https://github.com/grabesec
Maio de 2026

Baixar ferramenta