V SEGINFO - “Auditoria de Aplicações Web”

30
Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados. Auditoria de Segurança em Aplicações Web Rafael Soares Ferreira Diretor de Resposta a Incidentes e Auditorias

description

Rafael Soares Ferreira (Clavis Segurança da Informação)

Transcript of V SEGINFO - “Auditoria de Aplicações Web”

Page 1: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Auditoria de Segurançaem

Aplicações Web

Rafael Soares FerreiraDiretor de Resposta a Incidentes e Auditorias

Page 2: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Introdução

Page 3: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Utilização

● Comércio Eletrônico

● Mídias Sociais

● Internet Banking

Page 4: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Benefícios

● “Sempre” disponível

● Necessita apenas do uso de um browser

● Independe de plataforma

Page 5: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Aspectos Básicos de Segurança

● Não confiar em código/dados/entradas externos;

● Validar todos os dados (inclusive internos);

● Não existe segurança Client-Side

● Prever e tratar os erros;

Page 6: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Testes de Segurança

Page 7: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Exposição de Informação

● Spiders, Crawlers e Robots

● Sites de Busca

● Fingerprinting

● Mensagens de erro

Page 8: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Configurações e Manutenção

● SSL / TLS

● Infra estrutura

● Extensão de Arquivos

● Arquivos não referenciados

Page 9: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Autenticação● Transporte de Credenciais

● Força Bruta

● Bypass

● Lembrete e Recuperação de Senha

● CAPTCHA

● Encerramento de Sessão

Page 10: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Gerenciamento de Sessões

● Cookies

● Exposição de Variáveis

● Roubo/Sequestro de Sessão

Page 11: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Autorização

● Path Traversal

● Escalada de Privilégio

● Lógica de Validação

Page 12: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Validação de Dados

● Criptografia e Codificação

● Cross-site scripting (XSS)

● Injeção de Código

● Buffer Overflow

Page 13: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Negação de Serviço

● SQL Wildcards

● Contador fornecido por usuário

● Escrita em disco sem tratamento

Page 14: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Ferramentas

Page 15: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Scanners

● Nessus

● Nikto

● W3AF

Page 16: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Proxies

● WebScarab

● RatProxy

● Burpsuite

Page 17: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Principais Ameaças

Page 18: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Cross Site Scripting (XSS)

A aplicação envia ao browser dados fornecidos pelo usuário sem o devido tratamento.

Pode ocasionar execução de código arbitrário no browser da vítima, roubo de sessão, alteração de sites e até downloads de artefatos maliciosos.

Page 19: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Injeção de Código

Dados enviados pelos usuários são tratados pela aplicação sem nenhum tipo de validação.

Possibilita a execução de instruções diferentes das esperadas pela aplicação.

Page 20: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Inclusão Remota de Arquivos (RFI)

O usuário pode passar parâmetros para aplicação que consistem em nome de arquivos para referência ou upload.

Possibilita a inserção de arquivos maliciosos no contexto da aplicação.

Page 21: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Referência direta a objetos

Exposição de referências a objetos e implementações internas da aplicação.

Possibilita a referência direta a tais objetos e possível bypass do controle de autenticação.

Page 22: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Vazamento de Informação

Exposição inadvertida de informações sobre a aplicação e o servidor que a hospeda.

Possibilita a obtenção de informações sensíveis para elaboração de ataques contra a aplicação.

Page 23: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Gerenciamento de Sessões

Proteção de tokens, chaves e/ou identificadores de sessão feita de maneira insuficiente.

Possibilita captura de credenciais e roubo de sessão.

Page 24: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Canais de Comunicação

Exposição de dados sensíveis na comunicação entre servidores e clientes.

Possibilita a captura de informações trocadas entre o cliente e a aplicação podendo culminar em roubo de informações sensíveis e credenciais.

Page 25: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Estudo de Caso

Page 26: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

SELECT id FROM usuarios WHERE nome = '$nome' AND senha = '$senha';

<form method="post" action="http://SITE/login.php"><input name="nome" type="text" id="nome"><input name="senha" type="password" id="senha"></form>

Client-Side:

Server-Side:

Page 27: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

' OR 'a'='a

SELECT id FROM usuarios WHERE nome = '$nome' AND senha = '' OR 'a'='a';

Client-Side: O Exploit!

Server-Side:

Page 28: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

www.seginfo.com.br

Traduzida a partir da Tirinha “Exploits of a mom” do xkcd

Page 29: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

● Referências

[documento] Guia para Auditorias de Aplicações web - OWASP Testing Guidehttp://www.owasp.org/index.php/OWASP_Testing_Project

[ferramenta] Aplicação para aprendizado - WebGoathttp://www.owasp.org/index.php/Category:OWASP_WebGoat_Project

[vídeos] Soluções do WebGoathttp://yehg.net/lab/pr0js/training/webgoat.php

Page 30: V SEGINFO - “Auditoria de Aplicações Web”

Copyright © 2010 Clavis Segurança da Informação. Todos os direitos reservados.

Fim...

Muito Obrigado!

Rafael Soares [email protected]