
CVE-2023-50164 — um invasor pode manipular os parâmetros de upload de arquivos para permitir path traversal e, em algumas circunstâncias, isso pode levar ao upload de um arquivo malicioso que pode ser usado para realizar execução remota de código. Recomenda-se que os usuários atualizem para as versões Struts 2.5.33 ou Struts 6.3.0.2 ou superiores para corrigir esse problema.
Uma vulnerabilidade de segurança crítica, identificada como CVE-2023-50164 (CVE: 9.8), foi encontrada no Apache Struts, permitindo que atacantes manipulem parâmetros de upload de arquivos, o que pode potencialmente levar a travessia de caminho não autorizada e execução remota de código (RCE).
Uma aplicação de teste simples foi desenvolvida para análise da CVE
Primeiro, construa a aplicação usando o comando docker build:
docker build -t exploitable -f DOCKERFILE .
Em seguida, execute a aplicação usando o comando docker run:
docker run -p 8080:8080 exploitable
Neste caso, você pode acessar a aplicação na porta 8080
Você pode implantá-la no Tomcat ou em qualquer outro servlet, ou executá-la com mvn jetty:run. Neste caso, você pode acessar a aplicação na porta . O script de exploit funciona apenas nos casos em que a aplicação está implantada no Tomcat, pois o caminho de exploração é fazer upload de um webshell WAR. No entanto, muitos outros caminhos de exploração podem funcionar no caso da mesma vulnerabilidade, dependendo das tecnologias utilizadas e de outras circunstâncias.
9999Instale os pacotes PIP:
pip install requests requests_toolbelt
Em seguida, você pode alterar o caminho conforme a URL da sua aplicação e executar o comando abaixo:
python exploit.py --url http://localhost:8080/upload.action
É recomendado executar a aplicação e o exploit em um host Windows. O exploit pode não funcionar em sistemas baseados em *nix às vezes.
Este script de exploit foi criado para fins de pesquisa. Não deve ser utilizado para qualquer atividade maliciosa ou não autorizada.