Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
checkmk_broccoli2shell — Extensión de Checkmk que audita hosts Linux en busca de decodificadores Brotli (libbrotlidec, Node.js, Python, .NET) afectados por CVE-2026-111497, comprobando versiones, backports y procesos obsoletos. | Kitploit
Herramientas/GitLabGitLab/checkmk1/checkmk_broccoli2shell
Herramientas DefensivasEscáneres de VulnerabilidadesAnálisis de VulnerabilidadesAuditoría de ConfiguraciónRespuesta a Incidentes
GitLabcheckmk1/checkmk_broccoli2shell

checkmk_broccoli2shell

Extensión de Checkmk que audita hosts Linux en busca de decodificadores Brotli (libbrotlidec, Node.js, Python, .NET) afectados por CVE-2026-111497, comprobando versiones, backports y procesos obsoletos.

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Ver Repositorio
10hace 19h 7mAún no revisado
Compartir

checkmk_broccoli2shell

Una extensión de Checkmk que muestra, para cada decodificador Brotli en un host Linux, si se ve afectado por Broccoli2Shell - CVE-2026-111497, una escritura fuera de límites en el decodificador Brotli en C de Google que puede provocar ejecución remota de código cuando un programa descomprime datos Brotli de una fuente no confiable (una respuesta HTTP, un cuerpo de solicitud, un archivo). Se divulgó el 2026-10-21/22 y se corrigió en Brotli 1.0.10, 1.1.1 y 1.2.1, Node.js 22.23.4, 24.22.1 y 26.12.1, los paquetes de Python Brotli 1.2.1 y brotlicffi 1.2.1.0, y .NET 8.0.33, 9.0.22 y 10.0.14.

Incluye un pequeño plug-in de agente en shell POSIX que solo recopila hechos (la biblioteca del sistema libbrotlidec, los binarios de Node.js, las instalaciones de Python Brotli y brotlicffi, los runtimes de .NET, sus versiones, los registros de cambios de los paquetes, contra qué están enlazados, qué procesos los tienen cargados y cuáles siguen ejecutando uno reemplazado). Si eso significa "corregido" o "vulnerable" lo decide el plug-in de comprobación en el servidor de Checkmk, de modo que la nueva información - otra versión corregida - solo necesita un .mkp actualizado, no un nuevo script en cada host.

Por qué no basta con comparar números de versión: las distribuciones aplican la corrección sin cambiar la versión upstream, y compilan Node.js contra la biblioteca del sistema en lugar de la copia que incluye Node.js. Debian 12 incluye libbrotli 1.0.9 y Node.js 18.20.4 (fin de vida upstream, sin corrección) - ambos corregidos, porque el paquete actualizado libbrotli1 es el decodificador que ejecuta Node.js. Por lo tanto, la extensión lee el registro de cambios del paquete al que pertenece cada decodificador, y sigue las extensiones de Node.js y Python hasta la biblioteca contra la que están enlazadas.

Requisitos

  • Checkmk >= 2.5.0 (usando la API de plugins actual cmk_addons.plugins).
  • Hosts monitorizados: Linux con el agente de Checkmk ejecutándose como root (el plug-in lee los binarios y /proc/<pid>/maps de todos los procesos). sh POSIX simple con herramientas GNU o busybox; los registros de cambios de los paquetes se leen con dpkg, rpm o apk. Probado en la familia Debian, la familia Red Hat, Amazon Linux y Alpine, ver más abajo.
  • El despliegue mediante Agent Bakery requiere una edición comercial de Checkmk (Pro, Ultimate o Ultimate con multi-tenancy). En la edición Community, copie el plug-in de agente a los hosts manualmente, ver Despliegue manual del plug-in de agente. Los plug-ins de comprobación, las reglas y los servicios funcionan de forma idéntica en ambos casos.

Probado con

Imagen de CheckmkFechaResultado
checkmk/check-mk-ultimate:2.5.0p172026-10-28OK (build, cmk-validate-plugins, prueba de humo, instalación + descubrimiento + comprobación + agent bake)
checkmk/check-mk-ultimate:3.0.0-2026.10.28 (diaria)2026-10-28OK (build, cmk-validate-plugins, prueba de humo, instalación + descubrimiento + comprobación + agent bake)

El plug-in de agente se ejecutó contra los paquetes propios de las distribuciones y las imágenes oficiales el 2026-10-28 (scripts/test_agent_plugin.sh), con un proceso node y un proceso python que tenían el decodificador cargado. Después se reemplazaron en disco la biblioteca, el binario de node y los módulos de extensión de Python, y la detección de reinicio informó de los procesos en ejecución.

Distribuciones

DistribuciónDecodificadoresResultado del plug-in
Debian 12libbrotli 1.0.9-2+deb12u1, Node.js 18.20.4 (enlazado), python3-brotlicorregido mediante backport (changelog), Node.js a través de la biblioteca
Debian 13libbrotli 1.1.0-2+deb13u1, Node.js 20.19.2 (enlazado), python3-brotli, python3-brotlicffi (enlazado)corregido mediante backport, Node.js y brotlicffi a través de la biblioteca
Ubuntu 24.04libbrotli 1.1.0-2ubuntu0.1, Node.js 18.19.1 (enlazado), python3-brotli, dotnet-runtime-8.0 8.0.32corregido mediante backport - .NET vulnerable (8.0.33 aún no está en el archivo)
AlmaLinux 8.10libbrotli 1.0.6-5.el8_10, Node.js 10.24.0 (decodificador propio), python3-brotlibiblioteca y Brotli corregidos mediante backport - Node.js 10 vulnerable (fin de vida, decodificador propio)
AlmaLinux 9.8libbrotli 1.0.9-10.el9_8.1, Node.js 16.20.2 (enlazado), python3-brotli, dotnet-runtime-8.0 8.0.32corregido mediante backport - .NET vulnerable
AlmaLinux 10.2libbrotli 1.1.0-8.el10_2.1, Node.js 22.23.2 (enlazado), python3-brotlicorregido mediante backport
Fedora 44libbrotli 1.2.1, Node.js 22.23.1 (enlazado), python3-brotli 1.2.1corregido por versión
Amazon Linux 2023libbrotli 1.1.0-1.amzn2023.0.1, Node.js 18.20.8 (enlazado)vulnerable - aún no hay paquete corregido, Node.js a través de la biblioteca
Alpine 3.22brotli-libs 1.1.1, Node.js 22.23.4 (enlazado), py3-brotli 1.1.1corregido por versión

Imágenes oficiales y PyPI

ImagenDecodificadoresResultado del plug-in
node:24.22.0-slimNode.js 24.22.0 (decodificador propio)vulnerable
node:24.22.1-slimNode.js 24.22.1 (decodificador propio)corregido por versión
node:20-alpineNode.js 20.20.2 (decodificador propio)vulnerable - fin de vida, sin corrección
node:24.22.0-slim, binario movido a /home/dev/.nvm/... (propiedad de un usuario)Node.js 24.22.0vulnerable - versión leída del binario, no ejecutado
python:3.12-slim + pip install Brotli==1.2.0 brotlicffi==1.2.0.0, venv con Brotli 1.1.0 en /srv/app/venvBrotli, brotlicffi (decodificadores propios)vulnerable (el venv encontrado a través de su proceso en ejecución)
python:3.12-slim + PyPI actualBrotli 1.2.1, brotlicffi 1.2.1.0corregido por versión
mcr.microsoft.com/dotnet/runtime:8.0.32 / :8.0.NET 8.0.32 / 8.0.33vulnerable / corregido por versión

El propio sitio de Checkmk (2.5.0p17) no incluye ningún paquete Brotli en su Python. El plug-in aún no se ha ejecutado en un host de producción fuera de contenedores - en particular no con SELinux en modo enforcing (familia RHEL); el agente normalmente se ejecuta sin confinar allí.

Instalación

  1. Descargue el .mkp desde una release (o constrúyalo usted mismo, consulte Desarrollo).

  2. Setup > Maintenance > Extension packages > Upload package, o en la línea de comandos dentro del sitio:

    mkp add broccoli2shell-<version>.mkp
    mkp enable broccoli2shell <version>
    
  3. Despliegue el plug-in del agente en los hosts que desea comprobar:

    • Edición comercial: Setup > Agents > Windows, Linux, Solaris, AIX > Agent rules, sección Agent plug-ins, regla Broccoli2Shell agent plug-in. Cree una regla para los hosts de destino, luego genere y actualice los agentes. El plug-in siempre se ejecuta de forma asíncrona; el intervalo predeterminado es de una hora.
    • Edición comunitaria / manual: consulte a continuación.
  4. Ejecute un descubrimiento de servicios en los hosts. Cada decodificador obtiene su propio servicio, más un servicio Broccoli2Shell restart por host.

  5. Opcional: ajuste los estados en Setup > Services > Service monitoring rules > Broccoli2Shell (CVE-2026-111497) y Broccoli2Shell restart.

Despliegue manual del plug-in del agente (Edición comunitaria)

Copie package/agents/plugins/broccoli2shell en un subdirectorio de intervalo de caché del directorio de plug-ins del agente y hágalo ejecutable:

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