Долоо хоногт 3 сая таталттай pac-resolver NPM багц дахь эмзэг байдал

Долоо хоногт 3 сая гаруй татан авалт хийдэг pac-resolver NPM багц нь сул талтай (CVE-2021-23406) нь Node.js төслүүдээс HTTP хүсэлт илгээх үед JavaScript кодыг програмын хүрээнд гүйцэтгэх боломжийг олгодог. прокси серверийн автомат тохиргооны функцийг дэмжих.

Pac-resolver багц нь автомат прокси тохиргооны скрипт агуулсан PAC файлуудыг задлан шинжилдэг. PAC файл нь хост болон хүссэн URL хаягаас хамааран прокси сонгох логикийг тодорхойлдог FindProxyForURL функцтэй ердийн JavaScript кодыг агуулдаг. Эмзэг байдлын мөн чанар нь энэхүү JavaScript кодыг pac-resolver дээр ажиллуулахын тулд Node.js-д өгсөн VM API ашигласан бөгөөд энэ нь танд JavaScript кодыг V8 хөдөлгүүрийн өөр контекстэд ажиллуулах боломжийг олгодог.

Заасан API нь ажиллаж байгаа кодын бүрэн тусгаарлалтыг хангадаггүй бөгөөд анхны контекстэд хандах боломжийг олгодог тул итгэмжгүй кодыг ажиллуулахад зориулагдаагүй гэж баримт бичигт тодорхой тэмдэглэсэн болно. Энэ асуудлыг pac-resolver 5.0.0-д шийдвэрлэсэн бөгөөд энэ нь vm2 номын санд шилжсэн бөгөөд энэ нь найдваргүй кодыг ажиллуулахад тохиромжтой, илүү өндөр түвшний тусгаарлалтыг хангадаг.

Долоо хоногт 3 сая таталттай pac-resolver NPM багц дахь эмзэг байдал

Pac-resolver-ийн эмзэг хувилбарыг ашиглах үед халдагчид тусгайлан боловсруулсан PAC файлыг дамжуулснаар Node.js ашиглан төслийн кодын хүрээнд JavaScript кодыг гүйцэтгэх боломжтой, хэрэв энэ төсөлд хамаарал бүхий санг ашиглаж байгаа бол pac-resolver-тэй. Асуудалтай номын сангуудаас хамгийн алдартай нь urllib, aws-cdk, mailgun.js болон firebase-tools зэрэг 360 төслөөс хамааралтай, долоо хоногт гурван сая гаруй татан авалт хийдэг Proxy-Agent юм.

Хэрэв pac-resolver-аас хамааралтай програм WPAD прокси автомат тохиргооны протоколыг дэмждэг системээс өгсөн PAC файлыг ачаалвал дотоод сүлжээнд нэвтрэх эрхтэй халдагчид DHCP-ээр дамжуулан прокси тохиргоог түгээж, хортой PAC файл оруулах боломжтой.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх