Node.js objavio hitne ispravke zbog Brotli ranjivosti u svim podržanim verzijama
Najteži propust omogućava izvršavanje koda na daljinu kada aplikacija dekompresuje Brotli podatke koje napadač kontroliše. Ispravke su dostupne za grane 22.x, 24.x i 26.x, dok starije verzije nemaju zakrpu.
Node.js je 21. oktobra objavio bezbednosne ispravke za sve tri podržane grane, 22.x, 24.x i 26.x, koje zajedno rešavaju deset ranjivosti. Najozbiljnija je propust u Brotli dekompresionom kodu koji Node.js isporučuje uz sebe.
Prema saopštenju projekta, propust može dovesti do izvršavanja koda na daljinu. Radi se o upisu van granica u Brotli dekoderu, koji se aktivira malformiranim komprimovanim ulazom. Aplikacija je izložena kada dekompresuje Brotli podatke koje napadač kontroliše, na primer telo zahteva ili odgovor koji aplikacija dobije putem fetch() sa Brotli kompresijom.
Ispravljene verzije su 22.23.4 i 24.22.1 za LTS grane, odnosno 26.12.1 za tekuću. Node.js 20.x i ranije su na kraju podrške i neće dobiti ispravku, pa projekat preporučuje prelazak na podržanu granu. Javni dokaz koncepta objavljen dan kasnije postigao je izvršavanje koda samo protiv namerno oslabljene testne verzije. Na standardnoj verziji autor je prijavio pad i ograničeno čitanje memorije procesa, ali ne i izvršavanje koda. Do 22. oktobra nije bilo izveštaja o napadima u stvarnom okruženju.
Ostale ispravke obuhvataju tri ranjivosti visoke ozbiljnosti, među kojima su zaobilaženje TLS provere sertifikata i propust u dns.resolve, kao i ugrađene komponente: undici, c-ares, OpenSSL i SQLite. Iste ispravke uklanjaju poverenje u osam kompromitovanih ključeva indijskog provajdera eMudhra.
Šta uraditi
- Nadograditi Node.js na verziju 22.23.4, 24.22.1 ili 26.12.1, zavisno od grane.
- Ako aplikacija radi na Node.js 20.x ili starijoj, planirati prelazak na podržanu verziju.
- Proveriti i drugi softver koji sadrži Brotli biblioteku, jer je ista ispravka objavljena za Brotli 1.2.1, 1.1.1 i 1.0.10.
- Napomena: za Brotli propust nema privremenog zaobilaženja unutar Node.js.
Izvori
Uočili ste grešku? Pišite na redakcija@webjunkie.net. Kako ispravljamo tekstove