O 1Password está tornando mais fácil para os usuários do GitHub configurar commits assinados usando chaves SSH . As confirmações assinadas verificam se a pessoa que está fazendo a alteração de código é quem ela diz ser.
Quando o código é verificado em um repositório git, a alteração geralmente é salva com o nome da pessoa que envia o código. Embora o nome do committer seja normalmente definido pelo cliente do usuário, ele pode ser facilmente alterado para qualquer outra coisa, o que possibilita que alguém falsifique as mensagens e os nomes do commit. Isso pode ter implicações de segurança se os desenvolvedores não souberem quem enviou um código específico.
O problema fundamental e não resolvido subjacente a todos os problemas de segurança cibernética na Internet é a falta de boas ferramentas para realmente autenticar um ser humano vivo, diz John Bambenek, principal caçador de ameaças da Netenrich. Facilitar a assinatura criptográfica ou os commits assinados permite que as organizações tenham um nível mais alto de garantia sobre a identidade da pessoa.
“Sem isso, você está confiando que o committer é quem eles dizem que é, e a pessoa que aceita o commit entende e revisa o commit em busca de problemas”, acrescenta.
Bambenek observa que, como os criminosos estão perseguindo o código em bibliotecas de código aberto a sério, ser capaz de autenticar verdadeiramente as pessoas que enviam código significa que a janela para usar seus repositórios para comprometer outras organizações é muito menor.
Gerenciamento de chaves mais fácil e escalável
Michael Skelton, diretor sênior de operações de segurança da Bugcrowd, aponta que gerenciar chaves SSH e GPG para assinar commits em várias máquinas virtuais e host de desenvolvedores pode ser um processo complicado e confuso. Anteriormente, os desenvolvedores interessados
“Isso pode dificultar a adoção em massa de commits assinados, prejudicando a capacidade da sua organização de aproveitar ao máximo esse recurso”, diz ele. “Ao fazer com que o 1Password gerencie isso em seu nome, você pode implantar essas chaves com mais facilidade e atualizar as configurações sem problemas.”
Como o 1Password armazena as chaves SSH, fica mais fácil e menos confuso gerenciar chaves em vários dispositivos. Esse recurso também possibilita o gerenciamento de chaves de assinatura do GitHub para desenvolvedores de maneira mais escalável, diz Skelton.
“Ao resolver esse problema, as organizações podem tentar impor commits assinados em seus repositórios usando o modo vigilante do GitHub, ajudando a limitar a capacidade dos nomes dos committers serem deturpados e, por sua vez, mal interpretados”, diz Skelton.
Com commits assinados, é mais fácil ver quando um commit não foi assinado. Também é possível criar uma política de segurança de aplicativo que rejeite confirmações não assinadas.
Como configurar commits assinados
Veja como configurar o GitHub para usar chaves SSH para verificação.
- Atualize para o Git 2.34.0 ou posterior, vá para https://github.com/settings/keys e selecione “nova chave SSH”, seguido de “Chave de assinatura”.
- A partir daí, navegue até a caixa “Chave” e selecione o logotipo do 1Password, selecione “Criar chave SSH”, preencha um título e selecione “Criar e preencher”.
- Para a última etapa, selecione “Adicionar chave SSH” e a parte do processo do GitHub estará concluída.
Depois que a chave estiver configurada no GitHub, vá para o 1Password em sua área de trabalho para configurar seu arquivo .gitconfig para assinar com a chave SSH.
- Selecione a opção “Configurar” no banner exibido na parte superior, onde uma janela será aberta com um trecho que você pode adicionar ao arquivo .gitconfig .
- Selecione a opção “Editar automaticamente” para que o 1Password atualize o arquivo .gitconfig com um clique.
- Os usuários que precisam de uma configuração mais avançada podem copiar o snippet e fazer as coisas manualmente.
Um selo de verificação verde para facilitar a visibilidade da verificação será adicionado à linha do tempo quando você enviar para o GitHub.
FONTE: DARK READING