Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
checkmk_broccoli2shell — Estensione per Checkmk che verifica gli host Linux alla ricerca di decoder Brotli (libbrotlidec, Node.js, Python, .NET) affetti da CVE-2026-111497, controllando versioni, backport e processi obsoleti. | Kitploit
Strumenti/GitLabGitLab/checkmk1/checkmk_broccoli2shell
Strumenti DifensiviScanner di VulnerabilitàAnalisi delle VulnerabilitàAudit di ConfigurazioneRisposta agli Incidenti
GitLabcheckmk1/checkmk_broccoli2shell

checkmk_broccoli2shell

Estensione per Checkmk che verifica gli host Linux alla ricerca di decoder Brotli (libbrotlidec, Node.js, Python, .NET) affetti da CVE-2026-111497, controllando versioni, backport e processi obsoleti.

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 →
Vedi Repository
1017h 47m faNon ancora revisionato
Condividi

checkmk_broccoli2shell

Un'estensione per Checkmk che mostra, per ogni decoder Brotli su un host Linux, se è interessato da Broccoli2Shell - CVE-2026-111497, una scrittura fuori dai limiti nel decoder Brotli in C di Google che può portare all'esecuzione di codice remoto quando un programma decomprime dati Brotli da una fonte non attendibile (una risposta HTTP, un corpo di richiesta, un archivio). È stata divulgata il 2026-10-21/22 e corretta in Brotli 1.0.10, 1.1.1 e 1.2.1, Node.js 22.23.4, 24.22.1 e 26.12.1, nei pacchetti Python Brotli 1.2.1 e brotlicffi 1.2.1.0, e in .NET 8.0.33, 9.0.22 e 10.0.14.

Include un piccolo plug-in agente in shell POSIX che raccoglie solo fatti (la libreria di sistema libbrotlidec, i binari di Node.js, le installazioni Python di Brotli e brotlicffi, i runtime .NET, le loro versioni, i changelog dei pacchetti, a cosa sono collegati, quali processi li hanno caricati e quali eseguono ancora una versione sostituita). Se ciò significhi "corretto" o "vulnerabile" è deciso dal plug-in di check sul server Checkmk, così nuove informazioni - un'altra release corretta - richiedono solo un .mkp aggiornato, non un nuovo script su ogni host.

Perché non confrontare semplicemente i numeri di versione: le distribuzioni applicano la correzione senza cambiare la versione upstream, e compilano Node.js contro la libreria di sistema invece della copia inclusa in Node.js. Debian 12 fornisce libbrotli 1.0.9 e Node.js 18.20.4 (fine vita upstream, nessuna correzione) - entrambi corretti, perché il pacchetto aggiornato libbrotli1 è il decoder che Node.js esegue. L'estensione quindi legge il changelog del pacchetto che possiede ciascun decoder, e segue le estensioni Node.js e Python fino alla libreria a cui sono collegate.

Requisiti

  • Checkmk >= 2.5.0 (usando l'attuale API dei plugin cmk_addons.plugins).
  • Host monitorati: Linux con l'agente Checkmk in esecuzione come root (il plug-in legge i binari e /proc/<pid>/maps di tutti i processi). sh POSIX semplice con strumenti GNU o busybox; i changelog dei pacchetti sono letti con dpkg, rpm o apk. Testato sulla famiglia Debian, la famiglia Red Hat, Amazon Linux e Alpine, vedi sotto.
  • La distribuzione tramite agent bakery richiede un'edizione commerciale di Checkmk (Pro, Ultimate, o Ultimate con multi-tenancy). Sull'edizione Community, copia il plug-in agente sugli host manualmente, vedi Distribuzione manuale del plug-in agente. I plug-in di check, le regole e i servizi funzionano allo stesso modo in entrambi i casi.

Testato con

Immagine CheckmkDataRisultato
checkmk/check-mk-ultimate:2.5.0p172026-10-28OK (build, cmk-validate-plugins, smoke test, install + discovery + check + agent bake)
checkmk/check-mk-ultimate:3.0.0-2026.10.28 (daily)2026-10-28OK (build, cmk-validate-plugins, smoke test, install + discovery + check + agent bake)

Il plug-in agente è stato eseguito contro i pacchetti delle distribuzioni stesse e le immagini ufficiali il 2026-10-28 (scripts/test_agent_plugin.sh), con un processo node e uno python che avevano il decoder caricato. Successivamente la libreria, il binario node e i moduli di estensione Python sono stati sostituiti su disco, e il rilevamento del riavvio ha segnalato i processi in esecuzione.

Distribuzioni

DistribuzioneDecoderRisultato del plug-in
Debian 12libbrotli 1.0.9-2+deb12u1, Node.js 18.20.4 (collegato), python3-brotlicorretto tramite backport (changelog), Node.js tramite la libreria
Debian 13libbrotli 1.1.0-2+deb13u1, Node.js 20.19.2 (collegato), python3-brotli, python3-brotlicffi (collegato)corretto tramite backport, Node.js e brotlicffi tramite la libreria
Ubuntu 24.04libbrotli 1.1.0-2ubuntu0.1, Node.js 18.19.1 (collegato), python3-brotli, dotnet-runtime-8.0 8.0.32corretto tramite backport - .NET vulnerabile (8.0.33 non ancora nell'archivio)
AlmaLinux 8.10libbrotli 1.0.6-5.el8_10, Node.js 10.24.0 (decoder proprio), python3-brotlilibreria e Brotli corretti tramite backport - Node.js 10 vulnerabile (fine vita, decoder proprio)
AlmaLinux 9.8libbrotli 1.0.9-10.el9_8.1, Node.js 16.20.2 (collegato), python3-brotli, dotnet-runtime-8.0 8.0.32corretto tramite backport - .NET vulnerabile
AlmaLinux 10.2libbrotli 1.1.0-8.el10_2.1, Node.js 22.23.2 (collegato), python3-brotlicorretto tramite backport
Fedora 44libbrotli 1.2.1, Node.js 22.23.1 (collegato), python3-brotli 1.2.1corretto tramite versione
Amazon Linux 2023libbrotli 1.1.0-1.amzn2023.0.1, Node.js 18.20.8 (collegato)vulnerabile - nessun pacchetto corretto disponibile, Node.js tramite la libreria
Alpine 3.22brotli-libs 1.1.1, Node.js 22.23.4 (collegato), py3-brotli 1.1.1corretto tramite versione

Immagini ufficiali e PyPI

ImmagineDecoderRisultato del plug-in
node:24.22.0-slimNode.js 24.22.0 (decoder proprio)vulnerabile
node:24.22.1-slimNode.js 24.22.1 (decoder proprio)corretto tramite versione
node:20-alpineNode.js 20.20.2 (decoder proprio)vulnerabile - fine vita, nessuna correzione
node:24.22.0-slim, binario spostato in /home/dev/.nvm/... (di proprietà di un utente)Node.js 24.22.0vulnerabile - versione letta dal binario, non eseguito
python:3.12-slim + pip install Brotli==1.2.0 brotlicffi==1.2.0.0, venv con Brotli 1.1.0 in /srv/app/venvBrotli, brotlicffi (decoder propri)vulnerabile (il venv individuato tramite il suo processo in esecuzione)
python:3.12-slim + PyPI attualeBrotli 1.2.1, brotlicffi 1.2.1.0corretto tramite versione
mcr.microsoft.com/dotnet/runtime:8.0.32 / :8.0.NET 8.0.32 / 8.0.33vulnerabile / corretto tramite versione

Il sito Checkmk stesso (2.5.0p17) non include alcun pacchetto Brotli nel proprio Python. Il plug-in non è ancora stato eseguito su un host di produzione al di fuori dei container - in particolare non con SELinux in modalità enforcing (famiglia RHEL); lì l'agent viene normalmente eseguito in modalità unconfined.

Installazione

  1. Scarica il file .mkp da una release (oppure compilalo tu stesso, vedi Sviluppo).

  2. Setup > Maintenance > Extension packages > Upload package, oppure dalla riga di comando all'interno del sito:

    mkp add broccoli2shell-<version>.mkp
    mkp enable broccoli2shell <version>
    
  3. Distribuisci il plug-in dell'agente sugli host che vuoi controllare:

    • Edizione commerciale: Setup > Agents > Windows, Linux, Solaris, AIX > Agent rules, sezione Agent plug-ins, regola Broccoli2Shell agent plug-in. Crea una regola per gli host di destinazione, quindi genera e aggiorna gli agenti. Il plug-in viene sempre eseguito in modo asincrono; l'intervallo predefinito è di un'ora.
    • Edizione Community / manuale: vedi sotto.
  4. Esegui un service discovery sugli host. Ogni decoder ottiene il proprio servizio, più un servizio Broccoli2Shell restart per host.

  5. Facoltativo: regola gli stati in Setup > Services > Service monitoring rules > Broccoli2Shell (CVE-2026-111497) e Broccoli2Shell restart.

Distribuzione manuale del plug-in dell'agente (Edizione Community)

Copia package/agents/plugins/broccoli2shell in una sottodirectory cache-interval della directory dei plug-in dell'agente e rendilo eseguibile:

install -m 755 broccoli2shell /usr/lib/check_mk_agent/plugins/3600/broccoli2shell

La directory 3600 fa sì che l'agente lo esegua in background una volta all'ora e serva il risultato in cache nel frattempo. Non inserirlo direttamente in plugins/: legge binari di grandi dimensioni e la mappa di memoria di ogni processo, il che è troppo oneroso per ogni query dell'agente.

Scarica lo strumento