blog conviso

Uma visão geral do CVE-2021-41020

O assunto deste artigo é a vulnerabilidade CVE -2021-41020.. Mas antes, vamos contextualizar alguns detalhes antes de abordar a CVE.

May 16, 2022

By

Danilo Costa

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.

Você também pode ouvir esse conteúdo:

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

Sobre o autor

Danilo Costa

Bachelor's degree in Computer Science from the Federal University of Alagoas. He has spoken at events such as the NullByte Security Conference and Hackers to Hackers Conference, and presented research projects at national and international events. He has experience in application security, exploit development, and vulnerability research in both userland and kernel land, having discovered vulnerabilities for companies like Microsoft, AMD, and Intel. His interests include operating system internals, compilers, malware development, vulnerability research, and EDR evasion.

Saiba mais