El jsonArray de GeoServerContiene inyección SQL no autenticada y RCE Día Cero
Desglose técnico del jsonArray activadoContiene la inyección SQL de cero días en GeoServer que conduce al compromiso de la base de datos PostGIS/Oracle y RCE.
Una vulnerabilidad de inyección SQL crítica no autenticada en GeoServer jsonArrayContains función de filtro permite a los actores de amenazas remotas manipular bases de datos espaciales subyacentes y ejecutar código arbitrario en servidores geoespaciales.
GHSA-mqjf-5f49-2fjh / GeoServer Zero-Day (CWE-89: SQL Injection) Severidad: Crítica (CVSS 9.8) Situación: 🚨 Actively Exploited in the Wild (Mass Scanning Observed) Sistemas afectados: GeoServer versions prior to 3.0.1, 2.28.5, and 2.27.6 Fijado en: GeoServer 3.0.1, 2.28.5, 2.27.6Análisis de la causa raíz y mecánica
La vulnerabilidad reside en el manejo de GeoServer de la función filtrante Common Query Language (CQL / ECQL) jsonArrayContains. Al procesar las consultas de filtros OGC no autenticadas (a través de WFS, WMS o WPS), GeoServer evalúa los argumentos suministrados por el usuario sin la sanitización rigurosa del parámetro.
Cuando se conecta a backends como PostGIS (PostgreSQL 12+) o Oracle bases de datos espaciales, un atacante no autenticado puede suministrar cargas útiles JSON ruta que escapan al escape literal y inyectan cláusulas SQL arbitrarias. En configuraciones donde el usuario de la base de datos posee privilegios elevados o pg_read_file/pg_write_file o COPY FROM PROGRAM permisos, esto escala directamente a la ejecución del código remoto (RCE).
Explotación " Telemetría de detección
cql_filter, CQL_FILTER, or filter parameters containing jsonArrayContains(.
Look for payload patterns attempting database escape: jsonArrayContains(..., ''');-- or embedded hex-encoded commands.
Audit backend database logs for anomalous multi-statement executions originating from the GeoServer connection pool.