Após a campanha de ciberespionagem 2020 da SolarWinds, na qual hackers russos inseriram atualizações contaminadas em uma plataforma de gerenciamento de TI amplamente utilizada, uma série de outros ataques à cadeia de suprimentos de software continua a destacam a necessidade urgente de bloquear as cadeias de custódia de software. E a questão é particularmente premente em código aberto, onde os projetos são inerentemente descentralizados e muitas vezes empreendimentos ad hoc. Após uma série de comprometimentos preocupantes com pacotes de software JavaScript amplamente baixados do proeminente registro “npm”, de propriedade do GitHub, a empresa apresentou um plano esta semana para oferecer defesas expandidas para segurança de código aberto. )
O GitHub, que é propriedade da Microsoft, anunciou na segunda-feira que planeja oferecer suporte à assinatura de código, uma espécie de selo de cera digital, para pacotes de software npm usando a plataforma de assinatura de código Sigstore. A ferramenta surgiu da colaboração entre indústrias para tornar muito mais fácil para os mantenedores de código aberto verificarem se o código que eles criam é o mesmo código que acaba nos pacotes de software que estão sendo baixados por pessoas em todo o mundo.
“Embora a maioria dos pacotes npm sejam de código aberto, atualmente não há garantia de que um pacote no npm seja construído a partir do mesmo código-fonte publicado”, diz Justin Hutchings, diretor de gerenciamento de produtos do GitHub. “Os ataques da cadeia de suprimentos estão aumentando, e adicionar informações de compilação assinadas a pacotes de código aberto que validam de onde o software veio e como ele foi construído é uma ótima maneira de reduzir a superfície de ataque.”
Em outras palavras, trata-se de criar um jogo de telefone criptograficamente verificado e transparente.
Dan Lorenc, CEO da Chainguard, que co-desenvolve a Sigstore, enfatiza que, embora o GitHub não seja o único componente do ecossistema de código aberto, é uma praça absolutamente crucial para o comunidade porque é onde a grande maioria dos projetos armazena e publica seu código-fonte. Quando os desenvolvedores realmente querem baixar aplicativos ou ferramentas de código aberto, eles normalmente vão para um gerenciador de pacotes
“Você não instala o código-fonte diretamente, geralmente instala algum formato compilado dele, então algo aconteceu entre o código fonte e a criação do pacote. E até agora, todo esse passo foi apenas uma caixa preta em código aberto”, explica Lorenc. “Você vê o código e depois baixa o pacote, mas não há nada que prove que o pacote veio desse código ou que a mesma pessoa estava envolvida, então é isso que o GitHub está corrigindo.”








