Node-based images ship a Node.js vulnerable to Node2Shell (CVE-2026-111497); rebuild with --pull and republish the 3.0.x line
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- docker, nodejs
- Ambito
- devops
Direzione di ricerca
The affected images are built from the FROM node:22-bookworm-slim and node:24-bookworm-slim lines in the mod/*/Dockerfile files. Check which base tags they use, then run docker run --rm --entrypoint node <image> --version on a rebuilt image. Done means the Node version is at or above 22.23.4 and 24.22.1, and the 3.0.x images are republished. Publishing needs maintainer access to Docker Hub, so this is not a good first contribution.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
The Node.js-based images built from this repo (mod/*/Dockerfile, FROM node:22-bookworm-slim / node:24-...) carry a Node.js below the versions that fix CVE-2026-111497 ("Node2Shell"), the out-of-bounds write in the bundled Google Brotli decoder. Node.js fixed it on 2026-10-21 in 22.23.4, 24.22.1 and 26.12.1 (https://nodejs.org/en/blog/vulnerability/october-2026-security-releases). CISA added the CVE to its Known Exploited Vulnerabilities catalog on 2026-10-27. Node.js offers no workaround; upgrading the runtime is the only remediation.
Because the Dockerfiles use floating base tags, the fix only reaches the published images when they are rebuilt with a fresh base. The images on Docker Hub were not, or were built from a stale cached base layer.
What the published images contain
Checked with docker run --rm --entrypoint node <image> --version on 2026-10-31:
| Image | Pushed | Node inside | Fixed version |
|---|---|---|---|
alangecker/bbb-docker-graphql-actions:v3.0.39 |
2026-10-07 | 22.23.3 | 22.23.4 |
alangecker/bbb-shared-notes-server:v3.0.39 |
2026-10-07 | 22.23.3 | 22.23.4 |
alangecker/bbb-docker-bbb-export-annotations:v3.0.39 |
2026-10-07 | 22.23.3 | 22.23.4 |
alangecker/bbb-docker-webhooks:v3.6.0 |
2026-10-07 | 22.23.3 | 22.23.4 |
alangecker/bbb-docker-webrtc-sfu:v2.24.0 |
2026-10-07 | 22.23.3 | 22.23.4 |
alangecker/bbb-docker-pads:v1.5.8 |
2026-03-17 | 22.22.1 | 22.23.4 |
alangecker/bbb-docker-graphql-actions:v4.0.1 |
2026-10-30 | 24.22.0 | 24.22.1 |
alangecker/bbb-docker-webhooks:v3.7.0 |
2026-10-30 | 24.22.0 | 24.22.1 |
The 2026-10-30 builds are nine days after the fix and still one patch short, which points at Docker's layer cache resolving node:24-bookworm-slim to an old digest (no --pull).
Related, in another repo: bigbluebutton/greenlight:v3.9.0.1 (2026-09-09) contains Node 20.15.1. Node 20 is end of life and will never receive this fix. I can open a separate issue there if wanted.
Exposure
Whether a given service is exploitable depends on it decompressing attacker-supplied Brotli data (Node's HTTP server does not decode request bodies on its own). The runtime is nevertheless below the fixed version in every Node-based container of a standard deployment, which is what vulnerability scanners and the KEV listing act on, and operators cannot fix it without new images.
Request
- Rebuild and republish the Node-based images with a fresh base (
docker build --pull, or pin the base, e.g.node:22.23.4-bookworm-slim/node:24.22.1-bookworm-slim):bbb-graphql-actions,bbb-shared-notes-server,bbb-export-annotations,webhooks,webrtc-sfu,bbb-pads. - Please also republish the 3.0.x line (new
v3.0.39digests or av3.0.40), since that is what the stable compose template deploys and a jump to the 4.0 images is a major upgrade for operators. - Consider adding
--pullto the image build workflow and a post-build check (node --versionagainst the current security release) so a Node security release is picked up by the next build automatically.
Environment
- bigbluebutton/docker at
e59892e(2026-10-30), images as listed above - Host: Debian 13, Docker 29
- Lingua principale
- Shell
- Stelle
- 436
- Fork
- 277
- Merge medio
- 3g 14h
- PR unite (30g)
- 3
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di bigbluebutton/docker
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
bigbluebutton/docker#406 ·
-
Update to version v3.0.32Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 63/100
bigbluebutton/docker#395 · 4 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
bigbluebutton/docker#382 · 5 commenti · 1 reazione ·
-
error in README.mdAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
bigbluebutton/docker#294 · 2 commenti ·
-
Nginx vulnerability v1.29Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
bigbluebutton/docker#400 · 1 commento ·
Tutte le issue di bigbluebutton/docker
Issue simili
-
prove-test.sh fails on macOS bash 3.2 without --test-pathForse già presa @skhussain96 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
addyosmani/factory#5 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 86/100
rossoctl/automation#133 ·
I maintainer di solito rispondono entro 3 giorni
-
source:reader type:enhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 84/100
stephrobert/blog-roadmap#162 ·
-
Release archives ship cvc5 without its license filesForse già presa @mbovel l’ha presa oggi. Apertabug packaging
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
wazuh/wazuh-ansible#2413 ·
I maintainer di solito rispondono entro 1 giorno