- A1 – Injection – Falhas na injeção, tais como SQL, sistemas operacionais e de injeção de LDAP ocorrem quando dados não confiáveis são enviados para um intérprete, como parte de um comando ou consulta. Dados hostis do atacante pode enganar o interpretador para executar comandos não intencionais ou o acesso a dados sem a devida autorização.
A2 – Broken Authentication and Session Management – Funções de aplicação relacionadas com autenticação e gerenciamento de sessão, muitas vezes não são implementados corretamente, permitindo que os atacantes se comprometer senhas, chaves ou tokens de sessão, ou explorar outras falhas de implementação de assumir a identidade de outros usuários.
A3 – Cross-Site Scripting (XSS) – Falhas XSS ocorrem sempre que uma aplicação obtém os dados não confiáveis e envia para um navegador web sem a devida validação ou escapar. XSS permite aos atacantes executarem scripts no navegador da vítima, que pode seqüestrar sessões de usuários, sites desfigurar, ou redirecionar o usuário para sites maliciosos.
A4 – Insecure Direct Object References – A referência de objeto direto ocorre quando um desenvolvedor expõe uma referência a um objeto de implementação interna, como um arquivo, diretório ou chave de banco de dados. Sem uma verificação de controle de acesso ou outro tipo de proteção, os atacantes podem manipular estas referências para acessar dados sem autorização.
A5 – Security Misconfiguration – Boa segurança exige ter uma configuração segura definidas e implantadas para a aplicação, frameworks, servidor de aplicação, servidor web, servidor de banco de dados e plataforma. Configurações de segurança devem ser definidos, implementados e mantidos, como os padrões são muitas vezes inseguro. Além disso, o software deve ser mantido até à data.
A6 – Sensitive Data Exposure – Muitas aplicações web não proteger adequadamente os dados sensíveis, tais como cartões de crédito, as identificações fiscais, e as credenciais de autenticação. Os atacantes podem roubar ou modificar tais dados protegidos fracamente para realizar fraude de cartão de crédito, roubo de identidade e outros crimes. Os dados sensíveis merece proteção extra, como criptografia em repouso ou em trânsito, bem como precauções especiais quando trocadas com o browser.
A7 – Missing Function Level Access Control – A maioria das aplicações web verificar os direitos de acesso de nível de função antes de tomar essa funcionalidade visível na interface do usuário. No entanto, as aplicações precisam para executar as mesmas verificações de controle de acesso no servidor quando cada função é acessada. Se os pedidos não forem verificadas, os atacantes serão capazes de forjar os pedidos, a fim de acessar a funcionalidade sem a devida autorização.
A8 – Cross-Site Request Forgery (CSRF) – Um ataque CSRF força uma registrados no navegador da vítima para enviar um pedido HTTP forjado, incluindo o cookie de sessão da vítima e qualquer outra informação de autenticação incluído automaticamente, para uma aplicação web vulnerável. Isso permite que o invasor forçar o navegador da vítima para gerar solicitações da aplicação vulnerável acha que são pedidos legítimos da vítima.
A9 – Using Components with Known Vulnerabilities – Componentes, tais como bibliotecas, frameworks, e outros módulos de software, quase sempre executados com privilégios totais. Se um componente vulnerável é explorado, como um ataque pode facilitar a perda de dados grave ou aquisição servidor. Aplicações que utilizam componentes com vulnerabilidades conhecidas podem minar as defesas de aplicação e permitir uma gama de possíveis ataques e impactos.
A10 – Unvalidated Redirects and Forwards – Aplicações web com freqüência redirecionamento e encaminhar usuários a outras páginas e sites, e usar dados não confiáveis para determinar as páginas de destino. Sem validação adequada, os atacantes podem redirecionar vítimas a sites de phishing ou malware ou usar encaminha para acessar páginas não autorizadas.
Fonte: www.owasp.org