Packj - työkalupakki haitallisten kirjastojen tunnistamiseen Pythonissa ja JavaScriptissä

Kirjastojen turvallisuutta analysoivan Packj-alustan kehittäjät ovat julkaisseet avoimen komentorivin työkalupakin, jonka avulla he voivat tunnistaa paketeista vaarallisia rakenteita, jotka voivat liittyä haitallisen toiminnan toteuttamiseen tai hyökkäyksiin käytettyjen haavoittuvuuksien esiintymiseen. hankkeissa, joissa käytetään kyseisiä paketteja ("toimitusketju"). Pakettien tarkistusta tuetaan Python- ja JavaScript-kielillä, jotka isännöidään PyPi- ja NPM-hakemistoissa (ne aikovat myös lisätä tuen Rubylle ja RubyGemsille tässä kuussa). Toolkit-koodi on kirjoitettu Pythonilla ja jaettu AGPLv3-lisenssillä.

PyPi-arkistossa ehdotetuilla työkaluilla tehdyn 330 tuhannen paketin analysoinnin aikana tunnistettiin 42 haitallista takaovellista pakettia ja 2.4 tuhatta riskipakettia. Tarkastuksen aikana suoritetaan staattinen koodianalyysi API-ominaisuuksien tunnistamiseksi ja OSV-tietokannassa havaittujen tunnettujen haavoittuvuuksien arvioimiseksi. MalOSS-pakettia käytetään API:n analysointiin. Pakettikoodi analysoidaan haittaohjelmissa yleisesti käytettyjen tyypillisten mallien varalta. Mallit valmistettiin 651 paketin tutkimuksen perusteella, joissa oli vahvistettu haitallinen toiminta.

Se tunnistaa myös attribuutit ja metatiedot, jotka lisäävät väärinkäytön riskiä, ​​kuten lohkojen suorittaminen "eval"- tai "exec"-komennolla, uuden koodin luominen ajon aikana, hämäräkooditekniikoiden käyttäminen, ympäristömuuttujien manipulointi, tiedostojen muu kuin kohdepääsy, verkkoresurssien käyttö asennusskripteissä (setup.py), typequatting (suosittujen kirjastojen nimien kaltaisten nimien antaminen), vanhentuneiden ja hylättyjen projektien tunnistaminen, olemattomien sähköpostien ja verkkosivustojen määrittäminen, julkisen koodivaraston puuttuminen.

Lisäksi voidaan todeta, että muut tietoturvatutkijat tunnistivat PyPi-arkistossa viisi haittapakettia, jotka lähettivät ympäristömuuttujien sisällön ulkoiselle palvelimelle odottaen AWS:n ja jatkuvan integrointijärjestelmän tokeneita: loglib-moduuleita (esitetty muodossa moduulit lailliselle loglib-kirjastolle), pyg-modules , pygrata ja pygrata-utils (mainostetaan lisäyksinä lailliseen pyg-kirjastoon) ja hkg-sol-utils.

Packj - työkalupakki haitallisten kirjastojen tunnistamiseen Pythonissa ja JavaScriptissä


Lähde: opennet.ru

Lisää kommentti