
CVE-2024-4577 EXP
PHP é a abreviação de Hypertext Preprocessor (Pré-processador de Hipertexto); é uma linguagem de script de código aberto amplamente utilizada, especialmente adequada para desenvolvimento web e incorporação em HTML, sendo muito simples de usar. CGI, cujo nome completo em inglês é Common Gateway Interface (Interface de Gateway Comum), é o mecanismo pelo qual o Apache, ao encontrar scripts PHP, envia o programa PHP para o aplicativo CGI (php-cgi.exe) interpretar; após a interpretação, o resultado é retornado ao Apache e, em seguida, ao usuário que fez a solicitação.
O PHP, ao ser projetado, ignorou o recurso de conversão de caracteres Best-Fit do Windows. Quando o PHP-CGI roda na plataforma Windows e utiliza determinados idiomas (como chinês simplificado 936, chinês tradicional 950, japonês 932, etc.), um atacante pode construir strings de consulta especiais. Após a decodificação de URL, essas strings podem conter caracteres não ASCII específicos que, no sistema Windows, são mapeados como hífens, contornando assim os patches de CVE-2012-1823 e CVE-2012-2311, permitindo construir argumentos de linha de comando no modo CGI e executar código PHP arbitrário.
python CVE-2024-4577 --target http://192.168.1.1/index.php -c "<?php system('calc')?>"

Comente a seguinte configuração em C:\xampp\apache\conf\extra\httpd-xampp.conf e reinicie o serviço
#
# PHP-CGI setup
#
# <FilesMatch "\.php$">
# SetHandler application/x-httpd-php-cgi
# </FilesMatch>
# <IfModule actions_module>
# Action application/x-httpd-php-cgi "/php-cgi/php-cgi.exe"
# </IfModule>
Comente C:/xampp/apache/conf/extra/httpd-xampp.conf
# ScriptAlias /php-cgi/ "C:/xampp/php/"