GitHub passa a alertar para pacotes de malware em oito ecossistemas

Mais de 238 000 relatórios sobre pacotes maliciosos estão atualmente reunidos numa base de dados pública da Open Source Security Foundation (OpenSSF). O repositório malicious-packages arrancou em 2023 com mais de 15 000 entradas. É mantido por uma comunidade e utiliza o formato OSV, o Open Source Vulnerability Format, ou seja, uma descrição uniforme de vulnerabilidades conhecidas e de software malicioso em pacotes de software. No final de julho, o GitHub anunciou que iria integrar estes dados na sua própria Advisory Database.
Até agora, os alertas de malware do GitHub só existiam para pacotes do ecossistema npm, ou seja, para bibliotecas JavaScript. Desde o anúncio, o grupo cobre oito ecossistemas de pacotes: crates.io (Rust), Go, Maven, NuGet, npm, PHP Composer, PyPI (Python) e RubyGems. Desenvolver os próprios métodos de deteção para todas estas linguagens teria demorado anos, segundo Ankit Kumar Honey, Senior Engineering Manager no GitHub e responsável pela equipa do Dependabot. O GitHub recorreu, por isso, a uma fonte já existente. Honey formulou-o assim: «Entretanto, a OpenSSF já resolveu o problema da agregação para todos.»
Para a importação, o GitHub construiu uma ferramenta própria. Verifica os relatórios, uniformiza os conjuntos de dados e trata os avisos retirados. Também impede importações duplicadas das contribuições do próprio GitHub. Como medidas de proteção, o GitHub indica limites máximos para os lotes de importação, a rastreabilidade até aos commits de origem e a possibilidade de reverter lotes inteiros.
Para as equipas de programação, isto significa que quem utiliza o Dependabot, o serviço do GitHub que monitoriza as dependências de um projeto, pode receber alertas sobre pacotes maliciosos. Estes alertas são opt-in, ou seja, de adesão voluntária, e têm de ser ativados adicionalmente em cada repositório. As organizações e as empresas (Enterprises) podem introduzi-los de forma centralizada através de Security Configurations. Quem já ativou os alertas de malware recebe automaticamente a cobertura alargada. Além disso, os relatórios podem ser encontrados na Advisory Database com o filtro type:malware.
Há duas limitações. Se um pacote interno partilhar o nome com um pacote público malicioso, podem surgir falsos alarmes. Estes podem ser reduzidos com regras de triagem automática para o Dependabot. Nesse caso, é preciso cautela: a regra pré-definida «Dismiss package malware alerts» está desativada por defeito, mas também descarta alertas sobre dependências que são de facto maliciosas em todas as versões. Os números provêm da OpenSSF e do próprio GitHub; não existem na documentação medições independentes sobre quantos pacotes maliciosos a base de dados regista.
Comentários
A carregar a conversa…
Inicie sessão para escrever um comentário. Iniciar sessão