Walter Dias twitter: @walterbh
Agenda
• Sobre o OWASP
• A01 - Injection
• A02 - Cross-Site Scripting (XSS)
• A03 - Broken Authentication and Session Management
• A04 - Insecure Direct Object References
• A05 - Cross Site Request Forgery (CSRF)
• A06 - Security Misconfiguration
• A07 - Insecure Cryptographic Storage
• A08 - Failure to Restrict URL Access
• A09 - Insufficient Transport Layer Protection
• A10 - Malicious File Execution
• Conclusão
Sobre o OWASP
• Comunidade aberta.
• Sem fins lucrativos.
• Tem como finalidade auxiliar o ALM no que tange segurança.
• Segundo o OWASP existem no mínimo 300 falhas que afetam a WEB.
• Sobre o OWASP Top 10.
• Publicações adicionais.
A01 - Injection
• O que é
É uma técnica que visa introdução de elementos.
• Tipos de Injeção
SQL
Script
XML
LDAP
• Quem já sofreu
• Demo
A02 – Cross-Site Scripting (XSS)
• O que é
É uma técnica injeção.
• Detecção
Fácil desde que...
Difícil quando...
• Quem já sofreu
• Demo
A03 - Broken Authentication and Session Management
• O que é
Ocorre quando o invasor toma posse das informações sensíveis para se passar pelo usuário do sistema.
• Execução...
Fácil quando...
Difícil quando...
• Demo
A04 - Insecure Direct ObjectReferences
• O que é
Esse problema ocorre quando um usuário consegue acessar um recurso em um sistema, ao qual ele não possui permissão, através de um acesso direto a este recurso.
• Execução
Fácil quando...
Moderado quando...
• Quem já sofreu
• Demo
A05 - Cross Site Request Forgery (CSRF)
• O que é
Através de uma URL alterada, o invasor força o usuário a realizar uma operação não desejada.
É conhecido também como:
one-click attack
• Fácil de se executar uma vez se conheça o contexto de negocio.
• Demo
A06 - Security Misconfiguration
• O que é
Ocorre quando o invasor do sistema devido a uma falha de configuração do mesmo, expõem dos que permite que um usuário do sistema tenha acesso ou permissão de alteração em informações não cabíveis a ele.
• Considerado como porta de entrada para possíveis “exploits”.
• Demo
A07 - Insecure CryptographicStorage
• O que é
Armazenar dados sensíveis na base de dados é sempre um desafio e deve ser considerado ao máximo. Quando esse tipo de dados for armazenado sem a devida proteção, um invasor ou até mesmo um usuário do sistema pode se apossar dessas informações.
• Justificativa através de falsas considerações.
• Demo
A08 - Failure to Restrict URL Access
• O que é
Semelhante ao item 4, essa vulnerabilidade consiste no invasor acessar diretamente uma URL que não possui acesso.
• Segurança por obscuridade.
• Demo
A09 - Insufficient Transport LayerProtection
• O que é
Ocorre quando o invasor consegue monitorar os dados trafegados em uma rede, interceptando as informações sensíveis que não possuem proteção.
• Facilmente executado em conjunto com o ataque “Malicious File Execution”.
• Demo
A10 - Malicious File Execution
• O que é
O invasor utiliza falhas nas verificações dos dados e envia um arquivo malicioso para o servidor web, executando-o depois.
• Cria a possibilidade de execução de diversos outros ataques.
• Demo
Conclusão
• Falhas vão acontecer.
• Jamais duvide da capacidade de seu usuário.
• Não precisamos de ataques elaborados para causar estragos.
• Boas praticas continuam sendo nossas amigas.
• Existe uma larga gama de material na internet.
• Esteja preparado.