May nakitang mga nakakahamak na pagbabago sa mga dependency para sa npm package na may PureScript installer

Depende sa npm package na may PureScript installer nakilala malisyosong code na lumalabas kapag sinubukan mong mag-install ng package puro script. Naka-embed ang nakakahamak na code sa pamamagitan ng mga dependency load-from-cwd-or-npm ΠΈ rate-map. Kapansin-pansin na ang pagpapanatili ng mga package na may mga dependency na ito ay isinasagawa ng orihinal na may-akda ng npm package kasama ang PureScript installer, na hanggang kamakailan ay nagpapanatili ng npm package na ito, ngunit halos isang buwan na ang nakalipas ang package ay inilipat sa iba pang mga maintainer.

Ang problema ay natuklasan ng isa sa mga bagong maintainer ng package, kung saan inilipat ang mga karapatan sa pagpapanatili pagkatapos ng maraming hindi pagkakasundo at hindi kasiya-siyang talakayan sa orihinal na may-akda ng purescript npm package. Ang mga bagong maintainer ay may pananagutan para sa PureScript compiler at iginiit na ang NPM package at ang installer nito ay dapat panatilihin ng parehong mga maintainer at hindi ng isang panlabas na partido. Ang may-akda ng npm package kasama ang PureScript installer ay hindi sumang-ayon sa loob ng mahabang panahon, ngunit pagkatapos ay nagbigay at inilipat ang access sa repositoryo. Gayunpaman, ang ilang mga dependencies ay nanatili sa ilalim ng kanyang kontrol.

Noong nakaraang linggo ang PureScript 0.13.2 compiler ay inilabas at
naghanda ang mga bagong maintainer ng kaukulang update ng npm package na may installer, sa mga dependency kung saan natukoy ang malisyosong code. Ang may-akda ng npm package na may PureScript installer, na inalis sa kanyang post bilang maintainer, ay nagsabi na ang kanyang account ay nakompromiso ng hindi kilalang mga umaatake. Gayunpaman, sa kasalukuyang anyo nito, ang mga aksyon ng malisyosong code ay limitado sa pagsasabotahe sa pag-install ng package, na siyang unang bersyon mula sa mga bagong maintainer. Ang mga nakakahamak na aksyon ay katumbas ng isang loop na may mensahe ng error kapag sinusubukang mag-install ng package na may command na "npm i -g purescript" nang hindi nagsasagawa ng anumang halatang nakakahamak na aktibidad.

Dalawang pag-atake ang nakita. Ilang oras pagkatapos ng opisyal na paglabas ng bagong bersyon ng purescript npm package, may gumawa ng bagong bersyon ng load-from-cwd-or-npm 3.0.2 dependency, mga pagbabago kung saan humantong sa katotohanan na ang tawag ay loadFromCwdOrNpm( ) sa halip na ang listahan ng mga kinakailangan para sa pag-install binary file ibinalik stream Dumaan, pag-mirror ng mga query sa input bilang mga halaga ng output.

Pagkalipas ng 4 na araw, pagkatapos malaman ng mga developer ang pinagmulan ng mga pagkabigo at naghahanda na maglabas ng update para ibukod ang load-from-cwd-or-npm mula sa mga dependency, naglabas ang mga attacker ng isa pang update, load-from-cwd-or-npm 3.0.4, kung saan inalis ang malisyosong code. Gayunpaman, halos kaagad, isang update sa isa pang dependency, rate-map 1.0.3, ay inilabas, na nagdagdag ng isang pag-aayos na humarang sa callback na tawag para sa pag-load. Yung. sa parehong mga kaso, ang mga pagbabago sa mga bagong bersyon ng load-from-cwd-or-npm at rate-map ay likas na halatang sabotahe. Bukod dito, may check ang malisyosong code na nag-trigger lang ng mga maling pagkilos kapag nag-install ng release mula sa mga bagong maintainer at hindi lumabas sa anumang paraan kapag nag-i-install ng mga mas lumang bersyon.

Nalutas ng mga developer ang problema sa pamamagitan ng paglalabas ng update kung saan inalis ang mga may problemang dependencies. Upang maiwasan ang nakompromisong code mula sa pag-aayos sa mga system ng user pagkatapos subukang mag-install ng isang problemadong bersyon ng PureScript, inirerekomendang tanggalin ang mga nilalaman ng mga direktoryo ng node_modules at mga package-lock.json file, at pagkatapos ay itakda ang purescript na bersyon 0.13.2 bilang ang mababang limitasyon.

Pinagmulan: opennet.ru

Magdagdag ng komento