← back
CVE-2024-3400criticalunder attackransomwareCWE-20CWE-77

PAN-OS: Arbitrary File Creation Leads to OS Command Injection Vulnerability in GlobalProtect

100Vexday Risk Score

Patch now. It under exploitation confirmed by CISA and has a working public exploit.

ssvc Actcvss 10epss 100%
from disclosure to weapon1 days
Published on NVDApr 12
1st PoC+1d
metasploitApr 12
CISA KEVApr 12
exploitation probability
100%top 1% of all CVEs
observed exploitation
yesCISA + VulnCheck
63 public exploit(s)
Action required by CISAfederal deadline: 2024-04-19

Apply mitigations per vendor instructions as they become available. Otherwise, users with vulnerable versions of affected devices should enable Threat Prevention IDs available from the vendor. See the vendor bulletin for more details and a patch release schedule.

Summary

Falha crítica (CVSS 10.0) no GlobalProtect do PAN-OS que combina duas falhas — criação arbitrária de arquivo e injeção de comando — permitindo execução de código como root sem autenticação, apenas com acesso de rede à interface GlobalProtect. Foi explorada como zero-day antes da divulgação pública, por um ator sofisticado (rastreado pela Unit 42 como Operation MidnightEclipse), e está no catálogo KEV da CISA. Só afeta PAN-OS com GlobalProtect gateway ou portal configurado — dispositivos sem essa feature habilitada não são vulneráveis, apesar da manchete.

Technical detail

A vulnerabilidade nasce da combinação de dois bugs distintos (CWE-20 + CWE-77). O primeiro: o serviço GlobalProtect não validava suficientemente o formato do session ID antes de gravá-lo em disco, o que permitia a um atacante armazenar um arquivo vazio cujo nome era escolhido por ele mesmo — em vez de um session ID legítimo. O segundo bug: um job de sistema agendado (cron) confiava que os nomes desses arquivos eram gerados internamente pelo próprio sistema, e usava esses nomes diretamente como parte de um comando shell executado com privilégios elevados.

How it’s exploited

O ataque ocorre em duas etapas. Na primeira, o atacante envia, no lugar de um session ID válido, uma string contendo um comando shell malicioso; o GlobalProtect cria um arquivo vazio (0 bytes) cujo nome de arquivo é literalmente esse comando. Isso por si só não causa dano — apenas planta o artefato. Na segunda etapa, um job agendado do sistema roda periodicamente, lê os nomes de arquivo presentes e os utiliza dentro de um comando sem sanitização, executando o payload do atacante com privilégios de root. Não há autenticação, interação do usuário ou configuração não padrão exigida além de ter GlobalProtect gateway/portal ativo — é isso que torna o vetor tão automatizável (há módulo Metasploit, template Nuclei e PoCs públicas). A Palo Alto classificou as tentativas observadas em níveis: Nível 0 (probe sem sucesso), Nível 1 (teste — arquivo 0-byte criado, sem execução confirmada), Nível 2 (exfiltração potencial — cópia do running_config.xml para local acessível via web) e Nível 3 (acesso interativo, com backdoors shell). Segundo a Unit 42, a maioria dos casos respondidos foi de tentativas falhas ou compromissos de Nível 1; casos de Nível 2/3 foram limitados, mas incluíram um backdoor Python identificado como 'Upstyle'.

Versions

Affected
PAN-OS 11.1 < 11.1.0-h3, < 11.1.1-h1, < 11.1.2-h3; PAN-OS 11.0 < 11.0.0-h3, < 11.0.1-h4, < 11.0.2-h4, < 11.0.3-h10, < 11.0.4-h1; PAN-OS 10.2 < 10.2.0-h3, < 10.2.1-h2, < 10.2.2-h5, < 10.2.3-h13, < 10.2.4-h16, < 10.2.5-h6, < 10.2.6-h3, < 10.2.7-h8, < 10.2.8-h3, < 10.2.9-h1 — em todos os casos, apenas com GlobalProtect gateway e/ou portal configurado. PAN-OS 10.1, 10.0, 9.1, 9.0, Cloud NGFW, Panorama e Prisma Access não são afetados.
Fixed in
PAN-OS 10.2.9-h1, 10.2.8-h3, 10.2.7-h8, 10.2.6-h3, 10.2.5-h6, 10.2.4-h16, 10.2.3-h13, 10.2.2-h5, 10.2.1-h2, 10.2.0-h3; PAN-OS 11.0.4-h1/h2, 11.0.3-h10, 11.0.2-h4, 11.0.1-h4, 11.0.0-h3; PAN-OS 11.1.2-h3, 11.1.1-h1, 11.1.0-h3; e todas as versões posteriores a essas. No Azure Marketplace as versões '-h' são nomeadas com um zero extra (ex.: 11.1.2-h3 aparece como 11.1.203).

How to protect

A correção definitiva é atualizar para PAN-OS 10.2.9-h1, 11.0.4-h1, 11.1.2-h3 ou versões posteriores — o fornecedor também publicou hotfixes específicos para praticamente todas as releases de manutenção comumente usadas dentro dos ramos 10.2, 11.0 e 11.1 (lista completa no advisory oficial). Quem não pode atualizar imediatamente deve aplicar os Threat IDs 95187, 95189 e 95191 (disponíveis via assinatura Threat Prevention, pacote de conteúdo 8836-8695 ou posterior) e garantir que o perfil de proteção contra vulnerabilidades esteja de fato anexado à interface do GlobalProtect — sem isso, ter a assinatura instalada não bloqueia nada. Desabilitar o telemetry, que circulou como mitigação nos primeiros dias, deixou de ser considerado eficaz: o próprio fornecedor confirmou que existem caminhos de exploração que não dependem do telemetry estar habilitado. Para dispositivos com indícios de comprometimento, ou que ficaram sem patch/mitigação antes de 25/04/2024, a Palo Alto recomenda um Enhanced Factory Reset (EFR) via TAC, já que uma reinstalação comum pode não eliminar persistência.

How to detect

Procure arquivos de 0 bytes com nomes anômalos (contendo trechos de comando shell) criados pelo processo do GlobalProtect — indicam Nível 1 (teste), mesmo sem execução confirmada. Verifique se o arquivo running_config.xml foi copiado para um local acessível via requisição web, sinal característico de tentativa de exfiltração (Nível 2). Logs de acesso ao portal/gateway GlobalProtect com session IDs de formato incomum (contendo caracteres de shell) são o indicador mais direto de tentativa de exploração; os Threat IDs 95187/95189/95191, quando ativos, geram alertas específicos para esses padrões. O fornecedor também reengenharizou a coleta de Tech Support Files (TSF) para detectar automaticamente traços de atividade relacionada a essa CVE — útil para triagem forense pós-incidente.

Researched and written with AI from the vendor advisory and public analysis, with the sources above. Always confirm the fixed version in the official advisory before acting.
A command injection as a result of arbitrary file creation vulnerability in the GlobalProtect feature of Palo Alto Networks PAN-OS software for specific PAN-OS versions and distinct feature configurations may enable an unauthenticated attacker to execute arbitrary code with root privileges on the firewall. Cloud NGFW, Panorama appliances, and Prisma Access are not impacted by this vulnerability.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
public PoCs found63
exploitdbwww.exploit-db.com/exploits/51996unverifiedgithubgithub.com/h4x0r-dz/CVE-2024-3400161githubgithub.com/W01fh4cker/CVE-2024-3400-RCE-Scan92githubgithub.com/0x0d3ad/CVE-2024-340072githubgithub.com/ihebski/CVE-2024-340034githubgithub.com/Chocapikk/CVE-2024-340015githubgithub.com/momika233/CVE-2024-340013githubgithub.com/Yuvvi01/CVE-2024-340011githubgithub.com/ak1t4/CVE-2024-34009githubgithub.com/AdaniKamal/CVE-2024-34008githubgithub.com/zam89/CVE-2024-3400-pot6githubgithub.com/schooldropout1337/CVE-2024-34006githubgithub.com/0xr2r/CVE-2024-3400-Palo-Alto-OS-Command-Injection6githubgithub.com/retkoussa/CVE-2024-34005githubgithub.com/swaybs/CVE-2024-34002githubgithub.com/marconesler/CVE-2024-34002githubgithub.com/CerTusHack/CVE-2024-3400-PoC2githubgithub.com/ZephrFish/CVE-2024-3400-Canary2githubgithub.com/HackingLZ/panrapidcheck2githubgithub.com/CONDITIONBLACK/CVE-2024-3400-POC2githubgithub.com/wa6n3r/CVE-2024-34001githubgithub.com/Zedocun/PAN-OS-CVE-2024-3400-Command-Injection-Investigation1githubgithub.com/hashdr1ft/SOC274-Palo-Alto-Networks-PAN-OS-Command-Injection-Vulnerability-Exploitation-CVE-2024-34001githubgithub.com/sxyrxyy/CVE-2024-3400-Check0githubgithub.com/FoxyProxys/CVE-2024-34000githubgithub.com/MrR0b0t19/CVE-2024-34000githubgithub.com/MurrayR0123/CVE-2024-3400-Compromise-Checker0githubgithub.com/LoanVitor/CVE-2024-3400-0githubgithub.com/index2014/CVE-2024-3400-Checker0githubgithub.com/hahasagined/CVE-2024-34000githubgithub.com/Kr0ff/cve-2024-34000githubgithub.com/terminalJunki3/CVE-2024-3400-Checker0githubgithub.com/andrelia-hacks/CVE-2024-34000githubgithub.com/ivan-n0v/cve-2024-34000githubgithub.com/workshop748/CVE-2024-34000githubgithub.com/CyprianAtsyor/letsdefend-cve2024-3400-case-study0githubgithub.com/CyberBibs/SOC274---Palo-Alto-Networks-PAN-OS-Command-Injection-Vulnerability-Exploitation-CVE-2024-3400-0githubgithub.com/Yafiah-Darwesh/cs50-cyber-paloalto-oauth0githubgithub.com/P4rC3L/Global-Protect_VPN_Vuln0githubgithub.com/razureink/cve-2024-3400-panos_rce_reproduction0githubgithub.com/codeblueprint/CVE-2024-34000githubgithub.com/Ravaan21/CVE-2024-34000githubgithub.com/tfrederick74656/cve-2024-3400-poc0githubgithub.com/pwnj0hn/CVE-2024-34000vulncheckvulncheck.com/xdb/c8807722d985unverifiedvulncheckvulncheck.com/xdb/23c21d7a298funverifiedvulncheckvulncheck.com/xdb/5031bc9d21b6unverifiedvulncheckvulncheck.com/xdb/111e25b96a3dunverifiedvulncheckvulncheck.com/xdb/111ca00bbc19unverifiedvulncheckvulncheck.com/xdb/2b38a2dd894cunverifiedvulncheckvulncheck.com/xdb/2da1379943caunverifiedvulncheckvulncheck.com/xdb/479d7527000funverifiedvulncheckvulncheck.com/xdb/b50f530b723funverifiedvulncheckvulncheck.com/xdb/ab7770d7db97unverifiedvulncheckvulncheck.com/xdb/470b7dd7f349unverifiedvulncheckvulncheck.com/xdb/225a2064265dunverifiedvulncheckvulncheck.com/xdb/e8365a6f1e95unverifiedvulncheckvulncheck.com/xdb/771fff643c41unverifiedvulncheckvulncheck.com/xdb/d20ea188fb61unverifiedvulncheckvulncheck.com/xdb/3d0eb812cb1funverifiedvulncheckvulncheck.com/xdb/72d187d1fad6unverifiedvulncheckvulncheck.com/xdb/367874624944unverifiedvulncheckvulncheck.com/xdb/a46942c082daunverified
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.