Você está na página 1de 22

Anlise de Vulnerabilidades em Aplicaes WEB

Apresentao
Luiz Vieira

Construtor 4Linux Analista e Consultor de Segurana 15 anos de experincia em TI Pen-Tester Articulista sobre Segurana de vrios sites: VivaOLinux, SeguranaLinux, Imasters, HackProofing e etc Entusiasta do Software Livre Filsofo e Psicoterapeuta

BotecoNet Agenda

Anlise de Vulnerabilidades em Aplicaes WEB 24/06; Novidades sobre o PostgreSQL PGCON2010 - 01/07; Java Programando para fbrica de software - 08/07 ;

Tpicos de hoje

Princpio de Sistemas Web Ataques Web: Origem e Motivao Princpios da Segurana Web all input is evil until proven otherwise OWASP e Top 10 OWASP Vulnerabilidades Web Principais Classes de Vulnerabilidades Ferramentas para Anlise e Auditoria Cross-Site-Scripting Cross Site Request Forgery Armazenamento Inseguro de dados

Princpios de Sistemas Web


tima escolha para mudana de plataforma das aplicaes(?) A Internet no foi criada visando segurana Atualmente considerada uma selva

Ataques Web: Origem e Motivao

Roubo de informaes Benefcio Prprio Espionagem Industrial Defacement Mass scaning/defacing (Ex-)Funcionrios Insatisfeitos Salrios baixos ou demisses injustas Worms

Princpios da Segurana Web

all input is evil until proven otherwise. Ter uma noo das falhas no suficiente. White List vs Black List

all input is evil until proven otherwise

Entradas visveis e de fcil manipulao Campos texto Variveis de URL Entradas de manipulao intermedirio Campos hidden Valores de cookies Demais inputs (select, checkbox, radio etc) Entradas de difcil manipulao Campos de cabealhos HTTP

OWASP e Top 10 OWASP

Significado: Open Web Application Security Project Misso: Tornar visvel os riscos de segurana que uma aplicao pode sofrer. Livre para participao e material sob licena de Software Livre http://www.owasp.org

Ferramentas para Anlise e Auditoria

Distribuies - Backtrack 4 - OWASP Live CD Ferramentas - WebScarab - Paros Proxy - Firebug - Muitas outras... Plugins - Firecat (para Firefox)

http://migre.me/RyHN

Wargames - Webgoat - Srie HACME - www.hackerskills.com

Vulnerabilidades Web

Caminho mais fcil de expor informao. Internet no somente a Web (?) Preocupao com vulnerabilidades? Dados valiosos? E em outro host do mesmo servidor?

Vulnerabilidades Web

Principais Classes de Vulnerabilidades


Injection Cross Site Scripting (XSS) Falha de Autenticao e gerenciamento de sesso Referncia Insegura Objetos CSRF Falhas de configurao Armazenamento Inseguro de Dados Falha de Restrio de Acesso URL Proteo Insuficiente da Camada de Transporte Redirecionamento e Encaminhamento Sem Validao

Cross-Site-Scripting (XSS)

Alta ocorrncia Baixo impacto (?) - Sequestro de sesso - Alterao de fluxo de dados - Defacement - Vetor para diversos outros ataques Execuo arbitrria de cdigos Javascript M (ou no) filtragem dos dados que podem ser manipulador pelo usurio. Permite a criao de worms: Vrus do Orkut (2007)

Mtodos de Ataque

Induzir a vtima a acessar o endereo: - http://localhost/AtaquesWeb/xss_exemplo1.php? busca=<script>alert('Vulneravel+a+XSS')</script>

Mtodos de Ataque

Procurar esconder (camuflar) a tentativa de ataque: http://localhost/AtaquesWeb/xss_exemplo1.php? busca=%3c%73%63%72%69%70%74%3e%61%6c %65%72%74%28%27%56%75%6c%6e %65%72%61%76%65%6c%20%61%20%58%53 %53%27%29%3c%2f%73%63%72%69%70%74%3e

Cross Site Request Forgery


Semelhante a XSS Qualquer sistema vulnervel a XSS est vulnervel a XSRF Nem toda aplicao vulnervel a XSRF est tambm vulnervel a XSS Permite alterar as informaes enviadas ao navegados. Ataque client-side No se baseia em executar cdigo JS Se baseia em enviar requisies com as credenciais do usurio para o servidor.

Solues

Ineficiente: Blacklist addslashes() ineficiente para XSRF Eficiente: Evitar falhas de XSS Controle prprio de tokens

Armazenamento Criptogrfico Inseguro


Definies: Funes Hash Funces Criptogrficas Criptografia Simtrica Criptografia Assimtrica Hash + Criptografia Ataques: Senhas fracas Brute-force Senhas fortes Wordlist - Rainbowcrack + hash sites

Armazenamento Criptogrfico Inseguro RainbowCrack

Brute-force Normal: 350 milhes de senhas (texto puro) por segundo. Rainbow: 62.223 milhes de senhas em texto puro por segundo http://www.md5crack.com/

Proteo de dados

Armazenamento de Senha? Dados a serem recuperados? Hash puro? E criptografia? Proteja bem a chave.

Contato: luiz.vieira@4linux.com.br

Você também pode gostar