apresentação owasp - ubi, covilhã

79
Copyright © 2004 - The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License. The OWASP Foundation http://www.owasp.org OWASP Open Web Applications Security Project Projectos, Documentos e Ferramentas Carlos Serrão OWASP Portugal ISCTE/DCTI/Adetti/NetMuST [email protected] [email protected] Joaquim Marques OWASP Portugal EST/IPCB [email protected] [email protected]

Upload: carlos-serrao

Post on 24-May-2015

2.245 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Apresentação OWASP - UBI, Covilhã

Copyright © 2004 - The OWASP FoundationPermission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License.

The OWASP Foundationhttp://www.owasp.org

OWASPOpen Web Applications Security ProjectProjectos, Documentos e Ferramentas

Carlos SerrãoOWASP PortugalISCTE/DCTI/Adetti/NetMuST

[email protected]@gmail.com

Joaquim MarquesOWASP PortugalEST/IPCB

[email protected]@gmail.com

Page 2: Apresentação OWASP - UBI, Covilhã

OWASP

Sumário

Introdução ao OWASPOWASP e OWASP PortugalProjectos

DocumentaçãoProjectos

DocumentaçãoOWASP Top 10Webscarab e Webgoat

Conclusões

2

Page 3: Apresentação OWASP - UBI, Covilhã

OWASP

Introdução ao OWASP

3

Page 4: Apresentação OWASP - UBI, Covilhã

OWASP

O que é segurança de Aplicações Web?

Não é Segurança de RedesSegurança do “código” criado para implementar a aplicação

webSegurança de bibliotecasSegurança de sistemas de back-endSegurança de servidores web e aplicacionais

Segurança de Redes ignora o conteúdo do tráfego de HTTPFirewalls, SSL, Intrusion Detection Systems, Operating

System Hardening, Database Hardening

4

Page 5: Apresentação OWASP - UBI, Covilhã

OWASP

O código faz parte do perímetro de segurança

5

Firewall

Hardened OSWeb ServerApp Server

Firewall

Dat

abas

es

Lega

cy S

yste

ms

Web

Ser

vice

s

Dire

ctor

ies

Hum

an R

esrc

s

Bill

ingCustom Developed

Application CodeAPPLICATION

ATTACK

Não é possível usar protecção ao nível da camada de rede (firewall, SSL, IDS, hardening) para parar ou detectar ataques ao nível aplicacional

Net

wor

k La

yer

App

licat

ion

Laye

r

O seu perímetro de segurança possui buracos enormes na camada

aplicacional

Page 6: Apresentação OWASP - UBI, Covilhã

OWASP

Isto é preocupante?

Vamos lá pensar…Qual a probabilidade de sucesso de um ataque contra uma

aplicação web? Probabilidade elevada Fácil de explorar sem conhecimento e ferramentas especiais Quase indetectável Existem milhares de programadores web, pouco preocupados

com segurançaConsequências?

Corrupção de dados ou destruição de BD Acesso root a servidores web ou aplicacionais Perda de autenticação e de controlo de acesso de utilizadores Descaracterização (Defacement) Ataques secundários a partir da própria aplicação web

Page 7: Apresentação OWASP - UBI, Covilhã

OWASP

Isto é preocupante?

A Segurança de Aplicações Web é tão importante como a Segurança de RedesPorque é que grande parte do investimento em Segurança é

canalizado para a segurança das redes?

Page 8: Apresentação OWASP - UBI, Covilhã

OWASP 2

O que é o OWASP?

Open Web Application Security ProjectPromove o desenvolvimento seguro de softwareOrientado para o desenvolvimento de serviços

baseados na webFocado principalmente em aspectos de

desenvolvimento do que em web-designUm fórum aberto para discussãoUm recurso gratuito e livre para qualquer equipa

de desenvolvimento

Page 9: Apresentação OWASP - UBI, Covilhã

OWASP 3

O que é o OWASP?

Open Web Application Security Project an open community dedicated to enabling

organizations to develop, purchase, and maintain applications that can be trustedPromover o desenvolvimento seguroAuxiliar a tomada de decisão quanto ao riscoOferecer recursos gratuitosPromover a contribuição e partilha de informação

Page 10: Apresentação OWASP - UBI, Covilhã

OWASP 4

O que é o OWASP?

Open Web Application Security ProjectOrganização sem fins lucrativos, orientada para esforço

voluntário Todos os membros são voluntários Todo o trabalho é “doado” por patrocinadores

Oferecer recursos livres para a comunidade Publicações, Artigos, Normas Software de Testes e de Formação Chapters Locais & Mailing Lists

Suportada através de patrocínios Suporte de empresas através de patrocínios financeiros ou de

projectos Patrocínios pessoais por parte dos membros

Page 11: Apresentação OWASP - UBI, Covilhã

OWASP

Organização do OWASP

Page 12: Apresentação OWASP - UBI, Covilhã

OWASP 6

O que é o OWASP?

O que oferece?Publicações

OWASP Top 10 OWASP Guide to Building Secure Web Applications

Software WebGoat WebScarab oLabs Projects .NET Projects

Chapters Locais Orientação das comunidades locais

Page 13: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP Ferramentas e Tecnologias

7

Page 14: Apresentação OWASP - UBI, Covilhã

OWASP 8

Publicações OWASP

Características ComunsTodas as publicações OWASP estão disponíveis para

download gratuíto em http://www.owasp.orgTodas as publicações são licenciadas em GNU “Lesser” GNU

Public License (LGPL), ou em GNU Free Documentation License (GFDL)

Documentação “viva” Actualizada sempre que necessário Projectos evolutivos

As publicações do OWASP são o resultado de trabalho cooperativo entre os membros

Page 15: Apresentação OWASP - UBI, Covilhã

OWASP 9

Publicações OWASP – OWASP Top 10

Top 10 Web Application Security VulnerabilitiesUma lista dos 10 aspectos de segurança mais críticosActualizado numa base annualCrescente aceitação pela indústria

Federal Trade Commission (US Gov) US Defense Information Systems Agency VISA (Cardholder Information Security Program)

Está a ser adoptado como um standard de segurança para aplicações web

Page 16: Apresentação OWASP - UBI, Covilhã

OWASP 11

Publicações OWASP - OWASP Top 10

Top 10 (versão 2007)A1. Cross Site Scripting (XSS)A2. Injection FlawsA3. Malicious File ExecutionA4. Insecure Direct Object ReferenceA5. Cross Site Request Forgery (CSRF)A6. Information Leakage and Improper Error HandlingA7. Broken Authentication and Session ManagementA8. Insecure Cryptographic StorageA9. Insecure CommunicationsA10. Failure to Restrict URL Access

Page 17: Apresentação OWASP - UBI, Covilhã

OWASP 12

Publicações OWASP - OWASP Guide

Guia para o Desenvolvimento Seguro de Web AppsOferece um conjunto de linhas gerais para o desenvolvimento

de software seguro Introdução à segurança em geral Introdução à segurança aplicacional Discute áreas-chave de implementação

– Arquitectura– Autenticação– Gestão de Sessões– Controlo de Acesso e Autorização– Registo de Eventos– Validação de Dados

Em contínuo desenvolvimento

Page 18: Apresentação OWASP - UBI, Covilhã

OWASP 13

Publicações OWASP – Projectos em Curso

Projectos em CursoProjecto de Métricas & Medidas

Tenta desenvolver um conjunto de métricas de segurança que podem ser usadas para suportar decisões críticas de negócio

Projecto de Testes Tenta produzir uma framework de “boas práticas” Tenta produzir uma framework de testes de “baixo nível” que permite

identificar certos aspectosAppSec Faq

FAQ para programadores que se foca em segurança aplicacional Oferece respostas a questões sobre segurança aplicacional

Page 19: Apresentação OWASP - UBI, Covilhã

OWASP 14

Software OWASP

Características ComunsTodo o software OWASP é oferecido e pode ser obtido em

http://www.owasp.orgO software está licenciado com uma licença GNU “Lesser”

GNU Public License (LGPL)Projectos Activos

Actualizados sempre que necessário Projectos em curso Multiplos programadores a contribuirem e a menterem

O software OWASP pode ser descarregado livremente e pode ser usado por indivíduos e empresas

Page 20: Apresentação OWASP - UBI, Covilhã

OWASP 15

Software OWASP - WebGoat

WebGoatEssencialmente é uma aplicação de treinoOferece

Uma ferramenta educacional usada para ensinar e aprender sobre segurança aplicacional

Uma ferramenta para testar ferrementas de segurançaO que é?

Uma aplicação web J2EE disposta em diversas “Lições de Segurança” Baseado no Tomcat e no JDK 1.5 Orientada para o ension

– Fácil de usar– Ilustra cenários credíveis– Ensina ataques realistas e soluções viáveis

Page 21: Apresentação OWASP - UBI, Covilhã

OWASP 16

Software OWASP - WebGoat

WebGoat – O que se pode aprender?Um número crescente de ataques e de soluções

Cross Site Scripting SQL Injection Attacks Thread Safety Field & Parameter Manipulation Session Hijacking and Management Weak Authentication Mechanisms Mais ataques vão sendo adicionados

Obter a ferramenta http://www.owasp.org/software/webgoat.html Descarregar, descomprimir, e executar

Page 22: Apresentação OWASP - UBI, Covilhã

OWASP 17

Software OWASP - WebScarab

WebScarabUma framework para analizar tráfego HTTP/HTTPSEscrito em JavaMúltiplas utilizações

Programador: fazer o debug das trocas entre o cliente e servidor Analista de Segurança: analiza o tráfego e identifica vulnerabilidades

Ferramenta técnica Focada em programadores de software Arquitectura extensível de plug-ins Open source; de fácil expansão Poderosa

Obter a ferramenta http://www.owasp.org/software/webscarab.html

Page 23: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP Summer of Code – SoC 2009

Projectos inovadoresAlcançar qualidade para publicação

6 ferramentas/ 7 documentaçãoInvestimentos:

Autumm of Code 2006 9 projetos / US$20K

Spring of Code 2007 21 projetos / US$117K

Summer of Code 2008 33 projetos / US$126K

18

Page 24: Apresentação OWASP - UBI, Covilhã

OWASP 19

Chapters locais da OWASP

Desenvolvimento de comunidadesOs Chapters locais proporcionam oportunidades para os

membros OWASP poderem partilhar ideias e aprender mais sobre segurança da informação

Aberto a *TODOS*Oferecer um fórum para discussão de assuntos em contextos

locais/regionaisOferecer o local para convidados poderem apresentar novas

ideias e projectos

Page 25: Apresentação OWASP - UBI, Covilhã

OWASP 20

Chapters locais da OWASP

Page 26: Apresentação OWASP - UBI, Covilhã

OWASP

Actividade

Chapter PortuguêsNasce a 24 Outubro de 2007Actividade quase nula

2008OWASP EU Summit 08Albufeira, Algarve, Portugal

2009KOMManter reuniões regularesLançar projectos e ideias

5

Page 27: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP EU Summit 08

O *maior* evento OWASP de sempre1 semana, +100 pessoas (de todo o Mundo)Apresentação de ProjectosSessões de TrabalhoFormação+ 1 dia de Demo na UAlg

6

Page 28: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP EU Summit 08

O *maior* evento OWASP de sempre1 semana, +100 pessoas (de todo o Mundo)Apresentação de ProjectosSessões de TrabalhoFormação+ 1 dia de Demo na UAlg

6

Sim, estivemoslá também…

Page 29: Apresentação OWASP - UBI, Covilhã

OWASP

Antes de mais…

… alguns dados

Membros26 membros

Web-sitehttp://www.owasp.org/index.php/Portuguese

[email protected]

Chapter LeaderCarlos Serrão ([email protected],

[email protected])

2

Page 30: Apresentação OWASP - UBI, Covilhã

OWASP

Reuniões

Objectivos:Manter um calendário de reuniões periódicas

Ideal: 1 reunião por mês Realista: 1 reunião a cada 3 ou 4 meses

Promover a missão da OWASPPromover os projectos, ferramentas e documentação da OWASPPromover a troca livre e disseminação livre de informação sobre

segurança de informação e segurança de aplicações e sistemas web-based

Promover o lançamento de novas ideias e de novos projectosEnvolver os membros em projectos on-going

7

Page 31: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP em Números

420.000 page views por mês230 GB de download por mês4.618 utilizadores do wiki200 actualizações por dia124 capítulos (chapters)16.000 membros nas mailings lists48 projectos de ferramentas e documentos100 membros individuais48 membros corporativos/educacionais2 empregados

21

Page 32: Apresentação OWASP - UBI, Covilhã

OWASP 22

Chapters Locais da OWASP

O que oferecem?Reuniões regularesMailing ListsApresentações e GruposAmbientes independentes do vendedorFóruns de discussão aberta

Page 33: Apresentação OWASP - UBI, Covilhã

OWASP 23

Chapters Locais da OWASP

O que oferecem?Como contribuir?

Através das ML, reuniões e dos grupos de discussão Os membros são encorajados a levantarem questões Os membros são encorajados a participar em projectos OWASP

– Contribuir para projectos existentes– Propor novos projectos– Lançar novas iniciativas

O Chapter Local deve trabalhar no sentido de manter a organização como um recurso livre, aberto e orientado tecnicamente para o público em geral e para os membros

Page 34: Apresentação OWASP - UBI, Covilhã

OWASP

Sponsors

24

Page 35: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP Top 10

34

Page 36: Apresentação OWASP - UBI, Covilhã

OWASP 35

OWASP Top 10

As 10 Mais críticas vulnerabilidades em aplicações web

2007 Release (2nd) Não é um standard, mas um

conjunto de recomendações

Page 37: Apresentação OWASP - UBI, Covilhã

OWASP

OWASP Top 10

1. Cross Site Scripting (XSS)2. Falhas de Injecção3. Inclusão Remota e Insegura de Ficheiros4. Referência Directa e Insegura a Objectos5. Cross Site Request Forgery (CSRF)6. Revelação de Informação e Tratamento de Erros

Inadequado7. Quebra da Gestão de Sessões e da Autenticação8. Armazenamento criptográfico inseguro9. Comunicações inseguras10.Falha na restrição de acesso a URL

36

Page 38: Apresentação OWASP - UBI, Covilhã

OWASP 37

1. Cross-Site Scripting (XSS)

DescriçãoO problema que mais tem prevalecido em termos de

segurança nas aplicações webPermite que os atacantes possam executar código no

browser da vítimaAmbientes afectados

Todas as frameworks de aplicações web estão sujeitas a este tipo de ataque

Page 39: Apresentação OWASP - UBI, Covilhã

OWASP 38

1. Cross-Site Scripting (XSS)

Vulnerabilidades3 tipos:

Reflectidos Armazenados DOM injection

Os ataques são normalmente realizados através de Javascript, ou através da manipulação directa dos pedidos HTTP

Page 40: Apresentação OWASP - UBI, Covilhã

OWASP 39

1. Cross-Site Scripting (XSS)

Verificar a SegurançaTodos os parâmetros de entrada devem ser validados ou

codificadosRevisões de CódigoMecanismo central de validação ou de codificação

ProtecçãoCombinar um conjunto de validações de todos os dados de

entrada e a codificação de todos os dados de saída

Page 41: Apresentação OWASP - UBI, Covilhã

OWASP 40

2. Falhas de Injecção

DescriçãoA injecção ocorre quando dados fornecidos pelo utilizador é

enviada para um interpretador como parte de um comando ou query

Injecção de comandos de SQL é o mais comumAmbientes Afectados

Todas as frameworks de aplicações web que usam interpretadores são vulneráveis a ataques de injecção.

Page 42: Apresentação OWASP - UBI, Covilhã

OWASP 41

2. Falhas de Injecção

VulnerabilidadesSe o input do utilizador for passado directamente para um

interpretador sem validação ou codificação, a aplicação fica vulnerável.

Verificar se o input do utilizador é passado directamente a queris dinâmicas

PHP: $sql = "SELECT * FROM table WHERE id = '" . $_REQUEST['id’] . "’";

e se $_REQUEST[‘id’]=” ’ OR 1=1 -- ”

SELECT * FROM table WHERE id = ‘’ OR 1=1 --’

Page 43: Apresentação OWASP - UBI, Covilhã

OWASP 42

2. Falhas de Injecção

Verificação de SegurançaVerificar que o utilizador não pode modificar comandos ou queries

enviadas para qualquer interpretador usado pela aplicaçãoRevisões de Código

Protecção Impedir o acesso a interpretadores sempre que possível “Correr com o menor privilégio possível”As stored procedures são igualmente afectadasValidação das entradas do utilizador

Page 44: Apresentação OWASP - UBI, Covilhã

OWASP 43

3. Inclusão Remota e Insegura de Ficheiros

DescriçãoPermite que os atacantes possam realizar execução remota

de código, comprometendo ficheiros de inputCausado frequentemente por se confiar em ficheiros de input

Ambientes afectadosTodas as frameworks de aplicações web que permitem a

inclusão de ficheiros para serem executados (especialmente o PHP)

Ambientes são susceptíveis se permitirem o upload em directorias web.

Page 45: Apresentação OWASP - UBI, Covilhã

OWASP 44

3. Inclusão Remota e Insegura de Ficheiros

VulnerabilidadesDados hostis a serem carregados para ficheiros de sessão ou

dados de execuçãoPHP é mais comum, mas outras linguagens são igualmente

susceptíveis Java e .Net DTD hostis em documentos XML

require_once($_POST[‘unsafe_filename’] . ‘inc.php’);

Page 46: Apresentação OWASP - UBI, Covilhã

OWASP 45

3. Inclusão Remota e Insegura de Ficheiros

Verificação de SegurançaRevisões de CódigoFerramentas automáticas de pesquisa

ProtecçãoNunca permitir que um ficheiro enviado pelo utilizador possa

usar recursos do servidorImplementação de protocolos de segurança devidamente

configuradosValidar o input do utilizador

Page 47: Apresentação OWASP - UBI, Covilhã

OWASP 46

4. Referência Directa e Insegura a Objectos

DescriçãoOcorre quando o programador expõe uma referência não

validada a um objecto interno da implementação, tal como um ficheiro, directoria, registo ou chave de uma base de dados, com uma URL ou parâmetro num formulário

Ambientes afectadosTodas as frameworks de aplicações web são vulneráveis a

referências directas e inseguras a objectos

Page 48: Apresentação OWASP - UBI, Covilhã

OWASP 47

4. Referência Directa e Insegura a Objectos

VulnerabilidadesExposição de referências internas de objectosAtacantes modificam os parâmetros para alterar as

referências e violarem as políticas de controlo de acessos construídas na aplicações

As referências a chaves de base de dados são frequentemente expostas

<select name="language"><option value="fr">Français</option></select>… require_once ($_REQUEST['language’]."lang.php");

e se $_REQUEST[‘language’] = “../../../.../../etc/passwd%00” ?

Page 49: Apresentação OWASP - UBI, Covilhã

OWASP 48

4. Referência Directa e Insegura a Objectos

Verificação de SegurançaRemover qualquer referência directa a objectos que possa ser

manipulada por um atacante determinadoAnálise e revisão do código (difícil e morosa quer por

métodos manuais ou automáticos)Protecção

A melhor protecção é evitar expor referências directas a objectos aos utilizadores

Verificar a autorização de acesso a todos os objectos referenciados

Page 50: Apresentação OWASP - UBI, Covilhã

OWASP 49

5. Cross Site Request Forgery (CSRF)

DescriçãoUm ataque que engana a vítima a carregar uma página que

contém um pedido malicioso Também conhecidos como Session Riding, One-Click Attacks,

Cross Site Reference Forgery, Hostile Linking, e Automation Attack

Ambientes afectadosTodas as frameworks de aplicações web são vulneráveis a

CSRF.

Page 51: Apresentação OWASP - UBI, Covilhã

OWASP 50

5. Cross Site Request Forgery (CSRF)

VulnerabilidadesNum forum, o ataque pode dirigir o utilizador a invocar uma

função de logoutPode ser combinado com XSS

<img src="http://www.example.com/logout.php">

<img src="http://www.example.com/transfer.do?frmAcct=document.form.frmAcct& toAcct=4345754&toSWIFTid=434343&amt=3434.43">

Page 52: Apresentação OWASP - UBI, Covilhã

OWASP 51

5. Cross Site Request Forgery (CSRF)

Verificação de SegurançaUsar tokens de autenticação que não sejam automaticamente

submetidos pelo browser

ProtecçãoEliminar as vulnerabilidades de XSS da aplicaçãoAcrescentar um “nonce” na URL por cada pedido e em todos os

formulários em adição à sessão tradicional - se isto já não estiver presente na framework de aplicações web a ser usada

Solicitar écrans de login adicionais para dados mais sensíveisNão usar pedidos GET para dados mais sensíveis

Page 53: Apresentação OWASP - UBI, Covilhã

OWASP 52

6. Revelação de Informação e Tratamento de Erros InadequadoDescrição

As aplicações podem sem intenção, revelar informação sobre a sua configuração, forma funcionamento interno, ou violar a privacidade através de diversos problemas da aplicação

Ambientes AfectadosTodas as frameworks de aplicações web são vulneráveis à

revelação de informação ou tratamento incorrecto de erros.

Page 54: Apresentação OWASP - UBI, Covilhã

OWASP 53

6. Revelação de Informação e Tratamento de Erros InadequadoVulnerabilidades

Mensagens de Erro com demasiado detalhe Stack Traces SQL Statements

Registo desapropriado de mensagens detalhadas

Page 55: Apresentação OWASP - UBI, Covilhã

OWASP 54

6. Revelação de Informação e Tratamento de Erros InadequadoVerificação de Segurança

O objectivo é que uma aplicação não dê demasiada informação sobre os erros

Exige uma verificação manual do código para ver qual o detalhe das mensagens

ProtecçãoTestes para gerar mensagens de erro e outras verificações no

desenvolvimentoDesactivar ou limitar as mensagens de erro

display_errors = Off

Page 56: Apresentação OWASP - UBI, Covilhã

OWASP 55

7. Quebra da Gestão de Sessões e da AutenticaçãoDescrição

Falhas na autenticação e gestão de sessões envolvem frequentemente a falha de protecção das credenciais e tokens de sessão ao longo do seu ciclo de vida.

Ambientes AfectadosTodas as frameworks de aplicações web são vulneráveis a

falhas de autenticação e de gestão das sessões

Page 57: Apresentação OWASP - UBI, Covilhã

OWASP 56

7. Quebra da Gestão de Sessões e da AutenticaçãoVulnerabilidades

Falha do mecanismo principal de controlo de acessoGestão de passwordsTimeout de Sessões

Page 58: Apresentação OWASP - UBI, Covilhã

OWASP 57

7. Quebra da Gestão de Sessões e da Autenticação Verificação de Segurança

A Aplicação de deve autenticar os utilizadores de forma apropriada e proteger as suas credenciais

Difícil de conseguir através de ferramentas automáticas Combinação de Revisões de Código e de Testes

Protecção Manter a comunicação segura e armazenamento de credenciais Usar sempre um mecanismo de autenticação sempre que se aplique Criar uma nova sessão após a autenticação Assegurar que o link de logout destrói toda a informação pertinente Não expor quaisquer credenciais na URL ou nos logs

Page 59: Apresentação OWASP - UBI, Covilhã

OWASP 58

8. Armazenamento criptográfico inseguro

DescriçãoA falha de não proteger dados sensíveis recorrendo a

criptografia é um defeito recorrente As aplicações que usam criptografia frequentemente, usam

algoritmos mal concebidos - ou usando cifras não apropriadas ou cometendo sérios erros na sua aplicação

Ambientes AfectadosTodos os ambientes de aplicações web são vulneráveis a este

tipo de falha.

Page 60: Apresentação OWASP - UBI, Covilhã

OWASP 59

8. Armazenamento criptográfico inseguro

VulnerabilidadesNão cifrar dados sensíveisUsar algoritmos inventadosUso inseguro de algoritmos criptográficos fortes Continuar a usar algoritmos que já provaram ser fracos

(MD5, RC3, RC4, etc…)Usar chaves hard-coded, e armazenar chaves em repositórios

não-seguros

Page 61: Apresentação OWASP - UBI, Covilhã

OWASP 60

8. Armazenamento criptográfico inseguro

Verificação de SegurançaVerificar que a aplicação cifra de forma adequada a informação

sensívelFerramentas de verificação automática não oferecem grande ajudaRevisões de código são a forma mais eficiente de verificação

ProtecçãoUsar apenas algoritmos públicos aprovadosVerificar para ter a certeza de que toda a informação sensível está a

ser cifrada

Page 62: Apresentação OWASP - UBI, Covilhã

OWASP 61

9. Comunicações Inseguras

DescriçãoAs aplicações frequentemente não cifram o tráfego de dados

quando é necessário proteger comunicações sensíveisSSL deve ser usado para todas as ligações autenticadas

Ambientes afectadosTodas as frameworks de aplicações web são vulneráveis a

este problema.

Page 63: Apresentação OWASP - UBI, Covilhã

OWASP 62

9. Comunicações Inseguras

VulnerabilidadesSniffing da redeTodo o tráfego autenticado deve passar por SSL, porque o

HTTP contem credenciais de autenticação, ou tokens de sessão em cada pedido; e não apenas no pedido de login

Usar sempre o SSL para proteger a transmissão de dados sensíveis

Page 64: Apresentação OWASP - UBI, Covilhã

OWASP 63

9. Comunicações Inseguras

Verificação de SegurançaVerificar que a aplicação cifra de forma apropriada todas as

comunicações autenticadas e sensíveisFerramentas de scanning de vulnerabilidades podem verificar

se o SSL está a ser usado no front-end, e encontrar os problemas de segurança

Revisões de código ajudam a perceber o uso apropriado do SSL para todas as ligações de backend

ProtecçãoUsar sempre o SSL para proteger dados sensíveis

Page 65: Apresentação OWASP - UBI, Covilhã

OWASP 64

10. Falha na restrição de acesso a uma URL

DescriçãoDepender de segurança por obscuridade para restringir o

acesso a URLNão usar verificações de controlo de acesso para URLs

Ambientes afectadosTodas as frameworks de aplicações web são vulneráveis a

este tipo de falha

Page 66: Apresentação OWASP - UBI, Covilhã

OWASP 65

10. Falha na restrição de acesso a uma URL

VulnerabilidadesNavegação forçadaURLs e ficheiros escondidosMecanismo de segurança ultrapassadoAvaliar os privilégios apenas no cliente

Page 67: Apresentação OWASP - UBI, Covilhã

OWASP 66

10. Falha na restrição de acesso a uma URL

Verificação de SegurançaVerificar que o controlo de acesso é utilizado de forma consistente em

todas as URL da aplicaçãoFerramentas de verificação automática têm algumas dificuldades em

verificar istoUma combinação de revisões de código e testes são mais eficazes

ProtecçãoDesenhar e implementar os diferentes perfis de acesso a URLAssegurar que todas as URL fazem parte deste processoNão usar URL escondidas

Page 68: Apresentação OWASP - UBI, Covilhã

OWASP

WebgoatWebScarab

67

Page 69: Apresentação OWASP - UBI, Covilhã

OWASP

Conclusões

68

Page 70: Apresentação OWASP - UBI, Covilhã

OWASP

Sistemas de Informação Web-based

69

Page 71: Apresentação OWASP - UBI, Covilhã

OWASP

Segurança de Redes+

Segurança Aplicacional

70

Page 72: Apresentação OWASP - UBI, Covilhã

OWASP

Security by Design

71

Page 73: Apresentação OWASP - UBI, Covilhã

OWASP

Developers, developers,

developers... developers.

72

Page 74: Apresentação OWASP - UBI, Covilhã

OWASP

Educação, Formação, Treino

73

Page 75: Apresentação OWASP - UBI, Covilhã

OWASP

Filter input; Escape output.

74

Page 76: Apresentação OWASP - UBI, Covilhã

OWASP

Seguir standards, recomendações internacionais, boas práticas

75

Page 77: Apresentação OWASP - UBI, Covilhã

OWASP

OWASPOpen Web Applications Security Project

Projectos, Documentos, Ferramentas

76

Page 78: Apresentação OWASP - UBI, Covilhã

OWASP

Questões?

77