Packj - zana ya kutambua maktaba hasidi katika Python na JavaScript

Watengenezaji wa jukwaa la Packj, ambalo huchambua usalama wa maktaba, wamechapisha zana ya zana ya mstari wa amri wazi ambayo inawaruhusu kutambua miundo hatari katika vifurushi ambayo inaweza kuhusishwa na utekelezaji wa shughuli hasidi au uwepo wa udhaifu unaotumiwa kutekeleza mashambulizi. kwenye miradi inayotumia vifurushi husika ("mnyororo wa ugavi"). Kukagua kifurushi kunaauniwa katika lugha za Python na JavaScript, zinazopangishwa katika saraka za PyPi na NPM (pia zinapanga kuongeza usaidizi kwa Ruby na RubyGems mwezi huu). Nambari ya zana imeandikwa kwa Python na kusambazwa chini ya leseni ya AGPLv3.

Wakati wa uchanganuzi wa vifurushi elfu 330 kwa kutumia zana zilizopendekezwa kwenye hazina ya PyPi, vifurushi 42 vibaya vilivyo na milango ya nyuma na vifurushi hatari elfu 2.4 vilitambuliwa. Wakati wa ukaguzi, uchanganuzi tuli wa msimbo unafanywa ili kutambua vipengele vya API na kutathmini uwepo wa udhaifu unaojulikana uliobainishwa katika hifadhidata ya OSV. Kifurushi cha MalOSS kinatumika kuchanganua API. Msimbo wa kifurushi huchanganuliwa kwa uwepo wa mifumo ya kawaida inayotumika katika programu hasidi. Violezo vilitayarishwa kulingana na utafiti wa pakiti 651 zilizo na shughuli hasidi iliyothibitishwa.

Pia hubainisha sifa na metadata zinazosababisha ongezeko la hatari ya matumizi mabaya, kama vile kutekeleza vizuizi kupitia "eval" au "exec", kutoa msimbo mpya wakati wa utekelezaji, kwa kutumia mbinu za misimbo zilizofichwa, kuendesha vigeu vya mazingira, ufikiaji usiolengwa wa faili, kupata rasilimali za mtandao katika hati za usakinishaji (setup.py), kwa kutumia typequatting (kugawa majina sawa na majina ya maktaba maarufu), kutambua miradi iliyopitwa na wakati na kutelekezwa, kubainisha barua pepe na tovuti ambazo hazipo, ukosefu wa hifadhi ya umma yenye msimbo.

Zaidi ya hayo, tunaweza kutambua kitambulisho cha watafiti wengine wa usalama wa vifurushi vitano hasidi kwenye hazina ya PyPi, ambayo ilituma yaliyomo kwenye vigeu vya mazingira kwa seva ya nje kwa matarajio ya kuiba tokeni za AWS na mifumo endelevu ya ujumuishaji: moduli za loglib (zilizowasilishwa kama moduli za maktaba halali ya loglib), pyg-modules , pygrata na pygrata-utils (zilizotajwa kama nyongeza kwa maktaba halali ya pyg) na hkg-sol-utils.

Packj - zana ya kutambua maktaba hasidi katika Python na JavaScript


Chanzo: opennet.ru

Kuongeza maoni