CVE-2020-1938 Apache-Tomcat-Ajp vulnerabilidad reproducida y reforzada

 

Prefacio

  Apache Tomcat abrirá el conector AJP para facilitar la interacción con otros servidores web a través del protocolo AJP. Dado que el propio Tomcat también contiene un servidor HTTP, también se puede considerar como un servidor web independiente. Esta vulnerabilidad es una vulnerabilidad de inclusión de archivos. Los atacantes pueden usar esta vulnerabilidad para leer o incluir cualquier archivo en todos los directorios de aplicaciones web en Tomcat, como archivos de configuración de aplicaciones web, código fuente, etc.

Fui a edusrc y eché un vistazo, estaba un poco mareado y la puntuación se redujo al agujero de alto riesgo de 2. ¡La maleza es tan feroz! Aquí, también lo probé fácilmente. Por el momento, le mostraré la "lectura de archivos" directamente en el combate real. Puede leer directamente archivos de información confidencial, como archivos de información de configuración de la base de datos, y publicar una imagen a continuación para estabilizar la militar.

número de serie

CNVD-2020-10487

CVE-2020-1938

influencias

        Apache Tomcat = 6

        7 <= Apache Tomcat <7.0.100

        8 <= Apache Tomcat <8.5.51

        9 <= Apache Tomcat <9.0.31

Proceso de recurrencia

Estoy aquí para usar la ventana acoplable para extraer el entorno tomcat-8.5.32 para reproducir

Docker busca espejo de tomcat

Docker search tomcat-8.5.32

Tire del espejo

Docker pull duonghuuphuc / tomcat-8.5.32

Una vez que se completa la extracción, verifique si la extracción es exitosa 

imágenes de docker

Ejecuta duplicación y mapeo de puertos

Docker ejecutar -d -p 8080: 8080 -p 8090: 8090 duonghuuphuc / tomcat-8.5.32

Y mira si funciona con éxito

docker ps -a

Visite la dirección del sistema después del éxito

nmap intento

Hasta ahora, el medio ambiente se ha construido con éxito

exp1

https://github.com/0nise/CVE-2020-1938

exp2

https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi

Demostración de vulnerabilidad

Plan de reparaciones

  • Desactive temporalmente el puerto del protocolo AJP, comente <Connector port = ”8009 ″ protocol =” AJP / 1.3 ″ redirectPort = ”8443 ″ /> en el archivo de configuración conf / server.xml
  • Configure los atributos secretRequired y secret en la configuración ajp para restringir la autenticación
  • Descargue la última versión del enlace de descarga oficial:

https://tomcat.apache.org/download-70.cgi

https://tomcat.apache.org/download-80.cgi

https://tomcat.apache.org/download-90.cgi

https://github.com/apache/tomcat/releases

Otras medidas de protección

Si los usuarios relevantes no pueden realizar actualizaciones de versión temporalmente, se pueden adoptar las siguientes medidas de protección de acuerdo con sus propias circunstancias.

1. Si no necesita usar el protocolo Tomcat AJP, puede cerrar directamente el conector AJP o cambiar su dirección de escucha para monitorear únicamente el localhost local.

Operación específica:

(1) Edite <CATALINA_BASE> /conf/server.xml y busque la siguiente línea (<CATALINA_BASE> es el directorio de trabajo de Tomcat):

<Puerto del conector = ”8009 ″ protocolo =” AJP / 1.3 ″ redirectPort = ”8443 ″ />

(2) Comente esta línea (también puede eliminar esta línea):

<! - <Connectorport = ”8009 ″ protocol =” AJP / 1.3 ″ redirectPort = ”8443 ″ /> ->

(3) Tomcat debe reiniciarse después de guardar para que las reglas surtan efecto.

2. Si necesita utilizar el protocolo Tomcat AJP, puede establecer la credencial de autenticación de acuerdo con las propiedades del protocolo de configuración de la versión.

Los usuarios de Tomcat 7 y Tomcat 9 pueden configurar el secreto para que el conector AJP establezca las credenciales de autenticación del protocolo AJP. Por ejemplo (tenga en cuenta que YOUR_TOMCAT_AJP_SECRET debe cambiarse a un valor que sea altamente seguro y no se pueda adivinar fácilmente):

<Puerto del conector = ”8009 ″ protocolo =” AJP / 1.3 ″ redirectPort = ”8443 ″ dirección =” YOUR_TOMCAT_IP_ADDRESS ”secreto =” YOUR_TOMCAT_AJP_SECRET ”/>

Los usuarios que utilizan Tomcat 8 pueden configurar requiredSecret para que el conector AJP establezca las credenciales de autenticación del protocolo AJP. Por ejemplo (tenga en cuenta que YOUR_TOMCAT_AJP_SECRET debe cambiarse a un valor que sea altamente seguro y no se pueda adivinar fácilmente):

<Puerto del conector = ”8009 ″ protocolo =” AJP / 1.3 ″ redirectPort = ”8443 ″ dirección =” YOUR_TOMCAT_IP_ADDRESS ”requiredSecret =” YOUR_TOMCAT_AJP_SECRET ”/>

Supongo que te gusta

Origin blog.csdn.net/Adminxe/article/details/105918133
Recomendado
Clasificación