Kichanganuzi kimechapishwa ambacho kilitambua vifurushi 200 hasidi katika NPM na PyPI

OpenSSF (Wakfu wa Usalama wa Chanzo Huria), unaoundwa na Wakfu wa Linux na unaolenga kuboresha usalama wa programu huria, ulianzisha Uchambuzi wa Kifurushi wa mradi wazi, ambao hutengeneza mfumo wa kuchambua uwepo wa msimbo hasidi katika vifurushi. Msimbo wa mradi umeandikwa katika Go na kusambazwa chini ya leseni ya Apache 2.0. Uchanganuzi wa awali wa hazina za NPM na PyPI kwa kutumia zana zilizopendekezwa ulituruhusu kutambua zaidi ya vifurushi 200 hasidi ambavyo havikutambuliwa hapo awali.

Wingi wa vifurushi vyenye matatizo vilivyotambuliwa hudhibiti makutano ya majina yenye utegemezi wa ndani usio wa umma wa miradi (shambulio la mkanganyiko wa utegemezi) au hutumia mbinu za kuchapisha (kuweka majina sawa na majina ya maktaba maarufu), na pia kupiga simu hati zinazofikia seva pangishi za nje wakati wa. mchakato wa ufungaji. Kulingana na watengenezaji wa Uchanganuzi wa Vifurushi, vifurushi vingi vilivyotambuliwa vina uwezekano mkubwa viliundwa na watafiti wa usalama wanaoshiriki katika programu za fadhila za hitilafu, kwa kuwa data iliyotumwa ni ya mtumiaji na jina la mfumo tu, na vitendo hufanywa kwa uwazi, bila majaribio kuficha tabia zao.

Vifurushi vyenye shughuli hasidi ni pamoja na:

  • Kifurushi cha PyPI discordcmd, ambacho hurekodi kutuma maombi yasiyo ya kawaida kwa raw.githubusercontent.com, Discord API na ipinfo.io. Kifurushi kilichobainishwa kilipakua msimbo wa mlango wa nyuma kutoka kwa GitHub na kusakinisha kwenye saraka ya mteja wa Discord Windows, kisha kilianza mchakato wa kutafuta tokeni za Discord kwenye mfumo wa faili na kuzituma kwa seva ya Discord ya nje inayodhibitiwa na washambuliaji.
  • Kifurushi cha colorss NPM pia kilijaribu kutuma tokeni kutoka kwa akaunti ya Discord hadi kwa seva ya nje.
  • Kifurushi cha NPM @roku-web-core/ajax - wakati wa usakinishaji kilituma data kuhusu mfumo na kuzindua kidhibiti (reverse shell) ambacho kilikubali miunganisho ya nje na kuzindua amri.
  • PyPI kifurushi secrevthree - ilizindua ganda la nyuma wakati wa kuingiza moduli maalum.
  • Kifurushi cha NPM bila mpangilio-vocha-jenereta - baada ya kuagiza maktaba, ilituma ombi kwa seva ya nje, ambayo ilirudisha amri na wakati ambao inapaswa kuendeshwa.

Kazi ya Uchanganuzi wa Kifurushi inakuja kwenye kuchanganua vifurushi vya msimbo katika msimbo wa chanzo kwa ajili ya kuanzisha miunganisho ya mtandao, kufikia faili na amri zinazoendesha. Zaidi ya hayo, mabadiliko katika hali ya vifurushi hufuatiliwa ili kuamua kuongezwa kwa uwekaji hasidi katika moja ya matoleo ya programu zisizo na madhara hapo awali. Ili kufuatilia uonekanaji wa vifurushi vipya katika hazina na kufanya mabadiliko kwa vifurushi vilivyotumwa hapo awali, zana ya zana ya Milisho ya Package inatumika, ambayo inaunganisha kazi na hazina za NPM, PyPI, Go, RubyGems, Packagist, NuGet na Crate.

Uchambuzi wa Kifurushi unajumuisha vipengele vitatu vya msingi vinavyoweza kutumika kwa pamoja na kando:

  • Kiratibu cha kuzindua kazi ya uchanganuzi wa kifurushi kulingana na data kutoka kwa Milisho ya Kifurushi.
  • Kichanganuzi ambacho huchunguza kifurushi moja kwa moja na kutathmini tabia yake kwa kutumia uchanganuzi tuli na mbinu thabiti za ufuatiliaji. Mtihani unafanywa katika mazingira ya pekee.
  • Kipakiaji kinachoweka matokeo ya jaribio kwenye hifadhi ya BigQuery.

Chanzo: opennet.ru

Kuongeza maoni