
Demonstração da vulnerabilidade de injeção SQL no wordpress 5.8.2
Este repositório demonstra uma vulnerabilidade no WordPress 5.8.2, na qual a falta de sanitização em class-wp-tax-query.php pode, em situações muito específicas, permitir que atacantes realizem injeção de SQL. Note que a exploração bem-sucedida requer que desenvolvedores adicionem código vulnerável à instância do WordPress, no qual a entrada de usuário não sanitizada é passada para uma variável $terms que é usada para construir uma função SQL. Veja evil.php no plugin "evil" incluído, e a falta de sanitização da variável $terms em get_sql_for_clause em class-wp-tax-query.php.
O plugin vulnerável/malicioso está localizado em src/wp-content/plugins/evil/evil.php.
Passos de demonstração sudo docker-compose up siga as instruções de instalação em localhost ative o plugin do WordPress no painel de administração (intitulado evil plugin) Envie a requisição em newexploit_req.txt para o servidor recém-criado. Você deve obter um atraso de tempo. Note que a vulnerabilidade demonstrada pelo plugin é uma injeção SQL cega, então se você quiser tentar recuperar dados, precisará obter dados via atrasos de tempo ou erros.
Notas de depuração sudo service docker restart se ocorrer falha na resolução de nomes ajuste xdebug.client_host=172.19.0.1 no xdebug.ini conforme necessário