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
PNGboomer-CVE-2026-77622 — Sliver HTTP(S) C2 PNG bomb DoS exploit — GHSA-663m-7x7m-g4fw (CVE-2026-77622) | Kitploit
Strumenti/GitHubGitHub/squ1shification/pngboomer-cve-2026-77622
Analisi delle VulnerabilitàExploitPenetration TestingCommand and ControlRed Teaming
GitHubsqu1shification/pngboomer-cve-2026-77622

PNGboomer-CVE-2026-77622

Sliver HTTP(S) C2 PNG bomb DoS exploit — GHSA-663m-7x7m-g4fw (CVE-2026-77622)

Vedi Repository
1720 giorni faNon ancora revisionato

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

PNGboomer — CVE-2026-77622

Exploit denial-of-service per il listener HTTP(S) di Sliver C2. Forza bruta il nonce di codifica PNG per-sessione e consegna una bomba di decompressione che esaurisce la memoria del server.

Pubblicato come GHSA-663m-7x7m-g4fw.

Riepilogo

Il canale C2 HTTP(S) di Sliver avvolge i messaggi all'interno di immagini PNG. A ogni sessione viene assegnato un nonce casuale nell'intervallo [1, 65537) e il server decodifica i dati PNG solo dalle richieste il cui parametro di query ?n= corrisponde al nonce della sessione. Questo è un meccanismo di routing, non un controllo di autenticazione — lo spazio delle chiavi è di 16 bit.

Il server decodifica il PNG con image.Decode() di Go, che alloca larghezza × altezza × byte_per_pixel in memoria. Un file PNG con dimensioni dichiarate di 32767×32767 RGBA si comprime a circa 3 KB sul wire ma si decompressa a oltre 4 GB in memoria. Il server non impone alcun limite alle dimensioni decodificate.

L'exploit funziona in tre fasi:

  1. Calibrazione — invia nonce non corrispondenti con un PNG di prova moderatamente grande e misura i tempi di risposta di base.
  2. Scansione — invia il PNG di prova sull'intero intervallo di nonce. Un nonce corrispondente attiva la decodifica PNG, che richiede un tempo misurabilmente maggiore rispetto a una richiesta rifiutata. I candidati vengono verificati con più ri-sonde.
  • Kill — invia il PNG bomba di decompressione con il nonce scoperto. Il server alloca diversi gigabyte e viene ucciso dall'OOM killer oppure spinge l'host nello swap fino a renderlo non responsivo.
  • Versioni Interessate

    Versioni di Sliver C2 precedenti alla correzione referenziata in GHSA-663m-7x7m-g4fw. Qualsiasi server Sliver che esegue un listener HTTP o HTTPS è esposto.

    Build

    root@kitploit:~
    go build -o pngboomer
    

    Nessuna dipendenza esterna. Solo libreria standard.

    Utilizzo

    root@kitploit:~
    ./pngboomer -url http://target:8080/ [options]
    

    Opzioni

    FlagDefaultDescrizione
    -urlhttp://127.0.0.1:8080/URL base HTTP C2 di Sliver
    -workers8Concorrenza della scansione
    -probe-w2000Larghezza PNG di prova
    -probe-h2000Altezza PNG di prova
    -probe-color2Tipo di colore della sonda (2=RGB, 6=RGBA)
    -kill-w32767Larghezza PNG di kill
    -kill-h32767Altezza PNG di kill
    -kill-color6Tipo di colore di kill (2=RGB, 6=RGBA)
    -threshold-ms50Tempo di risposta minimo per la rilevazione del nonce
    -outlier-mult15.0Soglia adattiva = p99 di base × questo
    -calibrate16Numero di campioni di calibrazione
    -verify3Conteggio ri-sonde per nonce candidato
    -max-nonce65537Limite superiore dell'intervallo nonce (modulo Sliver)
    -probe-timeout5sTimeout HTTP per singola sonda
    -kill-timeout180sTimeout HTTP per richiesta di kill
    -target-cap-mb10240Limite di memoria dichiarato del target (controllo di sicurezza)
    -nonce0Salta la scansione, usa direttamente questo nonce
    -scan-onlyfalseTrova il nonce e stampalo senza inviare il kill
    -no-confirmfalseSalta il polling TCP per la morte del target dopo il kill

    Esempi

    Scansione e kill predefiniti contro un target Docker locale:

    root@kitploit:~
    ./pngboomer -url http://127.0.0.1:8080/ -target-cap-mb 10240
    

    Solo scansione (trova il nonce senza uccidere):

    root@kitploit:~
    ./pngboomer -url https://c2.target.com/ -scan-only
    

    Salta la scansione quando conosci già il nonce:

    root@kitploit:~
    ./pngboomer -url http://target:8080/ -nonce 41337
    

    Sicurezza

    La bomba di kill causa una decodifica PNG multi-GB sul target. Durante i test, esegui il server Sliver all'interno di un container Docker con --memory=<N>g e passa -target-cap-mb N così lo strumento rifiuta combinazioni pericolose di worker/sonda che supererebbero la memoria del target.

    Come Funziona la Scansione del Nonce

    Il PNG di prova è abbastanza grande che la sua decodifica richieda un tempo misurabilmente maggiore rispetto al rifiuto rapido di un nonce errato da parte del server. La scansione mescola l'intervallo di nonce e lo distribuisce tra goroutine worker. Ogni worker invia il PNG di prova con un nonce candidato e misura il tempo di risposta.

    Quando una risposta supera la soglia adattiva (il maggiore tra -threshold-ms e baseline_p99 × outlier-mult), il candidato viene ri-sondato -verify volte. Se la maggioranza delle ri-sonde supera anch'essa la soglia, il nonce è confermato. In caso contrario, il candidato viene inserito nella blacklist e la scansione continua. Fino a 8 "blip" di falsi positivi vengono tollerati prima che la scansione si arrenda.

    Divulgazione

    Segnalato a Bishop Fox tramite il processo di advisory privato di GitHub. CalebKingan ha scritto la patch.

    Scarica lo strumento
    -no-color
    false
    Disabilita l'output colore ANSI
    -silentfalseStampa solo il nonce scoperto su stdout