Packj – egy eszközkészlet a rosszindulatú könyvtárak azonosítására Pythonban és JavaScriptben

A könyvtárak biztonságát elemző Packj platform fejlesztői egy nyílt parancssori eszközkészletet tettek közzé, amely lehetővé teszi a csomagokban található kockázatos struktúrák azonosítását, amelyek rosszindulatú tevékenység végrehajtásával vagy támadások végrehajtásához használt sebezhetőségekkel hozhatók összefüggésbe. a szóban forgó csomagokat használó projektekre („ellátási lánc”). A csomagellenőrzést Python és JavaScript nyelvek támogatják, amelyek a PyPi és NPM könyvtárakban vannak tárolva (a Ruby és a RubyGems támogatását is tervezik ebben a hónapban). Az eszközkészlet kódja Pythonban íródott, és az AGPLv3 licenc alatt terjeszthető.

A PyPi adattárban javasolt eszközökkel 330 ezer csomag elemzése során 42 hátsó ajtóval rendelkező rosszindulatú csomagot és 2.4 ezer kockázatos csomagot azonosítottak. Az ellenőrzés során statikus kódelemzést hajtanak végre az API-szolgáltatások azonosítása és az OSV-adatbázisban észlelt ismert sebezhetőségek meglétének értékelése érdekében. A MalOSS csomag az API elemzésére szolgál. A csomagkódot elemzi a rosszindulatú programokban gyakran használt tipikus minták jelenléte. A sablonokat 651, megerősített rosszindulatú tevékenységet tartalmazó csomag vizsgálata alapján készítették el.

Azonosítja azokat az attribútumokat és metaadatokat is, amelyek a visszaélések fokozott kockázatához vezetnek, például blokkok végrehajtása „eval” vagy „exec” segítségével, új kód generálása futás közben, homályos kódtechnikák használata, környezeti változók manipulálása, nem célzott hozzáférés a fájlokhoz, hálózati erőforrások elérése telepítő szkriptekben (setup.py), typequatting használata (népszerű könyvtárak nevéhez hasonló nevek hozzárendelése), elavult és félbehagyott projektek azonosítása, nem létező e-mailek és weboldalak megadása, nyilvános kódtár hiánya.

Ezen kívül megjegyezhetjük, hogy más biztonsági kutatók öt rosszindulatú csomagot azonosítottak a PyPi tárolóban, amelyek a környezeti változók tartalmát egy külső szerverre küldték, azzal a szándékkal, hogy ellopják az AWS-hez és a folyamatos integrációs rendszerekhez szükséges tokeneket: loglib-modulokat (az alábbi formában) modulok a legitim loglib könyvtárhoz), pyg-modules , pygrata és pygrata-utils (amelyek a legitim pyg könyvtár kiegészítéseként szerepelnek) és a hkg-sol-utils.

Packj – egy eszközkészlet a rosszindulatú könyvtárak azonosítására Pythonban és JavaScriptben


Forrás: opennet.ru

Hozzászólás