Em janeiro 11, 2024, GitLab lançou uma atualização com o aviso oficial sobre a correção de violação crítica de segurança. A vulnerabilidade permite que o usuário envie o formulário de redefinição de senha da conta para um endereço de e-mail não verificado, efetivamente concedendo a um estranho acesso ao repositório. Quase todas as versões 16.x de seu pacote de software é suscetível à exploração.
Vulnerabilidade de clique zero do GitLab permite sequestro de conta
Na medida em que descrição oficial da empresa do CVE-2023-7028 vai, algumas versões contêm um bug crítico. Usando isso, um adversário em potencial pode enviar o e-mail de redefinição de senha para um endereço de e-mail arbitrário. Daí, hackers podem facilmente sequestrar contas com quaisquer privilégios de acesso. Essa facilidade de exploração e a gravidade dos resultados potenciais é o que confere a esta vulnerabilidade a pontuação CVSS de 10/10.
Acessando o repositório, os invasores podem efetivamente fazer o que quiserem com o código armazenado nele. Vendendo segredos corporativos, procurando por vulnerabilidades potenciais no software, injetar código malicioso na esperança de comprometer os sistemas dos funcionários ou até mesmo lançar a supply chain attack – escolha o que você gosta. Corrigir isso não deve ser apenas urgente – deve ser feito imediatamente.
Como observa o GitLab, o 2FA ativado na conta a teria salvado de sequestro. A autenticação de dois fatores não é suscetível ao bug e ainda deve ser verificada de maneira adequada. Ainda, existem pessoas suficientes que não se importam com a segurança do acesso ao repositório Git, significa que CVE-2023-7028 tem um enorme campo de aplicação.
Correções de vulnerabilidade de 0 clique do GitLab disponíveis
A empresa não divulgou apenas uma notificação de segurança, mas incluí isso na nota do patch para uma atualização que corrige toda essa bagunça. De acordo com as informações, única versão 16 é vulnerável, especificamente uma lista de suas pequenas atualizações:
- 16.1 para 16.1.5
- 16.2 para 16.2.8
- 16.3 para 16.3.6
- 16.4 para 16.4.4
- 16.5 para 16.5.5
- 16.6 para 16.6.3
- 16.7 para 16.7.1
As últimas versões disponíveis são 16.5.6, 16.6.4 e 16.7.2, o que significa que não há opções para usuários de versões 16.4 e abaixo. No entanto, O GitLab também fornece backports da vulnerabilidade para 16.1.6, 16.2.9, 16.3.7, 16.4.5, 16.5.6, 16.6.4, o que significa que não há necessidade de atualizar para a versão mais recente. Como não há opções de mitigação oferecidas (e possível), atualizações continuam sendo a única opção.
Como se proteger contra vulnerabilidades de software?
Como mencionei acima, há uma maneira de evitar o sequestro de conta por meio desta vulnerabilidade – usando 2FA. Ainda, cada vulnerabilidade específica requer seu próprio método de proteção, o que torna bastante difícil dar conselhos universais. Para este caso específico, por exemplo, uma solução de segurança é completamente inútil, já que o hack acontece completamente longe do ambiente protegido.
Apesar disso, o uso de um software de segurança totalmente projetado reduz fortemente as chances de ser hackeado. Essas vulnerabilidades de zero clique são ocorrências raras, então pessimismo à parte – EDR/XDR será eficaz contra a maioria das tentativas de exploração. Para maior conscientização e resposta mais rápida, Os sistemas SOAR e SIEM serão um ótimo complemento ao pacote.