Packj platformas izstrādātāji, kas analizē bibliotēku drošību, ir publicējuši atvērtu komandrindas rīku, kas ļauj identificēt riskantas konstrukcijas iepakojumos, kas var būt saistītas ar ļaunprātīgas darbības īstenošanu vai ievainojamību klātbūtni, kas tiek izmantotas uzbrukumiem projektiem, kas izmanto šos iepakojumus (supply chain). Atbalsta pakotņu pārbaudi Python un JavaScript valodās, kas novietotas PyPi un NPM katalogos (šomēnes plāno pievienot atbalstu arī Ruby un RubyGems). Rīka kods ir uzrakstīts Python valodā un izplata šis licences AGPLv3 ietvaros.
Analizējot 330 tūkstošus iepakojumu ar piedāvāto rīku PyPi krātuvē, tika identificēti 42 ļaunprātīgi iepakojumi ar aizmugures durvīm un 2,4 tūkstoši riskantu iepakojumu. Pārbaudes procesā tiek veikta statiskā koda analīze, lai identificētu API īpatnības, un novērtēta zināmo ievainojamību klātbūtne, kas atzīmēta OSV datu bāzē. API analīzei tiek izmantots MalOSS pakotne. Paketēm tiek veikta analīze uz tipiskajiem paraugiem, kas parasti tiek izmantoti ļaunprātīgajā programmēšanā. Paraugi sagatavoti, pamatojoties uz 651 iepakojumu ar apstiprinātu ļaunprātīgu darbību pētījumu.
Tiek identificēti arī atribūti un metadati, kas palielina nepareizas izmantošanas risku, piemēram, bloku izpilde, izmantojot "eval" vai "exec", jauna koda veidošana darba laikā, kodēšanas slēpšanas tehniku izmantošana (obfuscated), vides mainīgo manipulācijas, nepareiza piekļuve failiem, piekļuve tīkla resursiem instalēšanas skriptos (setup.py), type-squatting (nosaukumu piešķiršana, kas līdzīgi populāru bibliotēku nosaukumiem), novecojušu un pamestu projektu identificēšana, neeksistējošu e-pasta adresu un vietņu norādīšana, publiskā koda repozitorija trūkums.
Papildus jāatzīmē, ka citi drošības pētnieki ir identificējuši piecus ļaunprātīgus iepakojumus PyPi krātuvē, kas sūtīja datus uz ārējiem servera vides mainīgo saturu, kas vērsta uz AWS un nepārtrauktas integrācijas sistēmu piesavināšanos: loglib-modules (pasniegta kā moduļi par legālo bibliotēku loglib), pyg-modules, pygrata un pygrata-utils (pasniegta kā papildu funkcijas legālajai bibliotēkai pyg) un hkg-sol-utils.

Avots: opennet.lv
