O que é a OWASP? Introdução às 10 principais vulnerabilidades e riscos da OWASP

A OWASP é uma fundação sem fins lucrativos que trabalha para melhorar a segurança de software.

OWASP (Open Worldwide Application Security Project) é uma comunidade aberta dedicada a capacitar organizações a projetar, desenvolver, adquirir, operar e manter software para aplicações seguras e confiáveis. Seus programas incluem projetos de software de código aberto liderados pela comunidade e conferências locais e globais, envolvendo centenas de capítulos em todo o mundo e dezenas de milhares de membros.

Por que a OWASP é importante?

A OWASP desempenha um papel fundamental na conscientização sobre os riscos de segurança de aplicações web e fornece recursos, ferramentas, documentação e práticas recomendadas valiosos para enfrentar os crescentes desafios relacionados à segurança dessas aplicações. A OWASP ajuda desenvolvedores, profissionais de segurança e organizações a compreender possíveis ameaças e adotar as melhores práticas de segurança.

A OWASP mantém uma lista dos dez riscos mais críticos à segurança de aplicações web, juntamente com processos, procedimentos e controles eficazes para mitigá-los. A OWASP também disponibiliza uma lista dos 10 principais riscos de segurança de APIs para orientar os envolvidos no desenvolvimento e na manutenção de APIs e aumentar a conscientização sobre vulnerabilidades comuns de segurança em APIs.

A comunidade OWASP incentiva indivíduos e organizações a contribuir com seus projetos e recursos. Essa abordagem colaborativa e orientada por pesquisas permite que a comunidade aproveite o conhecimento e a experiência coletivos de seus membros, resultando em recursos abrangentes e atualizados.

Existem riscos de segurança comuns a aplicativos e APIs que devem ser considerados ao implementar soluções de segurança. Por exemplo:

  • Controles de autenticação/autorização fracos
  • Configuração incorreta
  • Abuso da lógica de negócios (preenchimento de credenciais, invasão de contas)
  • Falsificação de solicitação do lado do servidor (SSRF).

Os 10 principais riscos de segurança de aplicações da OWASP

O OWASP Top 10 é uma lista amplamente reconhecida dos riscos mais críticos à segurança de aplicações web. A lista serve como guia para desenvolvedores, profissionais de segurança e organizações ao priorizarem seus esforços para identificar e mitigar riscos críticos à segurança de aplicações web.

A presença de um risco na lista OWASP Top 10 não indica necessariamente sua prevalência ou gravidade em todas as aplicações web, e o Top 10 não é classificado em uma ordem específica nem por prioridade.

Os 10 principais riscos da OWASP de segurança de aplicações web em 2021 são:

  1. Controles de acesso inadequados. Essa vulnerabilidade ocorre quando a aplicação insuficiente dos controles de acesso e autorização permite que invasores acessem funcionalidades ou dados sem autorização. Isso pode ocorrer devido a referências diretas inseguras a objetos (IDORs), que podem surgir quando uma aplicação não valida nem autoriza a entrada do usuário utilizada como referência direta a um objeto interno. Também pode ocorrer devido à ausência de controles de acesso em nível de função, quando a aplicação valida os controles de acesso apenas na etapa inicial de autenticação ou autorização, mas não os aplica de forma consistente em todas as funções ou operações da aplicação. Um firewall de aplicações web (WAF) pode ajudar a proteger contra esses ataques monitorando e aplicando controles de acesso para impedir o acesso não autorizado a objetos ou recursos confidenciais.
  2. Falhas criptográficas. Esse risco ocorre devido à proteção inadequada de dados confidenciais em trânsito e em repouso. Falhas criptográficas podem levar a violações de dados, acesso não autorizado a informações confidenciais e descumprimento de regulamentações de privacidade de dados, como o Regulamento Geral sobre a Proteção de Dados (GDPR) da União Europeia, e de normas financeiras, como o Padrão de Segurança de Dados da Indústria de Cartões de Pagamento (PCI DSS). Essas falhas podem resultar do armazenamento criptográfico inseguro, do armazenamento de dados em texto simples ou do gerenciamento inseguro de chaves. O risco também pode decorrer do vazamento de informações, que pode ter origem na geração fraca de chaves ou números aleatórios ou em falhas nos protocolos criptográficos.
  3. Ataques de injeção. As falhas de injeção ocorrem quando invasores inserem dados não confiáveis ou maliciosos em linguagens de comando ou consulta, ou quando os dados fornecidos pelo usuário não são validados, filtrados ou sanitizados pela aplicação, levando à execução não intencional de comandos maliciosos. Essa categoria de risco abrange comandos NoSQL e do sistema operacional, LDAP e ataques de injeção de SQL, além de incluir Cross-Site Scripting (XSS), em que invasores injetam scripts maliciosos do lado do cliente, como JavaScript, em páginas da web visualizadas por outros usuários. Isso pode resultar no roubo de informações confidenciais, como credenciais de login, dados pessoais ou cookies de sessão. Um WAF pode ajudar a detectar e bloquear tentativas de injeção de código malicioso ao inspecionar e filtrar as solicitações recebidas, incluindo XSS refletido (não persistente), armazenado (persistente) e baseado no Document Object Model (DOM), impedindo que elas cheguem à aplicação.
  4. Design inseguro. Esta é uma categoria ampla que abrange diferentes vulnerabilidades, manifestadas como controles de segurança ausentes ou ineficazes e falhas de arquitetura. Essas falhas podem ocorrer quando uma aplicação é projetada para depender de processos inerentemente inseguros ou quando os controles de segurança necessários para a proteção contra ataques específicos não são implementados. Esses riscos podem ser reduzidos por meio do uso mais amplo de modelagem de ameaças, padrões de design seguro e arquiteturas de referência.
  5. Configurações de segurança incorretas. A falta de reforço da segurança em frameworks, plataformas, servidores ou controles de segurança de aplicações web pode levar a acessos não autorizados, à exposição de informações confidenciais ou a outras vulnerabilidades de segurança. Os riscos decorrentes de configurações de segurança incorretas também podem resultar de permissões configuradas inadequadamente em serviços de nuvem ou da instalação ou habilitação de recursos desnecessários, como portas, serviços, contas ou privilégios não utilizados. Configurações incorretas tanto em aplicações web quanto em APIs representam um risco significativo, pois os principais provedores de nuvem adotam diferentes configurações de segurança padrão, e a arquitetura está se tornando cada vez mais descentralizada e distribuída em uma infraestrutura multinuvem.
  6. Componentes vulneráveis e desatualizados. O uso de componentes desatualizados, sem correções ou vulneráveis, como bibliotecas, frameworks ou plugins, pode expor as aplicações a falhas de segurança conhecidas, aumentando o risco de exploração. Esses riscos podem decorrer do uso de software sem suporte ou desatualizado, incluindo o sistema operacional (SO), o servidor web/de aplicações, o sistema de gerenciamento de banco de dados (SGBD), aplicações, APIs e todos os componentes, ambientes de execução e bibliotecas. Essas ameaças são particularmente perigosas quando as organizações não adotam, em tempo hábil, medidas baseadas em riscos para corrigir ou atualizar a plataforma, os frameworks e as dependências subjacentes de um sistema, deixando-o exposto desnecessariamente a riscos conhecidos por dias ou semanas. Cadeias complexas de suprimento de software e a automação por meio de pipelines de CI/CD aumentam o risco de introdução de software vulnerável na infraestrutura de TI. Um WAF pode servir como uma medida provisória essencial de proteção contra a exploração de vulnerabilidades.
  7. Falhas de identificação e autenticação. Vulnerabilidades na autenticação e no gerenciamento de identidades e sessões podem permitir que invasores comprometam contas de usuários, senhas e tokens de sessão ou explorem o gerenciamento inseguro de sessões. Falhas nessas áreas podem possibilitar ataques automatizados, como preenchimento de credenciais. As vulnerabilidades relacionadas a senhas são a fonte mais comum desses riscos, pois muitas pessoas reutilizam senhas ou usam senhas padrão, fracas ou amplamente conhecidas. Problemas no gerenciamento de sessões também podem levar a ataques relacionados à autenticação, especialmente se as sessões dos usuários ou os tokens de autenticação não forem devidamente invalidados durante o logout ou após um período de inatividade. Ataques que contornam os controles de autenticação representam um risco crescente tanto para aplicações web quanto para APIs, conforme detalhado nos projetos OWASP Top 10, API Security Top 10 e Automated Threats.
  8. Falhas de integridade de software e dados. Essas vulnerabilidades resultam de códigos de aplicações e infraestruturas que não oferecem proteção contra violações da integridade de dados e software. Isso pode ocorrer quando uma aplicação depende de plugins, bibliotecas ou módulos provenientes de fontes, repositórios e CDNs não confiáveis. Também pode ocorrer durante atualizações de software, alterações em dados confidenciais e mudanças no pipeline de CI/CD que não são validadas. Os invasores podem enviar suas próprias atualizações para que sejam distribuídas e executadas em todas as instalações. A desserialização insegura, que ocorre quando uma aplicação recebe dados serializados não confiáveis e os utiliza sem verificar se são válidos, também faz parte dessa categoria de risco, possibilitando ataques como execução remota de código (RCE) e escalonamento de privilégios.
  9. Falhas no registro e monitoramento de segurança. O registro e o monitoramento inadequados podem impedir a detecção e a resposta rápidas a incidentes de segurança, dificultando a identificação e a mitigação de ataques ou atividades não autorizadas. Isso pode significar que eventos auditáveis, como logins, tentativas de login malsucedidas e transações de alto valor, não sejam identificados nem registrados, e que os aplicativos não detectem ataques ativos em tempo real.
  10. Falsificação de solicitação do lado do servidor (SSRF). Essas vulnerabilidades ocorrem quando uma aplicação não valida nem sanitiza uma URL inserida por um usuário antes de obter dados de um recurso remoto. Os invasores podem explorar essas falhas para forçar aplicações a acessar destinos maliciosos na Web, mesmo que estejam protegidas por um firewall ou outro mecanismo de defesa. Esses ataques também podem ocorrer se o recurso visado tiver relações de confiança com outros sistemas, como um serviço de metadados em nuvem ou APIs de back-end, permitindo que um invasor faça solicitações a esses serviços confiáveis e extraia informações confidenciais ou execute ações não autorizadas. Para ajudar a mitigar a SSRF, projete sistemas com acesso de privilégio mínimo e use um WAF para definir explicitamente os parâmetros do identificador uniforme de recurso (URI) em sua política de segurança e permitir ou bloquear os hosts que podem acessá-los.

O OWASP Top 10 de 2021 apresenta algumas novas categorias e mudanças de nomenclatura em relação ao OWASP Top 10 de 2017. Essas mudanças incluíram a integração da ameaça de risco Entidades Externas de XML (XXE) de 2017 à categoria Configuração Incorreta de Segurança de 2021 e a inclusão de Cross-Site Scripting (XSS) de 2017 na categoria Injeção de 2021. O risco Desserialização Insegura de 2017 agora faz parte da categoria Falhas de Integridade de Software e Dados de 2021.

Outras publicações da OWASP

Atualmente, a OWASP patrocina 293 projetos, incluindo os 16 projetos de destaque da OWASP a seguir, que agregam valor estratégico à OWASP e à segurança de aplicações como um todo.

  1. Projeto OWASP Amass, que desenvolveu uma ferramenta para ajudar profissionais de segurança da informação a mapear redes de superfícies de ataque e descobrir ativos externos usando técnicas de coleta de informações de fontes abertas e reconhecimento ativo.
  2. Projeto OWASP de Padrão de Verificação de Segurança de Aplicações (ASVS), que fornece uma base para testar os controles técnicos de segurança de aplicações web e também oferece aos desenvolvedores uma lista de requisitos para o desenvolvimento seguro.
  3. Série de Folhas de Referência da OWASP, criada para fornecer um conjunto de guias de boas práticas fáceis de seguir para desenvolvedores e profissionais de segurança de aplicações. Em vez de se concentrar em práticas recomendadas detalhadas que são inviáveis para muitos desenvolvedores e aplicações, esses guias apresentam boas práticas que a maioria dos desenvolvedores realmente conseguirá implementar.
  4. OWASP CycloneDX, que é um padrão completo de Lista de Materiais (BOM) que oferece recursos avançados de cadeia de suprimentos para a redução de riscos cibernéticos.
  5. OWASP Defectdojo, que é uma ferramenta de código aberto para gerenciamento de vulnerabilidades que simplifica o processo de testes ao oferecer modelos, geração de relatórios, métricas e ferramentas básicas de autoatendimento.
  6. OWASP Dependency-Check, que é uma ferramenta de análise de composição de software (SCA) que busca detectar vulnerabilidades divulgadas publicamente nas dependências de um projeto. Para isso, ela verifica se há um identificador de enumeração de plataforma comum (CPE) para determinada dependência. Caso encontre, gera um relatório com links para as entradas associadas de vulnerabilidades e exposições comuns (CVE).
  7. OWASP Dependency-Track, que é uma plataforma inteligente de análise de componentes que permite às organizações identificar e reduzir riscos na cadeia de suprimentos de software.
  8. OWASP Juice Shop, que talvez seja a aplicação web insegura mais moderna e sofisticada, usada em treinamentos de segurança, demonstrações de conscientização, competições capture-the-flag e como cobaia para ferramentas de segurança. O Juice Shop abrange vulnerabilidades de todo o OWASP Top Ten além de muitas outras falhas de segurança encontradas em aplicações reais.
  9. OWASP Mobile Application Security, que é o principal projeto da OWASP para fornecer um padrão de segurança para aplicativos móveis. Ele também inclui um guia abrangente de testes que aborda os processos, as técnicas e as ferramentas usados durante os testes de segurança de aplicativos móveis, além de um conjunto completo de casos de teste que permite aos profissionais obter resultados consistentes e completos.
  10. OWASP ModSecurity Core Rule Set, que é um conjunto de regras genéricas de detecção de ataques para uso com o ModSecurity ou firewalls de aplicações web compatíveis. O objetivo do CRS é proteger aplicações web contra uma ampla variedade de ataques, incluindo os dez principais riscos da OWASP, com o mínimo de falsos alertas.
  11. Projeto OWTF da OWASP (Framework Ofensivo de Testes Web), que é um framework de código aberto para testes de invasão em aplicações web, desenvolvido para avaliar e testar a segurança dessas aplicações. O principal objetivo do OWTF é ajudar profissionais de segurança e testadores de invasão a automatizar o processo de avaliação e teste de vulnerabilidades em aplicações web, permitindo que identifiquem e corrijam falhas de segurança com mais eficiência.
  12. OWASP SAMM (Modelo de Maturidade para Garantia de Software), que oferece uma maneira eficaz e mensurável de analisar e aprimorar a modelagem do ciclo de vida de desenvolvimento seguro. O SAMM abrange todo o ciclo de vida do software e é independente de tecnologias e processos.
  13. OWASP Security Knowledge Framework, que é uma aplicação web que explica princípios de codificação segura em diversas linguagens de programação e visa ajudar os desenvolvedores a criar aplicações seguras desde a concepção.
  14. OWASP Security Shepherd, que é uma plataforma de treinamento em segurança de aplicações web e móveis, desenvolvida para promover e aprimorar a conscientização sobre segurança entre pessoas com diferentes níveis de habilidade. O objetivo deste projeto é capacitar tanto iniciantes em AppSec quanto engenheiros experientes, aprimorando suas habilidades em testes de invasão até que alcancem o nível de especialistas em segurança.
  15. Guia de Testes de Segurança Web da OWASP, um guia abrangente para testar a segurança de aplicações e serviços web. Ele fornece uma estrutura de boas práticas utilizada por profissionais de testes de invasão e organizações do mundo todo.
  16. OWASP ZAP, uma ferramenta de teste de segurança de aplicações web desenvolvida para ajudar profissionais de segurança e desenvolvedores a identificar e mitigar vulnerabilidades de segurança em aplicações web durante as fases de desenvolvimento e teste.

A importância dos controles de segurança integrados

A OWASP desempenha um papel fundamental no esforço contínuo para aprimorar a segurança de software, conscientizando sobre os riscos de segurança em aplicações web e promovendo as melhores práticas entre desenvolvedores, profissionais de segurança e organizações. Como um projeto conduzido pela comunidade, a OWASP reúne especialistas e entusiastas para colaborar no aprimoramento da segurança de aplicações web, ajudando a construir uma cultura consciente da importância da segurança, que promove práticas de codificação segura e metodologias de desenvolvimento seguro.

Além disso, a OWASP oferece uma ampla variedade de ferramentas, documentos e recursos gratuitos e de código aberto que permitem às organizações aprimorar sua postura de segurança, incluindo o OWASP Top 10, o OWASP API Security Top 10 e o projeto Automated Threats to Web Applications. Outras iniciativas da OWASP incluem:

Participe tornando-se membro da OWASP ou participando de uma reunião de um capítulo local, que é gratuita e aberta tanto a membros quanto a não membros. Além disso, a OWASP realiza quase uma dúzia de eventos globais e regionais por ano, que são ótimas oportunidades para aprimorar suas habilidades profissionais, ampliar sua rede de contatos e conhecer as novas tendências do setor.

A F5 aborda os riscos de segurança da OWASP

A F5 apoia a OWASP Foundation e seu compromisso com o aprimoramento da segurança de software e a conscientização sobre riscos e vulnerabilidades de segurança de aplicações web. Soluções F5 Web Application Firewall bloqueiam e mitigam uma ampla variedade de riscos decorrentes do OWASP Top 10.

As soluções de WAF da F5 combinam proteções baseadas em assinaturas e comportamento, incluindo inteligência contra ameaças da F5 Labs e segurança baseada em ML, para acompanhar as ameaças emergentes. Elas reduzem o esforço e a complexidade de proteger aplicações de forma consistente em ambientes de nuvem, locais e de borda, além de simplificar o gerenciamento por meio de uma infraestrutura SaaS centralizada. Os WAFs da F5 também simplificam a segurança de aplicações ao integrar proteções a frameworks de desenvolvimento e pipelines de CI/CD, com funcionalidades essenciais de segurança, orquestração centralizada e supervisão por meio de um único painel, que oferece uma visão de 360 graus do desempenho das aplicações e dos eventos de segurança em aplicações distribuídas.

A F5 também aborda os riscos identificados no OWASP API Security Top 10 com soluções que protegem a crescente superfície de ataque e contra ameaças emergentes à medida que os aplicativos evoluem e as implantações de APIs aumentam. As soluções de proteção de aplicações web e APIs (WAAP) da F5 protegem toda a superfície de ataque das aplicações modernas com proteções abrangentes que incluem WAF, segurança de APIs, mitigação de DDoS das camadas L3 a L7 e defesa contra bots, ameaças automatizadas e fraudes. A plataforma distribuída facilita a implantação de políticas consistentes e a expansão da segurança em todo o seu portfólio de aplicativos e APIs, independentemente de onde estejam hospedados, além de integrar a segurança ao ciclo de vida das APIs e a ecossistemas mais amplos.

A F5 também oferece soluções para lidar com os riscos descritos no Projeto de Ameaças Automatizadas a Aplicações Web da OWASP.F5 Distributed Cloud Bot Defense previne fraudes e abusos capazes de contornar as soluções existentes de gerenciamento de bots e fornece monitoramento e inteligência em tempo real, além de análise retrospectiva baseada em aprendizado de máquina, para proteger as organizações contra ataques automatizados sem criar atritos para o usuário nem prejudicar a experiência do cliente. Distributed Cloud Bot Defense mantém sua eficácia independentemente de como os invasores reformulem suas estratégias, seja transferindo os ataques de aplicações web para APIs, seja tentando contornar as defesas contra automação por meio da falsificação de telemetria ou do uso de pessoas para resolver CAPTCHAs.

A F5 também oferece proteção contra DDoS em várias camadas para segurança on-line avançada como um serviço gerenciado de mitigação fornecido pela nuvem, que detecta e mitiga, em tempo real, ataques de grande escala direcionados à rede, aos protocolos e às aplicações; as mesmas proteções também estão disponíveis como soluções locais de hardware e software, além de soluções híbridas. O F5 Distributed Cloud DDoS Mitigation oferece proteção contra ataques volumétricos e específicos a aplicações nas camadas 3 e 4, bem como contra ataques avançados na camada 7, antes que eles atinjam sua infraestrutura de rede e suas aplicações.

Para obter mais informações sobre como os componentes da plataforma F5 ADSP protegem contra os riscos de segurança do OWASP, consulte os seguintes recursos: