Packj - un set de instrumente pentru identificarea bibliotecilor rău intenționate în Python și JavaScript

Dezvoltatorii platformei Packj, care analizează securitatea bibliotecilor, au publicat un set de instrumente de linie de comandă deschisă care le permite să identifice structuri riscante în pachete care pot fi asociate cu implementarea activităților rău intenționate sau prezența unor vulnerabilități utilizate pentru a efectua atacuri. asupra proiectelor care utilizează pachetele în cauză („lanțul de aprovizionare”). Verificarea pachetelor este acceptată în limbajele Python și JavaScript, găzduite în directoarele PyPi și NPM (de asemenea, intenționează să adauge suport pentru Ruby și RubyGems în această lună). Codul setului de instrumente este scris în Python și distribuit sub licența AGPLv3.

În timpul analizei a 330 de mii de pachete folosind instrumentele propuse în depozitul PyPi, au fost identificate 42 de pachete rău intenționate cu backdoors și 2.4 mii de pachete riscante. În timpul inspecției, se efectuează o analiză statică a codului pentru a identifica caracteristicile API și pentru a evalua prezența vulnerabilităților cunoscute observate în baza de date OSV. Pachetul MalOSS este folosit pentru a analiza API-ul. Codul pachetului este analizat pentru prezența modelelor tipice utilizate în mod obișnuit în malware. Șabloanele au fost pregătite pe baza unui studiu de 651 de pachete cu activitate rău intenționată confirmată.

De asemenea, identifică atributele și metadatele care duc la un risc crescut de utilizare greșită, cum ar fi executarea blocurilor prin „eval” sau „exec”, generarea de cod nou în timpul execuției, utilizarea tehnicilor de cod obfuscate, manipularea variabilelor de mediu, accesul non-țintă la fișiere, accesarea resurselor de rețea în scripturi de instalare (setup.py), utilizarea tipsquatting (atribuirea de nume similare cu numele bibliotecilor populare), identificarea proiectelor învechite și abandonate, specificarea e-mail-urilor și site-urilor web inexistente, lipsa unui depozit public cu cod.

În plus, putem remarca identificarea de către alți cercetători de securitate a cinci pachete rău intenționate în depozitul PyPi, care au trimis conținutul variabilelor de mediu către un server extern cu așteptarea furtului de token-uri pentru AWS și sisteme de integrare continuă: loglib-module (prezentate ca module pentru biblioteca legitimă loglib), pyg-modules , pygrata și pygrata-utils (prezentate ca completări la biblioteca legitimă pyg) și hkg-sol-utils.

Packj - un set de instrumente pentru identificarea bibliotecilor rău intenționate în Python și JavaScript


Sursa: opennet.ru

Adauga un comentariu