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

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

O OWASP (Open Worldwide Application Security Project) é uma comunidade aberta dedicada a possibilitar que as organizações projetem, desenvolvam, adquiram, operem e mantenham software para aplicações seguras que possam ser confiáveis. Seus programas incluem projetos de software de código aberto liderados pela comunidade e conferências locais e globais, envolvendo centenas de escritórios em todo o mundo com dezenas de milhares de membros.

Por que o OWASP é importante?

O OWASP desempenha um papel crucial na conscientização sobre os riscos de segurança de aplicações Web e fornece recursos, ferramentas, documentação e práticas recomendadas valiosas para enfrentar os crescentes desafios da segurança de aplicações Web. O OWASP ajuda desenvolvedores, profissionais de segurança e organizações a compreender possíveis ameaças e adotar práticas recomendadas de segurança.

O OWASP mantém uma lista dos 10 riscos de segurança mais críticos de aplicações Web, juntamente com processos, procedimentos e controles eficazes para mitigá-los. O OWASP também fornece uma lista dos 10 principais riscos de segurança de APIs para educar os envolvidos no desenvolvimento e manutenção de APIs e aumentar a conscientização sobre os pontos fracos comuns de segurança de APIs.

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

Existem riscos de segurança comuns a aplicações 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 (credential stuffing, account takeover)
  • Server-Side Request Forgery (SSRF).

 

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

O OWASP Top 10 é uma lista amplamente reconhecida dos riscos de segurança mais críticos de aplicações Web. A lista serve como um guia para desenvolvedores, profissionais de segurança e organizações, à medida que eles priorizam seus esforços na identificação e mitigação de riscos críticos de 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 Ten” não é classificado em uma ordem específica ou por prioridade.  

Os riscos de segurança de aplicações Web do OWASP Top 10 para 2021 são:

  1. Quebra de controles de acesso. Esta vulnerabilidade ocorre quando a implementação insuficiente de controles de acesso e autorização permite que invasores acessem funcionalidades ou dados não autorizados. Isso pode ser decorrente de referências diretas de objeto inseguras (IDORs), que podem surgir quando uma aplicação não valida ou autoriza a entrada do usuário que é usada como referência direta a um objeto interno. Também pode ocorrer devido à falta de controles de acesso a nível de função, quando a aplicação valida apenas os controles de acesso no estágio inicial de autenticação ou autorização, mas não aplica consistentemente esses controles em todas as funções ou operações da aplicação. Um firewall de aplicação 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. Este risco ocorre devido à proteção inadequada de dados confidenciais durante o trânsito e em repouso. As falhas criptográficas podem levar a violações de dados, acesso não autorizado a informações confidenciais e não conformidade com os regulamentos de privacidade de dados, como o Regulamento Geral de Proteção de Dados da UE (RGPD) e padrões financeiros, como os Padrões de Segurança de Dados PCI (PCI DSS). Essas falhas podem resultar de armazenamento criptográfico não seguro, armazenamento de dados em texto simples ou gerenciamento de chaves não seguro. O risco também pode derivar do vazamento de informações, que pode se originar da geração de chaves ou números aleatórios fracos ou de falhas em protocolos criptográficos. 
  3. Ataques de injeção. As falhas de injeção ocorrem quando os invasores inserem dados não confiáveis ou hostis em linguagens de comando ou consulta, ou quando os dados fornecidos pelo usuário não são validados, filtrados ou higienizados pela aplicação, levando à execução não intencional de comandos maliciosos. Essa categoria de risco abrange ataques de injeção de SQL, NoSQL, comando OS e LDAP e também inclui cross-site scripting (XSS), no qual os invasores injetam scripts maliciosos no 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ódigos maliciosos inspecionando e filtrando solicitações de entrada,  incluindo XSS refletido (não persistente), armazenado (persistente) e baseado em modelo de objeto de documento (DOM), impedindo que eles atinjam a aplicação.
  4. Design não seguro. Esta é uma categoria ampla que representa diferentes pontos fracos, expressos como controles de segurança ausentes ou ineficazes e falhas de arquitetura. Essas falhas podem ocorrer quando uma aplicação é projetada para confiar em processos inerentemente inseguros ou quando controles de segurança necessários para se defender contra ataques específicos não são implementados. Esses riscos podem ser reduzidos por meio do aumento do uso de modelagem de ameaças, padrões de design seguros e arquiteturas de referência.  
  5. Configurações de segurança incorretas. A falta de reforço da segurança em estruturas de aplicações Web, plataformas, servidores ou controles de segurança pode levar ao acesso não autorizado, exposição de informações confidenciais ou outras vulnerabilidades de segurança. Os riscos decorrentes de configurações de segurança incorretas também podem resultar de permissões configuradas indevidamente em serviços em nuvem ou da instalação ou ativação de recursos desnecessários, como portas, serviços, contas ou privilégios não utilizados. A configuração incorreta de aplicações Web e APIs é um risco significativo, porque os principais provedores de nuvem têm posturas de segurança padrão variadas e a arquitetura está cada vez mais descentralizada e distribuída em uma estrutura multinuvem.   
  6. Componentes vulneráveis e desatualizados. O uso de componentes desatualizados, não corrigidos ou vulneráveis, como bibliotecas, estruturas ou plugins, pode expor as aplicações a falhas de segurança conhecidas, aumentando o risco de exploração. Esses riscos podem resultar de softwares, incluindo o sistema operacional (OS), servidores da Web/aplicações, sistemas de gerenciamento de banco de dados (DBMS), aplicações, APIs e todos os componentes, ambientes de tempo de execução e bibliotecas não suportados ou desatualizados. Essas ameaças são particularmente perigosas quando as organizações não dispõem de medidas oportunas e baseadas em risco para corrigir ou atualizar plataformas, estruturas e dependências subjacentes de um sistema, deixando o sistema aberto a dias ou semanas de exposição desnecessária a riscos conhecidos. Cadeias de fornecimento de software complexas e automação por meio de pipelines de CI/CD aumentam o risco de introdução de softwares vulneráveis na pilha de TI. Um WAF pode servir como um paliativo crítico para proteger contra a exploração de vulnerabilidades.  
  7. Falhas de identificação e autenticação. Deficiências na autenticação, identidade e gerenciamento de sessões podem permitir que os invasores comprometam contas de usuário, senhas e tokens de sessão ou explorem o tratamento não seguro de sessões. Falhas nessas áreas podem permitir ataques automatizados, como o credential stuffing. 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 conhecidas. Os problemas de gerenciamento de sessões também podem levar a ataques relacionados à autenticação, especialmente se as sessões do usuário ou os tokens de autenticação não forem devidamente invalidados durante o logout ou um período de inatividade. Os ataques que contornam controles de autenticação são um risco crescente para aplicações Web e APIs, conforme detalhado nos projetos OWASP Top 10, API Security Top 10 e Automated Threats.
  8. Falhas de integridade de software e dados. Estas vulnerabilidades resultam de códigos e infraestruturas de aplicações que não protegem contra violações de integridade de dados e software. Isso pode ocorrer quando uma aplicação depende de plugins, bibliotecas ou módulos de fontes, repositórios e CDNs não confiáveis. Também pode ocorrer durante atualizações de software, modificações de dados confidenciais e alterações em pipelines de CI/CD que não são validadas. Os invasores podem carregar suas próprias atualizações para serem distribuídas e executadas em todas as instalações. A desserialização insegura, em que uma aplicação pega dados serializados não confiáveis e consome esses dados sem garantir que sejam válidos, também faz parte dessa categoria de risco, permitindo ataques como execução remota de código (RCE) e escalonamento de privilégios. 
  9. Falhas de registro e monitoramento de segurança. O registro e o monitoramento inadequados podem impedir a detecção e resposta oportunas 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, falhas de login e transações de alto valor, não são identificados ou registrados e que as aplicações não detectam ataques ativos em tempo real.  
  10. Server-Side Request Forgery (SSRF). Estas vulnerabilidades ocorrem quando uma aplicação não valida ou higieniza uma entrada de URL por um usuário antes de extrair dados de um recurso remoto. Os invasores podem usar essas falhas para forçar as aplicações a acessar destinos maliciosos da Web, mesmo que elas estejam protegidas por um firewall ou outra defesa. Esses ataques também podem ocorrer se o recurso-alvo 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 para acesso com privilégio mínimo e use um WAF para definir explicitamente os parâmetros do identificador uniforme de recursos (URI) em sua política de segurança e permitir/proibir hosts que possam acessá-los.

O OWASP Top 10 de 2021 reflete algumas novas categorias e mudanças de nomenclatura em relação ao OWASP Top 10 anterior de 2017. Essas mudanças incluíram a integração da ameaça de risco Entidades externas XML (XXE) de 2017 na categoria Configurações de segurança incorretas de 2021 e a adição do Cross-site scripting (XSS) de 2017 à categoria Injeção de 2021. O risco de Desserialização insegura de 2017 agora faz parte da categoria Falhas de integridade de software e dados de 2021.    

Outras publicações do OWASP

Atualmente, o OWASP patrocina 293 projetos, incluindo os seguintes 16 projetos emblemáticos que agregam valor estratégico ao OWASP e à segurança de aplicações como um todo.

  1. O OWASP Amass Project, que desenvolveu uma ferramenta para ajudar os profissionais de segurança da informação no mapeamento de superfícies de ataque em redes e na descoberta de ativos externos usando técnicas de coleta de informações de código aberto e de reconhecimento ativo. 
  2. O OWASP Application Security Verification Standard Project (ASVs), que fornece uma base para testar controles técnicos de segurança de aplicações Web e também fornece aos desenvolvedores uma lista de requisitos para um desenvolvimento seguro.  
  3. O OWASP Cheat Sheet Series, que foi criado para fornecer um conjunto de guias de boas práticas simples de seguir para desenvolvedores e defensores de aplicações. Em vez de se concentrar em práticas recomendadas detalhadas que são impraticáveis para muitos desenvolvedores e aplicações, esses guias fornecem boas práticas que a maioria dos desenvolvedores será realmente capaz de implementar.  
  4. O OWASP CycloneDX, que é um padrão completo de lista de materiais (BOM) que fornece recursos avançados de cadeias de suprimentos para redução de riscos cibernéticos.   
  5. O OWASP Defectdojo, que é uma ferramenta de gerenciamento de vulnerabilidades de código aberto que otimiza o processo de teste oferecendo modelos, geração de relatórios, métricas e ferramentas básicas de autoatendimento.
  6. O OWASP Dependency-Check, que é uma ferramenta de análise de composição de software (SCA) que tenta detectar vulnerabilidades divulgadas publicamente contidas nas dependências de um projeto. Ela faz isso determinando se há um identificador de enumeração de plataforma comum (CPE) para uma determinada dependência. Se encontrado, a ferramenta gerará um relatório vinculado às entradas de vulnerabilidades e exposições comuns (CVE) associadas.   
  7. O OWASP Dependency-Track, que é uma plataforma inteligente de análise de componentes que permite às organizações identificar e reduzir riscos na cadeia de fornecimento de software.
  8. O OWASP Juice Shop, que talvez seja a aplicação Web não segura 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 engloba vulnerabilidades de todo o OWASP Top Ten, juntamente com muitas outras falhas de segurança encontradas em aplicações do mundo real.   
  9. O OWASP Mobile Application Security, que é o principal projeto do OWASP para fornecer um padrão de segurança para aplicações móveis. Ele também inclui um guia de teste abrangente que engloba os processos, técnicas e ferramentas usados durante os testes de segurança de aplicações móveis, bem como um conjunto exaustivo de casos de teste que permite que os testadores forneçam resultados consistentes e completos. 
  10. O 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 CRS visa proteger aplicações Web de uma ampla gama de ataques, incluindo os listados no OWASP Top Ten, com um mínimo de alertas falsos.   
  11. O OWASP Project OWTF (Offensive Web Testing Framework), que é uma estrutura de testes de penetração de aplicações Web de código aberto projetada para avaliar e testar a segurança de aplicações Web. O principal objetivo do OWTF é ajudar os profissionais de segurança e testadores de penetração a automatizar o processo de avaliação e teste de vulnerabilidades em aplicações Web, permitindo que eles identifiquem e abordem pontos fracos de segurança de forma mais eficaz.
  12. O OWASP Samm (Software Assurance Maturity Model), que fornece uma maneira eficaz e mensurável de analisar e melhorar a modelagem do ciclo de vida do desenvolvimento seguro. O Samm suporta o ciclo de vida completo do software e é independente de tecnologia e processo.
  13. O OWASP Security Knowledge Framework, que é uma aplicação Web que explica os princípios de codificação segura em várias linguagens de programação e visa ajudar os desenvolvedores a criar aplicações seguras por design.  
  14. O OWASP Security Shepherd, que é uma plataforma de treinamento em segurança de aplicações móveis e Web projetada para promover e melhorar a conscientização sobre segurança entre pessoas com conjuntos de habilidades variados. O objetivo deste projeto é trazer novatos ou engenheiros experientes em AppSec e aprimorar suas habilidades em testes de penetração para o status de especialista em segurança.
  15. O OWASP Web Security Testing Guide, que é um guia abrangente para testar a segurança de aplicações Web e serviços da Web. Ele fornece um quadro das práticas recomendadas usadas por testadores de penetração e organizações em todo o mundo.
  16. O OWASP ZAP, que é uma ferramenta de teste de segurança de aplicações Web projetada 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.

O caso dos controles de segurança integrados

O OWASP desempenha um papel crítico na busca contínua para melhorar a segurança de software, aumentando a conscientização sobre os riscos de segurança de aplicações Web e promovendo as práticas recomendadas entre desenvolvedores, profissionais de segurança e organizações. Como projeto conduzido pela comunidade, o OWASP reúne especialistas e entusiastas para colaborar na melhoria da segurança de aplicações Web, ajudando a construir uma cultura consciente de segurança que promova práticas de codificação e metodologias de desenvolvimento seguras.

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

  • A OWASP Bug Logging Tool (BLT), que permite que os usuários da Internet relatem quaisquer problemas que encontrem on-line e ajudem a melhorar a segurança da Internet, promovendo a divulgação responsável e um ambiente on-line mais seguro.
  • A OWASP CSRFGuard, uma biblioteca que protege aplicações Web contra ataques de falsificação de solicitação entre sites (CSRF).
  • Vários repositórios no GitHub, incluindo a Cheat Sheet Series, que fornece uma coleção concisa de informações de alto valor sobre tópicos específicos de segurança de aplicações. 
  • A OWASP Top 10 Client-Side Security Risks, uma compilação de vulnerabilidades específicas comuns a aplicações do lado do navegador.
  • O OWASP Cloud-Native Application Security Top 10, um projeto ainda em desenvolvimento que fornecerá informações sobre os riscos de segurança mais proeminentes para aplicações nativas da nuvem, os desafios envolvidos e como superá-los. 

Envolva-se tornando-se membro do OWASP ou participando de uma reunião do escritório local, que é gratuita e aberta a membros e não membros. Além disso, o OWASP organiza quase uma dúzia de eventos globais e regionais a cada ano, que são ótimas oportunidades para melhorar suas habilidades profissionais, construir sua rede profissional e conhecer as novas tendências do setor.

A F5 aborda os riscos de segurança do OWASP

A F5 apoia a Fundação OWASP e sua dedicação em melhorar a segurança de software e aumentar a conscientização sobre os riscos e vulnerabilidades de segurança de aplicações Web. As soluções de firewalls de aplicações Web da F5 bloqueiam e mitigam um amplo espectro de riscos identificados pelo OWASP Top 10.

As soluções de WAF da F5 combinam assinaturas e proteções comportamentais, incluindo a inteligência contra ameaças da F5 Labs e segurança baseada em ML, para acompanhar as ameaças emergentes. Elas aliviam a carga e a complexidade de proteger consistentemente as aplicações em nuvens, no local e em ambientes de borda, ao mesmo tempo em que simplificam o gerenciamento por meio de uma infraestrutura SaaS centralizada. Os WAFs da F5 também otimizam a segurança das aplicações, integrando proteções em estruturas de desenvolvimento e pipelines de CI/CD com funcionalidade de segurança básica, orquestração centralizada e supervisão por meio de um único painel com uma visão de 360 graus do desempenho da aplicação 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 ameaças emergentes à medida que as aplicações evoluem e as implantações de APIs aumentam. As soluções de proteção de APIs e aplicações Web (WAAP) da F5 defendem toda a superfície de ataque de aplicações modernas com proteções abrangentes que incluem WAF, API Security, mitigação de ataques DDoS de L3-L7 e defesa contra bots contra ameaças e fraudes automatizadas. A plataforma distribuída simplifica a implantação de políticas consistentes e a escalabilidade da segurança em todo o seu acervo de aplicações e APIs, independentemente de onde elas estejam hospedadas, além de integrar segurança ao ciclo de vida da API e a ecossistemas mais amplos.

A F5 também oferece soluções para lidar com os riscos descritos pelo OWASP no Projeto contra ameaças automatizadas a aplicações Web. O F5 Distributed Cloud Bot Defense evita fraudes e abusos que podem contornar as soluções de gerenciamento de bots existentes e fornece monitoramento e inteligência em tempo real, bem como análise retrospectiva baseada em ML para proteger as organizações de ataques automatizados, sem impactar o usuário ou afetar a experiência do cliente. O Distributed Cloud Bot Defense mantém a eficácia, independentemente de como os invasores se reequipam, seja direcionando seus ataques de aplicações Web para APIs, tentando contornar defesas antiautomação falsificando a telemetria ou usando solucionadores de CAPTCHA humanos.

A F5 também oferece proteção contra DDoS de várias camadas para segurança on-line avançada como um serviço de mitigação gerenciado e fornecido pela nuvem que detecta e mitiga ataques em larga escala direcionados a redes, protocolos e aplicações em tempo real. As mesmas proteções também estão disponíveis como hardware, software e soluções híbridas no local. A Distributed Cloud DDoS Mitigation da F5 protege contra ataques volumétricos e específicos para aplicações de camada 3–4 e ataques avançados de camada 7 antes que eles alcancem sua infraestrutura de rede e aplicações.