Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
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-2023-21554 — PoC de CVE-2023-21554 | Kitploit
Herramientas/GitHubGitHub/shootweb/cve-2023-21554
Análisis de VulnerabilidadesExplotaciónSeguridad de RedesPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubshootweb/cve-2023-21554

CVE-2023-21554

PoC de CVE-2023-21554

Ver Repositorio
2hace 10 mesesAú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

Prueba de concepto de vulnerabilidad de MSMQ

Este repositorio contiene una prueba de concepto lista para ejecutar que ataca Microsoft Message Queuing escuchando en el puerto TCP 1801. Este trabajo se basa en y utiliza materiales del proyecto original en
https://github.com/leongxudong/MSMQ-Vulnerability

Este repositorio utiliza los artefactos binarios proporcionados por ese proyecto. Los archivos binarios incluidos y referenciados por la PoC son:

  1. establish_connection.bin
  2. connection_parameters.bin
  3. user_message.bin

Descripción

Esta PoC intenta reproducir la condición descrita en CVE 2023 21554 enviando una secuencia de tramas del protocolo MSMQ a un host objetivo en el puerto 1801. Los scripts de la PoC solo realizan actividad a nivel de red y no ejecutan acciones posteriores a la explotación. Este proyecto está pensado únicamente para análisis y verificación defensiva en un entorno de laboratorio aislado.

Archivos incluidos

  1. CVE-2023-21554.py — script original de la PoC que envía los tres blobs binarios en secuencia
  2. CVE-2023-21554.py — script auxiliar del lado del atacante que registra respuestas, volcados hexadecimales, marcas de tiempo y errores a nivel de socket. Usa este script para obtener evidencia más útil del lado del atacante
  3. establish_connection.bin — payload binario de la etapa uno del repositorio original
  4. connection_parameters.bin — payload binario de la etapa dos del repositorio original
  5. user_message.bin — payload binario de la etapa tres del repositorio original
  6. README.md — este archivo

Requisitos previos

  1. Python 3 instalado en tu host atacante
  2. Acceso de red al puerto 1801 del host objetivo y permiso explícito para probar ese host
  3. Una instantánea de la máquina virtual objetivo para poder revertir los cambios después de las pruebas
  4. Herramientas para capturar evidencia para verificación (por ejemplo, Wireshark o tcpdump) y Sysinternals procdump para Windows

Cómo ejecutar la PoC en un entorno de laboratorio

  1. Coloca los tres archivos binarios en la misma carpeta que el script de la PoC

  2. Edita el script de la PoC o CVE-2023-21554.py para establecer la dirección IP del objetivo

  3. Inicia una captura de red en tu máquina atacante para la IP y el puerto del objetivo. Ejemplo de comando en una shell separada (reemplaza la IP por la de tu objetivo):

    sudo tcpdump -i eth0 host 10.0.2.15 and port 1801 -w msmq_test.pcap

  4. Ejecuta el script de comprobación mejorado para obtener registros con marca de tiempo y volcados hexadecimales

    python3 CVE-2023-21554.py

  5. Guarda la salida de la PoC y el archivo de captura de red para su análisis

Cómo saber si la PoC funcionó

1. Indicadores del lado del atacante

  1. CVE-2023-21554.py informa de connection_reset o orderly_close inmediatamente después de una etapa del payload (estos son estados explícitos impresos por el script auxiliar).
  2. La PoC recibe una respuesta no trivial del objetivo (bytes de respuesta pequeños e inusuales). Guarda y vuelca esa respuesta en hexadecimal para compararla.
  3. La captura de red muestra un reset TCP (RST) u otra terminación anómala inmediatamente después de los paquetes de explotación.

2. Indicadores del lado del objetivo

  1. El proceso del servicio Message Queuing mqsvc.exe falla o se reinicia en el momento de la prueba.
  2. El Visor de eventos de Windows contiene eventos de Aplicación o Sistema que hacen referencia a una infracción de acceso o a un nombre de aplicación con error mqsvc.exe.
  3. Un procdump capturado en el momento de la prueba muestra una excepción en el proceso mqsvc.

Pasos prácticos y filtros de Wireshark listos para copiar y pegar

Reemplaza <TARGET> con la IP de tu objetivo para cada filtro.

Muestra todo el tráfico entre el atacante y el objetivo en el puerto MSMQ: ip.addr == <TARGET> && tcp.port == 1801

Muestra solo los RST TCP originados por el servidor: ip.src == <TARGET> && tcp.port == 1801 && tcp.flags.reset == 1

Muestra los paquetes que contienen datos de aplicación (cargas útiles TCP no vacías): ip.addr == <TARGET> && tcp.port == 1801 && tcp.len > 0

Muestra segmentos de longitud cero o FIN: ip.addr == <TARGET> && tcp.port == 1801 && (tcp.len == 0 || tcp.flags.fin == 1)

Muestra retransmisiones y anomalías TCP: tcp.analysis.retransmission || tcp.analysis.fast_retransmission || tcp.analysis.duplicate_ack

Pasos para extraer los bytes de respuesta del servidor (volcado hexadecimal sin procesar)

  1. Localiza el paquete del servidor de interés en el panel de lista de paquetes. Busca valores pequeños de tcp.len o el paquete inmediatamente anterior a un RST.
  2. Haz clic derecho en el paquete → Follow → TCP Stream.
  3. En el diálogo Follow TCP Stream elige Show data as: Raw y luego Save As para exportar los bytes exactos.
  4. Alternativamente, selecciona el paquete y copia los bytes desde el panel Packet Bytes. Guarda los bytes sin procesar o el volcado hexadecimal como evidencia (por ejemplo, server_reply.hex).

Cómo saber si el reset provino del objetivo o de un dispositivo intermediario

  1. Confirma que la IP de origen del RST coincide con la del objetivo. Si es así, indica fuertemente que el host objetivo o su kernel cerró el socket.
  2. Si el origen del RST es un dispositivo diferente en la ruta, normalmente indica que un middlebox o firewall cortó la conexión en su lugar. Las diferencias de TTL y las IPs de las interfaces pueden ayudar al diagnóstico.

Correlación temporal (importante)

  1. Anota la diferencia de marca de tiempo entre el paquete de explotación y la reacción del servidor. Los fallos o RST abruptos suelen ocurrir entre decenas y cientos de milisegundos después del paquete ofensor. Registra estos tiempos como parte de tu evidencia.

Prueba comparativa

  1. Captura la misma secuencia contra un host con el parche aplicado y compara la presencia o ausencia de RST, FIN o respuestas cortas del servidor. Las diferencias refuerzan tu conclusión.

Lista de verificación para la recopilación de evidencia

  1. Guarda el registro completo de stdout de CVE-2023-21554.py en un archivo de texto
  2. Guarda el archivo de captura de red (por ejemplo, msmq_test.pcap)
  3. Exporta los eventos de Aplicación y Sistema del Visor de eventos que correspondan a la hora de la prueba
  4. Si está disponible, captura un volcado de fallo de mqsvc.exe con procdump y guárdalo para su análisis

Aviso de seguridad y legal

Este código puede provocar fallos de servicio e inestabilidad en los hosts objetivo. No lo ejecutes contra sistemas que no poseas o para los que no tengas permiso explícito de prueba. Realiza siempre las pruebas en un entorno de laboratorio aislado y toma una instantánea de la VM antes de ejecutarlas. El trabajo original se atribuye al proyecto upstream en:
https://github.com/leongxudong/MSMQ-Vulnerability

Atribución

Este repositorio se deriva del proyecto original en:
https://github.com/leongxudong/MSMQ-Vulnerability

Contribuciones

Si agregas ayudas de detección o scripts de recopilación de evidencia, documéntalos e incluye instrucciones para un uso seguro en laboratorio

Contacto y lecturas adicionales

Consulta el repositorio upstream en el enlace anterior para obtener el contexto original y los artefactos binarios. Para orientación defensiva, consulta los avisos del proveedor y los análisis publicados sobre CVE 2023 21554

Descargar herramienta