Segurança de Aplicação

Uma visão geral do CVE-2021-41020

O assunto deste artigo é a vulnerabilidade CVE-2021-41020 – a qual encontrei no FortiIsolator – um produto da Fortinet. Mas antes, acho que pode ser interessante contextualizar alguns detalhes antes de abordar a CVE.

No ano passado, a OWASP lançou o Top 10 2021, uma documentação de conscientização voltada para segurança de aplicações web e para desenvolvedores. Ela representa um amplo consenso sobre os riscos de segurança mais críticos para aplicações.

Nesta lista, o risco chamado Broken Access Control subiu da 5ª posição na lista para a 1ª. De acordo com o OWASP, 94% das aplicações foram testadas para alguma forma de controle de acesso quebrado.

Tendo isto em mente, a CVE -2021-41020 é considerada uma vulnerabilidade (CWE-284: Improper Access Control) que está categorizada, neste contexto, na OWASP Top 10 A01 2021.

Em março de 2022 eu falei em um evento, ocasião na qual abordei algumas vulnerabilidades que encontrei (sobre A01 2021 – Broken Access Control). Posteriormente, em 3 de maio, foi lançada uma correção de bug de outra vulnerabilidade que entra nesta categoria de risco. Você pode conferir no site da Fortinet Part.

O processo de descoberta

Primeiramente foi criado um ambiente de teste para validar o funcionamento deste software. Então percebi que o software tinha um comportamento incomum quando o usuário em modo somente-leitura era aplicado. Neste momento, fiz um mapa de endpoints críticos, então identifiquei que o recurso “CA Re-Generate” é um componente importante para a finalidade do software.

CVE – 2021-41020: a vulnerabilidade

Para validar se havia uma vulnerabilidade no software, algumas tarefas foram necessárias:

  • Os endpoints críticos no FortiIsolator foram listados;
  • Identifiquei que o recurso CA Re-generate é um componente importante da finalidade do software;
  • Foi validado o mecanismo de autorização para acesso a este componente, e durante este processo, foi identificado que não houve uma validação de autorização correta – esta foi criada por um usuário com permissão somente-leitura que não deveria poder acessar o componente. Este usuário conseguiu gerar novamente o certificado CA no software.

Para corrigir o problema, as seguintes ações são necessárias:

  • Atualize para o FortiIsolator versão 2.3.3 ou superior.
  • Atualize para o FortiIsolator versão 2.4.0 ou superior.

Quando o problema está relacionado a quebra de controle de acesso, é importante:

  • Usar o modo “negar como padrão” ou Deny by default.
  • Implementar mecanismos de controle de acesso.
  • “Logar” falhas de controle de acesso
  • Aplicar controle “Rate Limit” para limitar o consumo indevido à  API 

Conclusão

Para evitar problemas semelhantes, aplique os conceitos de Security By Design, Shift-Left, estabeleça requisitos antes da implementação do software e procure aspectos de segurança durante o planejamento da arquitetura. Se você tiver alguma dúvida sobre isso, entre em contato com nossa equipe!

Política de divulgação

A vulnerabilidade foi relatada seguindo as Políticas de Divulgação da Fortinet Company.

Nova call to action
Related posts
Segurança de Aplicação

7 dicas para desenvolvedores que querem ingressar no mundo de AppSec

Se você é desenvolvedor e pensa em ingressar no mundo de AppSec – quem sabe está até…
Read more
Segurança de Aplicação

Mantendo seu código seguro no GitHub com a integração da Conviso Platform

O GitHub é uma das principais plataformas de hospedagem, desenvolvimento e gerenciamento de código…
Read more
Segurança de Aplicação

Dicas e técnicas de Programação Segura para um código de alta qualidade

Como priorizar a programação segura no dia a dia do desenvolvedor? Entre diversos prazos…
Read more

Deixe um comentário