Haavatavused Node.js-s ja libuv-s

Saadaval on Node.js serveri JavaScript platvormi versioonid 21.6.2, 20.11.1, 18.19.1, kus on lahendatud 8 haavatavust, millest 4 on kÔrge ohtlikkusega:

  • CVE-2024-21892 — vĂ€hemprivileegitud kasutaja vĂ”imalus sisestada koodi, mis pĂ€rib laienenud privileege, millega tööprotsess töötab. Haavatavus tuleneb tĂ”rgest erandi rakenduses, mis vĂ”imaldab vĂ€hemprivileegitud kasutaja mÀÀratud keskkonnamuutujate töötlemist laienenud privileegide ajal. Erand oli mĂ”eldud andma Ă”igusi ainult CAP_NET_BIND_SERVICE’ile, kuid tĂ”rke tĂ”ttu kehtis see ka teistele Ă”igustele (capabilities).
  • CVE-2024-22019 — teenuse kĂ€ttesaamatuks muutmine ressursside ammendamiste kaudu (CPU koormus ja ribalaiuse tarbimine) lĂ”imeeritud HTTP-serveri poolt spetsiaalselt vormindatud chunked-pĂ€ringute töötlemisel, mis pĂ”hjustab ĂŒhe ĂŒhenduse kaudu piiramatu arvu baitide lugemist.
  • CVE-2024-21896 — pĂ”hikaustast vĂ€ljumine failiteede kaudu. Haavatavus vĂ”imaldab failiteede normaliseerimise ĂŒletamist path.resolve() abil, kui teed edastatakse Buffer'i klassi kaudu. Sellise tee saamiseks viiakse pĂ€rast kontrollimist ellu meetod Buffer.from(), kuid rakenduses vĂ”ib kasutada kutset Buffer.prototype.utf8Write, mis pĂ”hjustab sisu muutmist path.resolve() tĂ€itmise etapis ja haavatavuse tekkimist.
  • CVE-2024-22017 — setuid() kutse ei tĂŒhistanud kĂ”iki privileege. Konkreetsemalt, setuid() ei mĂ”juta io_uring'i operatsioone, mis kasutatakse libuv-s, kui need on initsialiseeritud enne setuid() kutset.
  • CVE-2023-46809 — haavatavus API's privateDecrypt(), mis vĂ”imaldab Marvin'i rĂŒnnakut RSA dekrĂŒptimiseks ajatehingute pĂ”hjal.
  • CVE-2024-21891 — Ă”iguste mudeli ĂŒmbersuunamine kohandatud failiteede normaliseerimise töötlejate kasutamisel.
  • CVE-2024-21890 — vale maskide töötlemine parameetrites „—allow-fs-read“ ja „—allow-fs-write“. NĂ€iteks „—allow-fs-read=/home/node/.ssh/*.pub“ annab juurdepÀÀsu kogu „.ssh/“ sisu jagamise asemel ainult „.pub“ laiendiga failidele, kuna mask „*“ töödeldakse kui tee viimane element.
  • CVE-2024-22025 — teenuse kĂ€ttesaamatuks muutmine ressursside ammendamiste kaudu tihendatud andmete dekodeerimise ajal Brotli formaadis, mis saadakse fetch() kutse kaudu.

Samuti on ilmunud Node.js-is kasutatava libuv 1.48.0 versiooni vĂ€ljalase, mida kasutatakse ĂŒhenduste mitmeĂŒlesanne töötlemises ja asĂŒnkroonse sisendi/vĂ€ljundi kĂ€sitluses. Lisaks Node.js-le kasutatakse seda ka BIND 9 ja Knot DNS DNS-serverites, HTTP-serveris H2O, Lua-raamistiku Luvit, MoarVM, Julia keeles ja Python raamistiku uvloop. Uues versioonis on lahendatud haavatavus (CVE-2024-24806), mis ilmneb projektides, mis kasutavad libuv, ja vĂ”imaldab SSRF (Server-side request forgery) rĂŒnnakut, et pÀÀseda juurde sisemisele API-le. Haavatavus tuleneb hostinime kĂ€rpimisest funktsiooniga uv_getaddrinfo() enne domeeni lahendamist funktsiooniga getaddrinfo(), mis vĂ”ib viia vale kindlaksmÀÀramiseni ja kontrollide ĂŒmbersuunamiseni. NĂ€iteks teenused nagu MySpace, mis loovad alamdomeene nagu „username.example.com“, vĂ”ivad olla rĂŒnnatavad, kui kasutatakse pikka kasutajanime. virtuaalmasinas Ilmus ka vĂ€rskendus Node.js-i HTTP-klientile undici 5.28.3, mis lahendas haavatavuse (CVE-2024-24758), mis tekkis HTTP-peakirja Proxy-Authorization puhastamise puudumise tĂ”ttu pĂ€ringute suunamisel. IP-aadressid Saadaval on Node.js serveri JavaScript platvormi versioonid 21.6.2, 20.11.1, 18.19.1, kus on lahendatud 8 haavatavust, millest 4 on kĂ”rge ohtlikkusega: CVE-2024-21892 - vĂ€hemprivileegitud kasutaja vĂ”imalus sisestada koodi, mis pĂ€rib laienenud privileege, millega tööprotsess töötab. Haavatavus tuleneb tĂ”rgest erandi rakenduses, mis vĂ”imaldab vĂ€hemprivileegitud kasutaja mÀÀratud keskkonnamuutujate töötlemist laienenud privileegide ajal. Erand

đŸ„‡Node.js ja libuv haavatavused | ProHoster

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster