Prévia do material em texto
1. INTRODUÇÃO O OWASP (Open Web Application Security Project) é uma organização online que disponibiliza, de forma gratuita, metodologias, ferramentas, materiais, artigos e tecnologias no campo de segurança. Todas essas metodologias, ferramentas, materiais e artigos são abertos para interessados, com o objetivo de melhorar a segurança em aplicações. O OWASP aborda a segurança em aplicações considerando-a um problema relacionado a pessoas, tecnologias e processos. Para alcançar resultados mais eficazes em segurança de aplicações, são necessárias melhorias contínuas. 2. DESENVOLVIMENTO 2.1 Injeção Os casos de injeção ocorrem quando dados não confiáveis são enviados para um tradutor de código por meio de inputs de dados a um aplicativo web ou via formulários. • Vulnerabilidade: Invasores podem inserir código de banco de dados SQL não criptografados, podendo falsificar a identidade de usuários, adulterar dados, modificar transações e saldos, e até destruir dados do servidor. • Risco: Alto • Mitigação: Realizar a validação dos dados enviados, rejeitando dados suspeitos. Além disso, contar com um administrador de banco de dados para definir controles que minimizem os efeitos de ataques de injeção. 2.2 Falha de Autenticação A autenticação é o sistema pelo qual cada usuário possui seu login. • Vulnerabilidade: Invasores podem obter acesso a contas de usuários e comprometer um sistema inteiro usando a conta do administrador. Exemplo comum é o uso de listas de usuários e senhas obtidas em vazamentos para tentar logins automatizados, resultando em transações indevidas. • Risco: Alto • Mitigação: Uso de autenticação de dois fatores e limitação de tentativas repetidas de login, como reconhecimento facial e controles de taxa. 2.3 Exposição de Dados Sensíveis • Vulnerabilidade: Aplicativos web que não protegem dados sensíveis podem ter essas informações expostas a invasores, como dados financeiros e senhas. Ataques man-in-the-middle são exemplos comuns para furtar esses dados. • Risco: Alto • Mitigação: Criptografar dados sensíveis e desativar o armazenamento em cache de informações confidenciais. Evitar armazenar dados sensíveis desnecessariamente. 2.4 Entidades Externas de XML (XEE) XML é uma linguagem de marcação legível por humanos e máquinas. • Vulnerabilidade: Ataques que exploram a entrada XML para acessar unidades de armazenamento não autorizadas, expondo dados sensíveis. • Risco: Alto • Mitigação: Preferir formatos menos complexos, como JSON, ou corrigir os analisadores XML para evitar uso indevido de unidades de armazenamento. 2.5 Falha no Controle de Acesso Controle de acesso gerencia permissões para dados e funcionalidades. • Vulnerabilidade: Controles corrompidos permitem invasores agirem como administradores, por exemplo, alterando partes da URL sem verificação. • Risco: Alto • Mitigação: Uso de tokens de autorização seguros com controles rigorosos. 2.6 Configuração Incorreta de Segurança • Vulnerabilidade: Uso de configurações padrão e exibição detalhada de erros que expõem vulnerabilidades. • Risco: Alto • Mitigação: Remover recursos não utilizados e mensagens de erro genéricas. 2.7 Cross-Site Scripting (XSS) • Vulnerabilidade: Permitir que usuários adicionem código JavaScript malicioso em URLs ou páginas, que é executado em navegadores de outras vítimas. • Risco: Alto • Mitigação: Evitar solicitações HTTP não confiáveis e validar conteúdos gerados por usuários. Utilizar frameworks modernos como ReactJS e Ruby on Rails. 2.8 Desserialização Insegura Serialização converte objetos em formatos para armazenamento ou transmissão; desserialização é o processo inverso. • Vulnerabilidade: Desserialização de dados não confiáveis pode levar a ataques DDoS e execução remota de código. • Risco: Alto • Mitigação: Monitorar desserialização, implementar verificações de tipo e evitar desserialização de dados não confiáveis. 2.9 Uso de Componentes com Vulnerabilidades Conhecidas • Vulnerabilidade: Componentes usados em muitos sites podem ter falhas exploradas em larga escala. • Risco: Alto • Mitigação: Remover componentes não usados, usar fontes confiáveis e manter componentes atualizados. 2.10 Registros e Monitoramento Insuficientes • Vulnerabilidade: Falta de monitoramento dificulta a detecção de violações, que podem passar despercebidas por meses. • Risco: Alto • Mitigação: Implementar logs, monitoramento e planos de resposta a incidentes. 3. CONCLUSÃO Na realização desta atividade, aprendi que a utilização do OWASP é fundamental, pois ajuda a identificar possíveis problemas e vulnerabilidades, além de apresentar formas de evitar e minimizar riscos. A prática constante de testes é essencial para garantir a melhoria contínua na segurança das aplicações.