Kwesbaarheid in die pac-resolver NPM-pakket met 3 miljoen aflaaie per week

Die pac-resolver NPM-pakket, wat meer as 3 miljoen aflaaie per week het, het 'n kwesbaarheid (CVE-2021-23406) wat toelaat dat sy JavaScript-kode in die konteks van die toepassing uitgevoer word wanneer HTTP-versoeke vanaf Node.js-projekte gestuur word wat ondersteun instaanbediener outomatiese konfigurasie funksie.

Die pac-resolver-pakket ontleed PAC-lêers wat 'n outomatiese proxy-konfigurasieskrip insluit. Die PAC-lêer bevat gereelde JavaScript-kode met 'n FindProxyForURL-funksie wat die logika definieer vir die keuse van 'n proxy, afhangende van die gasheer en die gevraagde URL. Die kern van die kwesbaarheid is dat om hierdie JavaScript-kode in pac-resolver uit te voer, die VM API wat in Node.js verskaf word, gebruik is, wat jou toelaat om JavaScript-kode in 'n ander konteks van die V8-enjin uit te voer.

Die gespesifiseerde API word uitdruklik in die dokumentasie gemerk as nie bedoel om onbetroubare kode te laat loop nie, aangesien dit nie volledige isolasie van die kode wat uitgevoer word, verskaf nie en toegang tot die oorspronklike konteks toelaat. Die probleem is aangespreek in pac-resolver 5.0.0, wat geskuif is om die vm2-biblioteek te gebruik, wat 'n hoër vlak van isolasie bied wat geskik is om onbetroubare kode uit te voer.

Kwesbaarheid in die pac-resolver NPM-pakket met 3 miljoen aflaaie per week

Wanneer 'n kwesbare weergawe van pac-resolver gebruik word, kan 'n aanvaller deur die oordrag van 'n spesiaal ontwerpte PAC-lêer uitvoering van sy JavaScript-kode bereik in die konteks van die kode van 'n projek wat Node.js gebruik, as hierdie projek biblioteke gebruik wat afhanklikhede het met pac-resolver. Die gewildste van die problematiese biblioteke is Proxy-Agent, gelys as 'n afhanklikheid van 360 projekte, insluitend urllib, aws-cdk, mailgun.js en firebase-tools, wat altesaam meer as drie miljoen aflaaie per week beloop.

As 'n toepassing wat afhanklikhede van pac-resolver het, 'n PAC-lêer laai wat verskaf word deur 'n stelsel wat die WPAD-instaanbediener outomatiese konfigurasieprotokol ondersteun, dan kan aanvallers met toegang tot die plaaslike netwerk die verspreiding van instaanbedienerinstellings via DHCP gebruik om kwaadwillige PAC-lêers in te voeg.

Bron: opennet.ru

Voeg 'n opmerking