Packj: un conxunto de ferramentas para identificar bibliotecas maliciosas en Python e JavaScript

Os desenvolvedores da plataforma Packj, que analiza a seguridade das bibliotecas, publicaron un conxunto de ferramentas de liña de comandos aberta que lles permite identificar estruturas de risco en paquetes que poidan estar asociadas á implementación de actividade maliciosa ou á presenza de vulnerabilidades utilizadas para realizar ataques. en proxectos que utilicen os paquetes en cuestión ("cadea de subministración"). A comprobación de paquetes é compatible con linguaxes Python e JavaScript, aloxados nos directorios PyPi e NPM (tamén planean engadir compatibilidade con Ruby e RubyGems este mes). O código do kit de ferramentas está escrito en Python e distribúese baixo a licenza AGPLv3.

Durante a análise de 330 mil paquetes utilizando as ferramentas propostas no repositorio PyPi, identificáronse 42 paquetes maliciosos con portas traseiras e 2.4 mil paquetes arriscados. Durante a inspección, realízase unha análise de código estático para identificar as características da API e avaliar a presenza de vulnerabilidades coñecidas observadas na base de datos OSV. O paquete MalOSS úsase para analizar a API. O código do paquete analízase para detectar a presenza de patróns típicos de uso habitual no malware. Os modelos preparáronse a partir dun estudo de 651 paquetes con actividade maliciosa confirmada.

Tamén identifica atributos e metadatos que conducen a un maior risco de uso indebido, como a execución de bloques mediante "eval" ou "exec", a xeración de novo código en tempo de execución, o uso de técnicas de código ofuscado, a manipulación de variables de ambiente, o acceso non obxectivo a ficheiros, etc. acceder aos recursos da rede en scripts de instalación (setup.py), empregar a tipografía (asignar nomes similares aos nomes das bibliotecas populares), identificar proxectos obsoletos e abandonados, especificar correos electrónicos e sitios web inexistentes, falta de repositorio público con código.

Ademais, podemos sinalar a identificación por parte doutros investigadores de seguridade de cinco paquetes maliciosos no repositorio de PyPi, que enviaron o contido das variables de ambiente a un servidor externo coa expectativa de roubar tokens para AWS e sistemas de integración continua: loglib-modules (presentados como módulos para a biblioteca loglib lexítima), pyg-modules , pygrata e pygrata-utils (presentadas como adicións á biblioteca pyg lexítima) e hkg-sol-utils.

Packj: un conxunto de ferramentas para identificar bibliotecas maliciosas en Python e JavaScript


Fonte: opennet.ru

Engadir un comentario