Packj — ferramenta para detectar bibliotecas maliciosas em Python e JavaScript

Os desenvolvedores da plataforma Packj, que analisa a segurança de bibliotecas, publicaram uma ferramenta de linha de comando aberta que permite identificar construções arriscadas em pacotes que podem estar relacionadas à implementação de atividades maliciosas ou à presença de vulnerabilidades utilizadas para realizar ataques em projetos que utilizam os pacotes analisados ("supply chain"). A verificação de pacotes é suportada para as linguagens Python e JavaScript, disponíveis nos repositórios PyPi e NPM (neste mês, também planejam adicionar suporte para Ruby e RubyGems). O código da ferramenta é escrito em Python e é distribuído sob a licença AGPLv3.

Durante a análise de 330 mil pacotes usando a ferramenta proposta no repositório PyPi, foram identificados 42 pacotes maliciosos com backdoors e 2,4 mil pacotes arriscados. No processo de investigação, é realizada uma análise estática de código para identificar características da API e avaliar a presença de vulnerabilidades conhecidas, registradas no banco de dados OSV. O pacote MalOSS é utilizado para analisar a API. O código dos pacotes é analisado quanto à presença de padrões típicos, geralmente usados em malware. Os padrões foram preparados com base no estudo de 651 pacotes com atividade maliciosa confirmada.

Além disso, são identificados atributos e metadados que aumentam o risco de uso indevido, como a execução de blocos por meio de "eval" ou "exec", a formação de novo código durante a execução, o uso de técnicas de ofuscação e ocultação de código, manipulações de variáveis de ambiente, acesso não autorizado a arquivos, chamadas a recursos de rede em scripts de instalação (setup.py), uso de type spoofing (atribuição de nomes semelhantes a bibliotecas populares), identificação de projetos desatualizados e abandonados, indicação de e-mails e sites inexistentes, e a ausência de um repositório público com o código.

Adicionalmente, pode-se notar a identificação por outros pesquisadores de segurança de cinco pacotes maliciosos no repositório PyPi, que enviavam para fora servidor o conteúdo de variáveis de ambiente visando o roubo de tokens para AWS e sistemas de integração contínua: loglib-modules (apresentados como módulos da biblioteca legítima loglib), pyg-modules, pygrata e pygrata-utils (apresentados como complementos da biblioteca legítima pyg) e hkg-sol-utils.

Packj - ferramenta para identificar bibliotecas maliciosas em Python e JavaScript


Fonte: opennet.ru
Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster