Bezpečnostné upozornenie · Vysoká
Node.js: chyby HTTP/2 a HTTPS umožňujú klientom zrútiť servery a čítať údaje iných používateľov
· 5 minút čítania · Centoculus Security Team
Známe od
Dotknuté: Node.js 22.x pred 22.23.5, 24.x pred 24.22.3, 26.x pred 26.13.1. Ukončené vetvy ako 20.x a 25.x sú tiež ohrozené a opravu nedostanú.
Čo sa stalo
Dňa 11. novembra 2026 projekt Node.js zverejnil bezpečnostné vydania pre svoje tri podporované vetvy. Opravené verzie sú 22.23.5, 24.22.3 a 26.13.1. Opravujú 16 zraniteľností v samotnom Node.js, z ktorých sedem je hodnotených ako vysoké. Vydania tiež aktualizujú súčasti llhttp (22.x, 24.x, 26.x), undici (24.x, 26.x) a sqlite (22.x, 24.x).
Najdôležitejšie problémy sa týkajú serverového kódu, ktorý Node.js poskytuje priamo pre HTTP/2, HTTPS a TLS:
- Pád servera HTTP/2 (24.x a 26.x): ktorýkoľvek neautentifikovaný klient môže zastaviť proces Node.js. Server potrebuje len predvolené nastavenie HTTP/2 a obslužný kód, ktorý odpovie skôr, než sa celé telo požiadavky prijme. Projekt toto správanie označuje za typické. Útok funguje cez TLS aj cez nešifrované spojenia.
- Únik pamäte HTTP/2 (všetky tri vetvy): server môže klientovi poslať časti svojej pamäte vrátane odpovedí určených pre iné spojenia. Od verzií 24.22.0 a 26.9.0 môže klient túto chybu spustiť sám. Vo verziách 22.x a starších zostavách 24.x a 26.x sa môže stať, keď server ukončí stream uprostred odpovede, napríklad po vypršaní nečinnosti.
- Únik pamäte HTTPS (všetky tri vetvy): neautentifikovaný klient môže čítať pamäť iných spojení, „vrátane privátnych kľúčov TLS a požiadaviek iných používateľov“, podľa projektu. Vyžaduje to obslužný kód, ktorý zavolá
res.flushHeaders()skôr, než sa skončí telo požiadavky, a neskôr zavoláres.end()s dátami. Na čítanie uniknutej pamäte potrebuje útočník aj trasu, ktorá vráti alebo uloží telo požiadavky. - Vyčerpanie zdrojov HTTP/2 (všetky tri vetvy): klient môže donútiť ľubovoľný predvolený server HTTP/2 trvalo držať pamäť a deskriptory súborov.
- Poskytovanie súborov cez HTTP/2 (24.x a 26.x): klient môže poškodiť pamäť servera, keď server poskytuje súbory cez
stream.respondWithFile()alebostream.respondWithFD(). Vo všetkých troch vetvách môže zrušenie takýchto sťahovaní tiež zrútiť server (hodnotené ako stredné). - Pád servera TLS (24.x a 26.x): klient môže zrútiť server TLS, ktorý používa háky
SNICallback,OCSPRequest,newSessionaleboresumeSession, prípadneserver.addContext(). - Obídenie kontroly certifikátov klienta v TLS (všetky tri vetvy): niektoré servery uplatňujú prísnejšie pravidlá pre certifikáty klientov pri určitých názvoch hostiteľov. Na takýchto serveroch môže klient schválený pre iný názov hostiteľa počas opätovného vyjednávania TLS 1.2 prejsť na prísnejší názov bez splnenia jeho pravidiel.
Hlásenie neuvádza žiadne útoky využívajúce tieto chyby.
Kto je ohrozený
- Servery s Node.js 22.x pred 22.23.5, 24.x pred 24.22.3 alebo 26.x pred 26.13.1.
- Ukončené vetvy vrátane 20.x a 25.x v tomto vydaní opravu nedostanú. Projekt uvádza, že takéto verzie sú vždy ohrozené.
- Vážne problémy na strane servera sa týkajú len tam, kde proces Node.js sám prijíma spojenia HTTP/2, HTTPS alebo TLS. Príkladmi sú vstavané moduly
node:http2,node:httpsalebonode:tls, prípadne rámce, ktoré ich používajú na ukončenie TLS alebo HTTP/2. - Obyčajné servery HTTP postavené na
node:httpnie sú ohrozené únikom pamäte pri HTTPS. - Pád servera HTTP/2 sa týka len vetiev 24.x a 26.x, nie 22.x.
Ste výrazne menej vystavení, ak reverzný proxy, napríklad nginx, Apache, HAProxy alebo load balancer, ukončuje TLS a HTTP/2 a Node.js od neho dostáva len prostý HTTP/1.1. Aj tak by ste mali aktualizovať, pretože vydanie obsahuje ďalšie opravy a aktualizácie závislostí.
Čo treba urobiť teraz
- Nájdite všetky inštalácie Node.js. Nezabudnite na systémové balíky, správcov verzií (nvm, n, Volta), obrazy Docker, CI runnery a hostingové panely, ktoré prinášajú vlastný Node.js.
- Aktualizujte na opravenú verziu vašej vetvy: 22.23.5, 24.22.3 alebo 26.13.1. Ak používate balíky distribúcie alebo dodávateľa (napríklad NodeSource alebo balíky vašej distribúcie Linuxu), nainštalujte aktualizáciu hneď, ako váš zdroj balíkov tieto verzie sprístupní.
- Prejdite z ukončených verzií. Ak stále beháte 20.x, 25.x alebo staršie, prejdite na podporovanú vetvu. Hlásenie neuvádza žiadne dočasné riešenie pre servery, ktoré nemožno aktualizovať.
- Znovu vytvorte obrazy kontajnerov s aktualizovaným základným obrazom Node.js a nasadťe ich znova. Samotná aktualizácia hostiteľa nezmení Node.js vnútri kontajnerov.
- Reštartujte všetky procesy Node.js (jednotky systemd, PM2, kontajnery Docker a podobne), aby sa načítalo nové runtime. Potom overte, že vaše aplikácie reagujú normálne.
- Zvážte obnovu tajomstiev, ak ste boli vystavení. Hlásenie neuvádza, či by servery, ktoré spĺňali podmienky úniku pamäte pri HTTPS, mali nahradiť kľúče TLS alebo iné tajomstvá. Ak váš server HTTPS s Node.js spĺňal tieto podmienky a bol dostupný z internetu, zvážte obnovenie jeho certifikátu TLS a kľúča.
Ako overiť, či ste ohrození
- Spustite
node -vna každom serveri a vnútri každého kontajnera (docker exec <container> node -v). Verzie nižšie ako 22.23.5, 24.22.3 alebo 26.13.1 vo svojej vetve, alebo akákoľvek ukončená vetva ako 20.x či 25.x, sú ohrozené. - Pri PM2 príkazy
pm2 listapm2 show <app>zobrazia, aký binárny súbor a verziu Node.js používa každá aplikácia. - Skontrolujte, či vaše aplikácie ukončujú HTTP/2 alebo TLS priamo v Node.js: prehľadajte kód na výskyt
http2.createSecureServer,http2.createServer,https.createServer,tls.createServer,respondWithFile,respondWithFD,SNICallbackaaddContext. - Skontrolujte správcu procesov a systémové logy, či sa Node.js neReštartoval alebo nezrútil neočakávane. Opakované ukončenia servera HTTP/2 môžu naznačovať pokusy o vyvolanie pádu.
Zdroje
Súvisiace články
Upozornenia ·
Citrix NetScaler ADC a Gateway: kritické chyby pamäte umožňujú odmietnutie služby (CVE-2026-120868)
Citrix opravil deväť kritických chýb pamäte v NetScaler ADC a NetScaler Gateway, ktoré môžu viesť k odmietnutiu služby. CVE-2026-120868 ovplyvňuje každé nasadenie. Aktualizujte na 14.1-73.57, 13.1-64.39 alebo na zodpovedajúce zostavy FIPS.
Upozornenia ·
PostgreSQL CVE-2026-6460: databázoví používatelia, ktorí môžu vytvárať objekty, môžu spúšťať kód na serveri
PostgreSQL 18.7, 17.12, 16.16, 15.20 a 14.25 opravujú CVE-2026-6460 a 51 ďalších chýb. Databázový používateľ, ktorý môže vytvárať objekty, môže spustiť kód pod operačným používateľom, pod ktorým beží PostgreSQL. Aktualizujte server a C rozšírenia spoločne.
Upozornenia ·
Hosting Mittwald napadnutý cez MCP server: administračné služby sú offline, zákazníci by mali skontrolovať účty
Webový hosting Mittwald je v núdzovom režime po útoku cez MCP server. Jeho zákaznícke administračné služby sú vypnuté. Zákazníci by sa mali spoliehať len na oficiálne aktualizácie a pripraviť sa na kontrolu svojich účtov a webov.