Seguranca web testday2012

Preview:

Citation preview

Segurança de aplicações web, Conhecendo e Considerando dentro ciclo de vida do desenvolvimento do software

Quando se fala em segurança, as pessoas voltam o pensamento para a infra estrutura, como

antivírus, firewall e etc. É necessário também olhar para segurança dos dados, a segurança dos pacotes XML que trafegam, a segurança das

aplicações, ou seja deve-se trazer uma visão mais holística de todo o cenário.

Geral

Ataques em vulnerabilidades web 2011

Usamos Scanners de vulnerabil idade da rede

Usamos Scanners de vulnerabil idade da rede

Temos Firewalls na infra-estruturaTemos Firewalls

na infra-estrutura Nós auditamos 1 vez por semestre com PenTestes Nós auditamos 1 vez por semestre com PenTestes

O Mito: Nosso site é Seguro

Usamos Criptografia SSL

Usamos Criptografia SSL

Anatomia de uma invasão de segurança

Desenvolvedor de aplicativos Inclui defeito de segurança por falta de especialização no que se refere à conformidade e aos requisitos e métodos de segurança

Hacker O hacker cria solicitações específicas para a URL a fim de explorar a falha do software:https://w3.ibm.com/w3login.html?login=sam@us.ibm.com&pass=“foo ' or 1=1—”

Resultado Falha em aplicativo da Web resulta em roubo de identidade, exposição de dados pessoais, responsabilidade legal e perante a imprensa

- Perda de receita- Impacto sobre as ações- Responsabilidade

perante os clientes- Custo de correção

Exemplo:

Custo total relatado da violação >US$

250 milhões

Vendedor do varejo

Origem do Problema!

• Aplicações Web são o foco n º 1 de hackers:

– 75% dos ataques são na camada da aplicação (Gartner®)

– XSS e SQL Injection são #1 e #2 vulnerabilidades reportadas (Mitre®)

• Maioria dos sites são vulneráveis:

– 90% dos sites estão vulneráveis a ataques de aplicações (Watchfire®)

– 78% por cento das vulnerabilidades exploráveis facilmente afetados aplicações Web (Symantec™)

– 80% das organizações vai experimentar um incidente de segurança de aplicativos

em 2012 (Gartner)

• Aplicações web são alvos de alto valor para hackers :

– Dados do usuário, Cartões de Credito, Roubo ID, fraudes, site defacement, etc

Porque Aplicações web são uma alta prioridade?

Network Server

WebApplications

% de Ataques % de Dólares

75%

10%

25%

90%

Fontes: Gartner, Watchfire

Segurança Gastos

De todos os ataques a Segurança da Informação são direcionados para a camada de aplicação Web

75%75%De todas as aplicações web são vulneráveis2/32/3

Realidade: Maioria dos ataques são Apps Web

Fonte: WASC 2010 Web Application Security Statistics

Realidade: Maioria das aplicações web são vulneráveis

(Apresentação) App Server(lógica Negocio)

Base de dados

Camada cliente (Browser)

Camada Intermediaria Camada Dados

Firewall

Dados sensitivos são armazenados

aqui

SSL

Protege Transporte

App Cliente é deployed aqui.

InternetInternet

Analise arquitetura aplicação web em alto nível

Protege Rede

Desktop Firewall IDS/IPS Applications

SQL Injection

Cross Site Scripting

Pattern-based Attack

Web Server Known

Vulnerabilities

Parameter Tampering

Cookie Poisoning

Segurança da camada frontal não para todos os vetores de ataque

Hacker

Users

Anti-spoofing

DoS

Port Scanning

Privileged users (DBAs,developers)

Databases

Suspicious Activity

Sensitive Data Unauthorized

Access

Como ocorre ataque aplicações web e base dados

E AGORA QUEM PODERA NOS DEFENDER ?????

Analista de teste (Especialista em segurança, especializado em PENTEST)

COMO?

Ferramentas scaneamento WEB

O que é isso?São ferramentas para automatização usadas para executar avaliações de vulnerabilidade em aplicações Web

Por que eu preciso disso?Para simplificar, encontrar e corrigir problemas de segurança da Web da aplicação.

O que elas fazem?Digitaliza aplicações Web, encontra problemas de segurança e relatórios sobre eles de uma forma amigável.

Quem usa?Auditores de Segurança - Os principais usuários de hojeEngenheiros de QA - Quando os auditores se tornam o “Bottle Neck”Desenvolvedores - Para encontrar as falhas o mais cedo possível.

Faz a varredura de aplicativos da Web / sites Análise

(identificação de problemas)

Relatório(detalhado e acionável)

Como trabalha Ferramenta Teste de Segurança?

WEB SCANNING

NetworkNetwork

Operating SystemOperating System

ApplicationsApplications

DatabaseDatabase

Web Server

Web Server Configuration

Web Server

Web Server Configuration

Third-party ComponentsThird-party Components

Web Applications

Client-Side Custom Web Services

Web Applications

Client-Side Custom Web ServicesNetwork

NessusISSQualysGuardeEye RetinaFoundstone

Host

SymantecNetIQISSCA Harris STAT

Database

AppSec IncNGS Software

App Scanners

Rational AppScanHP WebInspectCenzicNT ObjectivesAcunetix WVS

Code ScanningEmerging

TechAppScan DE/BEFortifyOunce LabsKlockworkParasoft®

Network

Operating System

Applications

Database

Web Server

Web Server Configuration

Third-party Components

Web Applications

Client-Side Custom Web Services

Desenvolvimento

Desenvolvedores

SDLCSDLC

Desenvolvedores

Desenvolvedores

Codif icação QA Segurança Produção

Possibilita que os especialistas de segurança levem a correção de volta para o desenvolvimento

Fornece aos desenvolvedores e testadores o conhecimento para detecção

e a capacidade de correção

Garante que as vulnerabilidades sejam tratadas antes de os

aplicativos serem colocados em produção

Ciclo de vida desenvolvimento de software

OWASP TOP 10 – Falhas Segurança Web

Cross-Site Scripting – (XSS)

O que é isso?

Falhas XSS ocorrem sempre que uma aplicação obtém as informações não confiáveis e envia para um navegador Web sem a devida validação. O 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

Quais são as implicações?

Tokens de sessão roubado (segurança do navegador contornado)Conteúdo da página completa comprometidaFuturas páginas no navegador comprometida

Hacking 102: Integrating Web Application Security Testing into Development 21

Demonstração XSS

Código HTML:

Hacking 102: Integrating Web Application Security Testing into Development 22

Código HTML:

Demonstração XSS

XSS – O Processo Exploit

Evil.org

User bank.com

1) Link para bank.comenviado pelo usuário viaE-mail ou HTTP

2) usuário envia script incorporado como dados

3) Script/dado retornou, executou pelo browser

4) Script envia cookie usuários e informações de sessão sem consentimento ou conhecimento do usuário

5) Evil.org usa informações da sessão roubado para representar o usuário

Injection Flaws

O que é isso?

Falhas na injeção, tais como SQL, sistemas operacionais e injeção LDAP, ocorrem quando os dados não confiáveis é enviado a um intérprete como parte

de um comando ou consulta. Dados hostis do atacante pode enganar o intérprete para executar comandos mal intencionados ou acessar dados não autorizados

Quais são as implicações?

1. SQL Injection – Acessa/modifica dados na DB2. XPath Injection – Acessa/modifica dados Formato XML3. SSI Injection – Executa comandos no servidor e acessa dados sensitivos4. LDAP Injection – Ignora a autenticação (ByPass)5. MX Injection – Usa servidor e-mail como uma maquina spam6. HTTP Injection – Modifica ou envenena cache web7. Etc.

SQL Injection - Exploit

Hacking 102: Integrating Web Application Security Testing into Development 26

SQL Injection Demonstration

SELECT true FROM users WHERE username = ‘

jsmith

’ AND password = ‘ ’

Demo1234AAAAAAAA

Perguntas?

Contatos:

http://www.facebook.com/marcio.cunha.739

http://www.linkedin.com/profile/view?id=71356290

Obrigado