Pac-resolver NPM -paketin haavoittuvuus, 3 miljoonaa latausta viikossa

Pac-resolver NPM-paketissa, jolla on yli 3 miljoonaa latausta viikossa, on haavoittuvuus (CVE-2021-23406), joka sallii JavaScript-koodin suorittamisen sovelluksen yhteydessä lähetettäessä HTTP-pyyntöjä Node.js-projekteista, jotka tukee välityspalvelimen automaattista määritystoimintoa.

Pac-resolver-paketti jäsentää PAC-tiedostoja, jotka sisältävät automaattisen välityspalvelimen määrityskomentosarjan. PAC-tiedosto sisältää tavallisen JavaScript-koodin, jossa on FindProxyForURL-toiminto, joka määrittää välityspalvelimen valinnan logiikan isännästä ja pyydetystä URL-osoitteesta riippuen. Haavoittuvuuden ydin on, että tämän JavaScript-koodin suorittamiseen pac-resolverissa käytettiin Node.js:n VM-sovellusliittymää, jonka avulla voit suorittaa JavaScript-koodia V8-moottorin eri kontekstissa.

Määritetty API on nimenomaisesti merkitty dokumentaatioon, jotta sitä ei ole tarkoitettu suorittamaan epäluotettavaa koodia, koska se ei eristä suoritettavaa koodia täydellisesti ja sallii pääsyn alkuperäiseen kontekstiin. Ongelma on ratkaistu pac-resolver 5.0.0:ssa, joka on siirretty käyttämään vm2-kirjastoa, joka tarjoaa korkeamman eristystason, joka sopii epäluotettavan koodin suorittamiseen.

Pac-resolver NPM -paketin haavoittuvuus, 3 miljoonaa latausta viikossa

Käytettäessä pac-resolverin haavoittuvaa versiota hyökkääjä voi suorittaa JavaScript-koodinsa lähettämällä erityisesti suunnitellun PAC-tiedoston Node.js:ää käyttävän projektin koodin yhteydessä, jos tämä projekti käyttää kirjastoja, joilla on riippuvuuksia. pac-resolverin kanssa. Suosituin ongelmallisista kirjastoista on Proxy-Agent, joka on listattu riippuvaiseksi 360 projektista, mukaan lukien urllib, aws-cdk, mailgun.js ja firebase-tools, yhteensä yli kolme miljoonaa latausta viikossa.

Jos sovellus, joka on riippuvainen pac-resolverista, lataa WPAD-välityspalvelimen automaattista määritysprotokollaa tukevan järjestelmän tarjoaman PAC-tiedoston, hyökkääjät, joilla on pääsy paikallisverkkoon, voivat käyttää välityspalvelinasetusten jakelua DHCP:n kautta haitallisten PAC-tiedostojen lisäämiseen.

Lähde: opennet.ru

Lisää kommentti