Pular para o conteúdo principal
BlogSegurançaLinode Security Digest 30 de outubro - 6 de novembro de 2022

Linode Security Digest 30 de outubro - 6 de novembro de 2022

Linode Security Digest

Na digressão desta semana, discutiremos:

  • uma consultoria de segurança OpenSSL versão 3.0.0;
  • uma vulnerabilidade de transbordamento de uma matriz de Sqlite; e
  • um ataque de repojacking GitHub.

Openssl Assessoria de Segurança

O OpenSSL 3.0.0 tratou recentemente de duas vulnerabilidades: CVE-2022-3602 e CVE-2022-3786. 

CVE-2022-3602, classificado como crítico (9,8/10), envolve um estouro de 4 bytes de buffer de pilha que pode levar a DoS ou Code Execution. Para uma exploração bem sucedida, o alvo precisa realizar a validação do certificado X509 de um certificado malicioso, especificamente a verificação da restrição de nome. Um atacante pode criar um endereço de e-mail malicioso para transbordar quatro bytes controlados pelo atacante na pilha. Dito isto, o ataque pode ser frustrado por proteções de transbordamento de pilha tipicamente habilitadas em sistemas operacionais modernos. A vulnerabilidade foi inicialmente descrita como crítica pela OpenSSL, e análises posteriores levaram à redução da gravidade para alto. Embora no momento em que foi escrito, a pontuação básica seja 9,8 (crítica).  

CVE-2022-3786, classificado como alto (7,5/10), é outro estouro de buffer que é acionado por um certificado tls malicioso. Semelhante à vulnerabilidade acima mencionada, o ataque envolve um atacante que emite um certificado com um endereço de e-mail malicioso. A diferença está nos caracteres que podem ser utilizados para causar um estouro, que é limitado ao caractere `...' (decimal 46), o que leva a uma falha de serviço ou Negação de Serviço. 

Os usuários que utilizam o OpenSSL 3.0 são encorajados a atualizar para a versão mais recente o mais rápido possível. Este post no blog poderia ser útil para ajudar os usuários a determinar se eles têm a versão vulnerável da biblioteca em uso em seus ambientes.  

Sqlite Array-bounds Overflow Vulnerabilidade

TrailofBits revelou uma vulnerabilidade de alta diversidade em uma popular biblioteca de SGBD Sqlite recentemente remendada O CVE atribuído a esta vulnerabilidade é CVE-2022-35737 e é avaliado em 7,5/10.  

A vulnerabilidade é um estouro de array no SQLite 1.0.12 até o 3.39.x antes do 3.39.2 e afeta os aplicativos que usam a API da biblioteca do SQLite. A possibilidade de exploração depende de como o SQLite é compilado; se o programa for compilado sem os canários de pilha ativados, será possível executar um código. A vulnerabilidade foi introduzida na versão 1.0.12, lançada em 17 de outubro de 2000. 

De acordo com a fonte, "Em sistemas vulneráveis, o CVE-2022-35737 é explorável quando grandes entradas de string são passadas para as implementações SQLite das funções printf e quando a string de formato contém os tipos de substituição de formato %Q, %q, ou %w". Isto reduz a superfície de ataque e a probabilidade de uma aplicação ser realmente explorável através desta vulnerabilidade, embora ainda seja fortemente recomendado que os usuários avaliem o risco dentro do contexto de seu uso do componente.   

A versão patch SQLite v3.39.2 está disponível para os usuários atualizarem para em suas aplicações. Os usuários dependentes de ferramentas que utilizam a biblioteca SQLite vulnerável precisariam esperar que o patch fosse liberado pelos mantenedores do código. Trailofbits também liberou o exploit POC que pode ser encontrado no GitHub.  

Github Repojacking

A Checkmarx revelou mais um método para atacar a cadeia de abastecimento, visando repositórios de código hospedados no github.com. O ataque é chamado de repojacking e envolve a aquisição de um repositório, contornando um controle de segurança pré-existente estabelecido pela Microsoft para este tipo de ataque. Este controle é chamado de "repojacking popular-repositório-espaço de nomes-retirada" e basicamente desativa os usuários do GitHub de criar repositórios com um nome que corresponda ao usado anteriormente por um usuário desativado com o mesmo nome de usuário se o repositório tivesse mais de 100 clones dentro de uma semana antes da mudança do nome de usuário. Foi implementado como uma mitigação pelo GitHub após o checkmarx ter revelado uma vulnerabilidade semelhante em 2021. 

O novo ataque contorna a mitigação alavancando um recurso de github chamado transferência de repositório. Eis como o ataque é perseguido:

  1. "vítima/repo" é um popular repositório GitHub aposentado sob a proteção "popular repositório namespace retirement".
  2. "A "helper_account" cria o repositório "repo
  3. A "helper_account" transfere a propriedade do repositório "repo" para a "attacker_account".
  4. "attacker_account" renomeia seu nome de usuário para "vítima".
  5. A nova conta "vítima" (anteriormente "conta_atacante") aceita a transferência de propriedade e assume essencialmente o repositório alvo

A correção para esta vulnerabilidade foi aplicada. A Checkmarx também lançou uma ferramenta para verificar quais dependências diretas de golang poderiam ser vulneráveis a este tipo de ataque. 


Comentários

Deixe uma resposta

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados com *