Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
checkmk_broccoli2shell — Extension Checkmk qui audite les hôtes Linux pour détecter les décodeurs Brotli (libbrotlidec, Node.js, Python, .NET) affectés par CVE-2026-111497, en vérifiant les versions, les backports et les processus obsolètes. | Kitploit
Outils/GitLabGitLab/checkmk1/checkmk_broccoli2shell
Outils DéfensifsScanners de VulnérabilitésAnalyse des VulnérabilitésAudit de ConfigurationRéponse aux Incidents
GitLabcheckmk1/checkmk_broccoli2shell

checkmk_broccoli2shell

Extension Checkmk qui audite les hôtes Linux pour détecter les décodeurs Brotli (libbrotlidec, Node.js, Python, .NET) affectés par CVE-2026-111497, en vérifiant les versions, les backports et les processus obsolètes.

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Voir le dépôt
10il y a 19h 7mPas encore vérifié
Partager

checkmk_broccoli2shell

Une extension Checkmk qui indique, pour chaque décodeur Brotli sur un hôte Linux, s'il est affecté par Broccoli2Shell - CVE-2026-111497, une écriture hors limites dans le décodeur Brotli C de Google pouvant mener à une exécution de code à distance lorsqu'un programme décompresse des données Brotli provenant d'une source non fiable (une réponse HTTP, un corps de requête, une archive). Elle a été divulguée le 2026-10-21/22 et corrigée dans Brotli 1.0.10, 1.1.1 et 1.2.1, Node.js 22.23.4, 24.22.1 et 26.12.1, les paquets Python Brotli 1.2.1 et brotlicffi 1.2.1.0, et .NET 8.0.33, 9.0.22 et 10.0.14.

Elle fournit un petit plug-in d'agent en shell POSIX qui ne fait que collecter des faits (la bibliothèque système libbrotlidec, les binaires Node.js, les installations Python Brotli et brotlicffi, les runtimes .NET, leurs versions, les journaux de modifications des paquets, ce à quoi ils sont liés, quels processus les ont chargés et lesquels exécutent encore une version remplacée). La décision « corrigé » ou « vulnérable » est prise par le plug-in de vérification sur le serveur Checkmk, de sorte qu'une nouvelle information - une autre version corrigée - ne nécessite qu'un .mkp mis à jour, et non un nouveau script sur chaque hôte.

Pourquoi ne pas simplement comparer les numéros de version : les distributions rétroportent le correctif sans changer la version amont, et elles compilent Node.js contre la bibliothèque système plutôt que contre la copie embarquée par Node.js. Debian 12 fournit libbrotli 1.0.9 et Node.js 18.20.4 (fin de vie en amont, pas de correctif) - les deux corrigés, car le paquet libbrotli1 mis à jour est le décodeur que Node.js exécute. L'extension lit donc le journal de modifications du paquet qui possède chaque décodeur, et suit les extensions Node.js et Python jusqu'à la bibliothèque contre laquelle elles sont liées.

Prérequis

  • Checkmk >= 2.5.0 (utilisant l'API de plug-in actuelle cmk_addons.plugins).
  • Hôtes surveillés : Linux avec l'agent Checkmk s'exécutant en tant que root (le plug-in lit les binaires et /proc/<pid>/maps de tous les processus). Shell POSIX sh simple avec les outils GNU ou busybox ; les journaux de modifications des paquets sont lus avec dpkg, rpm ou apk. Testé sur la famille Debian, la famille Red Hat, Amazon Linux et Alpine, voir ci-dessous.
  • Le déploiement via l'agent bakery nécessite une édition commerciale de Checkmk (Pro, Ultimate, ou Ultimate avec multi-tenancy). Sur l'édition Community, copiez le plug-in d'agent sur les hôtes manuellement, voir Déploiement manuel du plug-in d'agent. Les plug-ins de vérification, les règles et les services fonctionnent de manière identique dans les deux cas.

Testé avec

Image CheckmkDateRésultat
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)

Le plug-in d'agent a été exécuté contre les paquets propres aux distributions et les images officielles le 2026-10-28 (scripts/test_agent_plugin.sh), avec un processus node et un processus python ayant le décodeur chargé. Ensuite, la bibliothèque, le binaire node et les modules d'extension Python ont été remplacés sur le disque, et la détection de redémarrage a signalé les processus en cours d'exécution.

Distributions

DistributionDécodeursRésultat du plug-in
Debian 12libbrotli 1.0.9-2+deb12u1, Node.js 18.20.4 (lié), python3-brotlicorrigé par backport (changelog), Node.js via la bibliothèque
Debian 13libbrotli 1.1.0-2+deb13u1, Node.js 20.19.2 (lié), python3-brotli, python3-brotlicffi (lié)corrigé par backport, Node.js et brotlicffi via la bibliothèque
Ubuntu 24.04libbrotli 1.1.0-2ubuntu0.1, Node.js 18.19.1 (lié), python3-brotli, dotnet-runtime-8.0 8.0.32corrigé par backport - .NET vulnérable (8.0.33 pas encore dans l'archive)
AlmaLinux 8.10libbrotli 1.0.6-5.el8_10, Node.js 10.24.0 (décodeur propre), python3-brotlibibliothèque et Brotli corrigés par backport - Node.js 10 vulnérable (fin de vie, décodeur propre)
AlmaLinux 9.8libbrotli 1.0.9-10.el9_8.1, Node.js 16.20.2 (lié), python3-brotli, dotnet-runtime-8.0 8.0.32corrigé par backport - .NET vulnérable
AlmaLinux 10.2libbrotli 1.1.0-8.el10_2.1, Node.js 22.23.2 (lié), python3-brotlicorrigé par backport
Fedora 44libbrotli 1.2.1, Node.js 22.23.1 (lié), python3-brotli 1.2.1corrigé par version
Amazon Linux 2023libbrotli 1.1.0-1.amzn2023.0.1, Node.js 18.20.8 (lié)vulnérable - aucun paquet corrigé pour l'instant, Node.js via la bibliothèque
Alpine 3.22brotli-libs 1.1.1, Node.js 22.23.4 (lié), py3-brotli 1.1.1corrigé par version

Images officielles et PyPI

ImageDécodeursRésultat du plug-in
node:24.22.0-slimNode.js 24.22.0 (décodeur propre)vulnérable
node:24.22.1-slimNode.js 24.22.1 (décodeur propre)corrigé par version
node:20-alpineNode.js 20.20.2 (décodeur propre)vulnérable - fin de vie, pas de correctif
node:24.22.0-slim, binaire déplacé vers /home/dev/.nvm/... (appartenant à un utilisateur)Node.js 24.22.0vulnérable - version lue depuis le binaire, non exécuté
python:3.12-slim + pip install Brotli==1.2.0 brotlicffi==1.2.0.0, venv avec Brotli 1.1.0 dans /srv/app/venvBrotli, brotlicffi (décodeurs propres)vulnérable (le venv trouvé via son processus en cours d'exécution)
python:3.12-slim + PyPI actuelBrotli 1.2.1, brotlicffi 1.2.1.0corrigé par version
mcr.microsoft.com/dotnet/runtime:8.0.32 / :8.0.NET 8.0.32 / 8.0.33vulnérable / corrigé par version

Le site Checkmk lui-même (2.5.0p17) n'embarque aucun paquet Brotli dans son Python. Le plug-in n'a pas encore été exécuté sur un hôte de production hors conteneurs - en particulier pas avec SELinux en mode enforcing (famille RHEL) ; l'agent s'exécute normalement en mode non confiné dans ce cas.

Installation

  1. Téléchargez le .mkp depuis une release (ou compilez-le vous-même, voir Développement).

  2. Setup > Maintenance > Extension packages > Upload package, ou en ligne de commande à l'intérieur du site :

    mkp add broccoli2shell-<version>.mkp
    mkp enable broccoli2shell <version>
    
  3. Déployez le plug-in d'agent sur les hôtes que vous souhaitez vérifier :

    • Édition commerciale : Setup > Agents > Windows, Linux, Solaris, AIX > Agent rules, section Agent plug-ins, règle Broccoli2Shell agent plug-in. Créez une règle pour les hôtes cibles, puis générez et mettez à jour les agents. Le plug-in s'exécute toujours de manière asynchrone ; l'intervalle par défaut est d'une heure.
    • Édition communautaire / manuelle : voir ci-dessous.
  4. Lancez une découverte de services sur les hôtes. Chaque décodeur obtient son propre service, plus un service Broccoli2Shell restart par hôte.

  5. Facultatif : ajustez les états dans Setup > Services > Service monitoring rules > Broccoli2Shell (CVE-2026-111497) et Broccoli2Shell restart.

Déploiement manuel du plug-in d'agent (édition communautaire)

Copiez package/agents/plugins/broccoli2shell dans un sous-répertoire d'intervalle de cache du répertoire des plug-ins de l'agent et rendez-le exécutable :

install -m 755 broccoli2shell /usr/lib/check_mk_agent/plugins/3600/broccoli2shell
Télécharger l’outil