Haavatavus NPM-paketis node-netmask, mida kasutatakse 270 000 projektis

NPM pakettis node-netmask, millel on umbes 3 miljonit allalaadimist nÀdalas ja mida kasutatakse sÔltuvusena rohkem kui 270 000 projektis GitHubis, tuvastati haavatavus (CVE-2021-28918), mis vÔimaldab mööda minna kontrollidest, milles vÔrgu maski kasutatakse aadresside vahemike mÀÀratlemiseks vÔi filtreerimiseks. Probleem on kÔrvaldatud versioonis node-netmask 2.0.0.

Haavatavus vĂ”imaldab töödelda vĂ€liseid IP-aadresse sisemiste aadressidena ja vastupidi, ning teatud kasutusloogika korral node-netmask moodulis rakenduses teostada SSRF (Server-side request forgery), RFI (Remote File Inclusion) ja LFI (Local File Inclusion) rĂŒnnakuid, et juurdepÀÀseda ressurssidele sisemises vĂ”rgus ning kaasata vĂ€liseid vĂ”i kohalikke faile tĂ€itmise ahelasse. Probleem seisneb selles, et spetsifikatsiooni kohaselt peaks nulliga algavaid aadresse kĂ€sitlema kaheksakohaliste arvudena, kuid moodul 'node-netmask' ei arvestanud seda eripĂ€ra ja kĂ€sitles neid kĂŒmnendnumbrina.

NĂ€iteks vĂ”ib rĂŒndaja kĂŒsida kohalikku ressursi, mÀÀrates vÀÀrtuse '0177.0.0.1', mis vastab '127.0.0.1', kuid moodul 'node-netmask' viskab nulli ning kĂ€sitleb '0177.0.0.1' kui '177.0.0.1', mis rakenduses Ă”iguste reeglite hindamisel ei vĂ”imalda tuvastada samasust '127.0.0.1' ga. Samuti vĂ”ib rĂŒndaja mÀÀrata aadressi '0127.0.0.1', mis peaks olema samavÀÀrne '87.0.0.1' ga, kuid moodulis 'node-netmask' kĂ€sitletakse seda kui '127.0.0.1'. Samuti on vĂ”imalik eksitada kontrolli intranetiaadresside osas, mÀÀrates vÀÀrtused nagu '012.0.0.1' (vĂ”rdne '10.0.0.1', kuid kontrolli kĂ€igus töötleb see kui '12.0.0.1').

Probleemi avastanud teadlased nimetavad probleemi katastroofiliseks ja toovad vĂ€lja mitmeid rĂŒnnakustsenaariume, kuid enamik neist tundub spekulatiivne. NĂ€iteks rÀÀgitakse vĂ”imalusest rĂŒnnata Node.js-pĂ”hist rakendust, mis loob vĂ€liseid ĂŒhendusi ressursi pĂ€rimiseks parameetrite vĂ”i sisendandmete pĂ”hjal, kuid konkreetset rakendust ei nimetata ja ei detailita. Isegi kui leida rakendusi, mis teevad ressurside allalaadimist sisestatud andmete pĂ”hjal, ei ole selge, kuidas haavatavust praktikas rakendada ilma kohaliku vĂ”rgu ĂŒhenduseta vĂ”i ilma 'peegeldavate' IP-aadresse kontrollimata. IP-aadresse, ei ole pĂ€ris selge, kuidas on vĂ”imalik haavatavust praktikas rakendada ilma kohaliku vĂ”rgu ĂŒhenduseta vĂ”i ilma tugeva kontrollita 'peegeldavate' IP-aadresside ĂŒle.

Uurijad arvatakse ainult, et 87.0.0.1 (Telecom Italia) ja 0177.0.0.1 (Brasil Telecom) omanikud saavad vĂ€ltida juurdepÀÀsupiiranguid 127.0.0.1. Realistlikum stsenaarium on haavatavuse kasutamine erinevate rakenduse taseme blokeerimisloendite ĂŒletamiseks. Probleem vĂ”ib samuti olla seotud sisetingimuste vahetamisega NPM-mooduli „private-ip“ mÀÀratlemisel.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid - ProHoster