Dean Coclin que é diretor sênior de Desenvolvimento de negócios da DigiCert, comenta sobre o Caso Github em entrevista exclusiva para o Channel 360

P. Você pode fornecer uma visão geral do caso Github?
R. Em 31 de janeiro, a popular plataforma de hospedagem de código GitHub relatou que um usuário não autorizado obteve acesso a seus sistemas em 6 de dezembro de 2022 e roubou três certificados de assinatura de código criptografados. Uma vez detectado, o GitHub revogou imediatamente as credenciais não autorizadas. Pouco depois, a empresa anunciou que, como precaução adicional, revogaria os certificados no dia 2 de fevereiro.

P.Quais são as principais consequências de certificados de assinatura de código roubados?

R. Isso pode ser extremamente prejudicial para a reputação e os resultados financeiros de sua empresa. O software malicioso assinado com uma chave roubada pode se espalhar com rapidez e facilidade, pois os usuários têm maior probabilidade de confiar no software assinado com uma chave confiável. Isso pode levar a violações de segurança generalizadas, roubo de dados e até mesmo danos à infraestrutura crítica. As consequências de chaves de assinatura de código roubadas significam problemas do mundo real; assim, quando os Estados Unidos emitiram recentemente uma ordem executiva para melhorar a segurança cibernética do país, uma das principais etapas incluídas foi o uso de assinatura de código para garantir a integridade do código.

Nesse caso, a investigação do GitHub descobriu que “não havia risco para os serviços do GitHub.com como resultado desse acesso não autorizado e nenhuma alteração não autorizada foi feita nesses projetos”. Além disso, “os certificados foram protegidos por senha e não temos evidências de uso malicioso”. O GitHub diz que revogar os certificados é uma medida preventiva, mas o dano poderia ter sido muito pior se os certificados não fossem criptografados e protegidos por senha.

P. Como as empresas podem proteger seus negócios e não se tornar o novo Github?

R.Felizmente, existem medidas que você pode tomar para evitar que um incidente semelhante aconteça com você. Primeiro, é fundamental que as organizações protejam e controlem o uso de suas chaves de assinatura de código. Assim, o controle e a visibilidade são essenciais para proteger as chaves de assinatura de código. A capacidade de impor direitos de assinatura, controlar quem tem acesso às chaves de assinatura e gerar relatórios que mostram quem assinou o quê, quando e onde fornece um alto nível de visibilidade e permite que você resolva rapidamente quaisquer problemas que possam surgir. Além disso, as chaves precisam ser armazenadas com segurança para reduzir a capacidade de roubá-las dos invasores. No caso do GitHub, suas chaves foram criptografadas, o que é uma prática recomendada. No entanto, também recomendamos armazenar chaves off-line e apenas colocá-las on-line para assinatura.

Além disso, uma estratégia de rotação de chaves é crucial para a segurança da assinatura de código. Confiar em uma única chave para assinar tudo pode levar a grandes interrupções se a chave for comprometida. Usar a mesma chave para assinar vários trechos diferentes de código será desastroso porque, se a chave for comprometida e precisar ser revogada, todo o código assinado com essa chave será invalidado. Ao implementar uma estratégia de rotação de chaves forte e frequente, usando chaves exclusivas e tendo acesso a chaves sob demanda, você pode limitar os danos de uma violação de segurança.

Por fim, embora não esteja diretamente vinculado à própria proteção de chave, antes de assinar o código, é importante executar uma verificação de vírus para garantir que o código esteja livre de conteúdo malicioso. Isso proporcionará tranquilidade e ajudará a evitar ameaças à segurança. A verificação pode ser feita no nível do código-fonte (Static Application Security Testing, ou SAST) e no software compilado (Dynamic Application Security Testing, ou DAST), e ambas são práticas recomendadas. Essas medidas complementam a assinatura de código para ajudar a proteger a cadeia de suprimentos de software.

P. O que podemos aprender com este momento?

R. O incidente com a chave de assinatura de código roubada do GitHub serve como um lembrete da importância de manter as chaves de assinatura de código digital seguras. Ao tomar as medidas necessárias para proteger suas chaves, você pode evitar incidentes semelhantes e garantir a segurança e a confiança de seu software.