O documento discute a detecção de vulnerabilidades de segurança na web usando software livre. Ele descreve ferramentas como nmap, OWASP DirBuster e w3af que podem ser usadas para descobrir vulnerabilidades e testá-las através de abordagens de caixa-branca e caixa-preta. O documento também discute a importância de relatórios e métricas de segurança e o processo de correção de vulnerabilidades encontradas.
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
FLISOL 2011 Novo Hamburgo - Detectando falhas de segurança na Web com Software Livre
1. R A F A E L B . B R I N H O S A
Detectando falhas de Segurança
na Web com Software Livre
2. Agenda
y Introdução
y Segurança na Web
y Processo Simplificado
y Descoberta
y Testes
{ Comparação de ferramentas
y Relatórios
y Correção
y Conclusões
9. Softwares Proprietários
y Preço alto
y Patentes
y Poucos bugs - são extensivamente testados
y Poucos falso-positivos
y Atualizações constantes do banco de dados de
vulnerabilidades
y Relatórios Completos
10. Software Livre
y Ferramentas pequenas e independentes que não se
comunicam
y Mais falso-positivos e Menos IA
y Bancos de dados de vulnerabilidades menos
atualizados
y Poucos Relatórios
y Níveis de maturidade diferentes
y Alternativas melhores surgindo a cada dia
11. OWASP TOP 10 2010
y Lista de falhas mais críticas encontradas em aplicações
web:
y A1: Injection
y A2: Cross-Site Scripting (XSS)
y A3: Broken Authentication and Session Management
y A4: Insecure Direct Object References
y A5: Cross-Site Request Forgery (CSRF)
y A6: Security Misconfiguration
y A7: Insecure Cryptographic Storage
y A8: Failure to Restrict URL Access
y A9: Insufficient Transport Layer Protection
y A10: UnvalidatedRedirects and Forwards
14. Cost of Fixing Security Vulnerabilities
The Fortify data suggested that it cost 100 times more to fix a single vulnerability in operational
software than to fix it at the requirements stage.
17. Descoberta
y Sites
{ shodanhq
{ google (google hacking database)
{ Yahoo Site Explore!
y OSVDB
y Documentos
y Diagramas
y Metadados
y Arquivos descompilados
18. Testes de Segurança
y White Box Security Testing, Static application
security testing (SAST)
{ Manual Reviews + Code review tools
y Black Box Security Testing, Dynamic application
security testing (DAST)
{ Manual Security Testing + Automated tools
19. White Box Security Testing
y Graudit é um script simples e conjunto de
assinaturas que permite encontrar potenciais falhas
de segurança em código-fonte usando o grep.
y Uso: graudit /path/to/scan
y Suporta: asp, jsp, perl, php e python
20. JSP
y request.getQueryString
y Runtime.exec
y getRequest
y Request.GetParameter
y request.getParameter
y jsp:getProperty
y java.security.acl.acl
y response.sendRedirects*(.*(Request|request).*)
y printStacktrace
y out.print(ln)?.*[Rr]equest.
21. PHP
y # PHP - Database
y mysql_connects*(.*$.*)
y mysql_pconnects*(.*$.*)
y mysql_change_users*(.*$.*)
y mysql_querys*(.*$.*)
y mysql_errors*(.*$.*)
y mysql_set_charsets*(.*$.*)
y mysql_unbuffered_querys*(.*$.*)
y pg_connects*(.*$.*)
y pg_pconnects*(.*$.*)
y pg_executes*(.*$.*)
y pg_inserts*(.*$.*)
y pg_put_lines*(.*$.*)
22. Perl
y # Perl xss signatures
y prints*.*$.*->param(?.*)?
23. Black Box Security Testing
y w3af – Andrés Riancho, em Python, boa
extensibilidade
y websecurify – GNUCITIZEN, fácil de rodar
y skipfish – Google, detecta vulnerabilidades menos
comuns e é rápido
y nikto – grande base de assinaturas
y SqlMap – ataques de injeção SQL, várias
funcionalidades
24. w3af
y Com nmap configura target no arquivo
y ./w3af_console -s scripts/scriptosCommanding.w3af
y set targetFramework jsp
y set targetOS unix
25. Comparação
Vulnerabilidades encontradas por Risco
Ferramenta Alto Médio Baixo Informativas Tempo de execução total
w3af 4 1 81 18 minutos
Websecurify 4 30 segundos
Skipfish 8 2 20 2 horas e 26 minutos
26. Onde Treinar
S.N
o.
Vulnerable Application Platform
1 SPI Dynamics (live) ASP
2 Cenzic (live) PHP
3 Watchfire (live) ASPX
4 Acunetix 1 (live) PHP
5 Acunetix 2 (live) ASP
6 Acunetix 3 (live) ASP.Net
7 PCTechtips Challenge (live)
8 Damn Vulnerable Web
Application
PHP/MySQL
9 Mutillidae PHP
10 The Butterfly Security Project PHP
11 Hacme Casino Ruby on Rails
12 Hacme Bank 2.0 ASP.NET (2.0)
13 Updated HackmeBank ASP.NET (2.0)
14 Hacme Books J2EE
15 Hacme Travel C++ (application
client-server)
16 Hacme Shipping ColdFusion MX 7,
MySQL
17 OWASP WebGoat JAVA
18 OWASP Vicnum PHP, Perl
19 OWASP InsecureWebApp JAVA
20 OWASP SiteGenerator ASP.NET
21 Moth
22 Stanford SecuriBench JAVA
23 SecuriBench Micro JAVA
24 BadStore Perl(CGI)
25 WebMaven/Buggy Bank
(very old)
26 EnigmaGroup (live)
27 XSS Encoding Skills – x5s
(Casaba Watcher)
28 Google – Gruyere (live)
(previously Jarlsberg)
29 Exploit- DB Multi-platform
Fonte: http://securitythoughts.wordpress.com/2010/03/22/vulnerable-web-applications-for-learning/
27. Relatórios
y Dashboard de Segurança
y Métricas
y Lista de Vulnerabilidades
y Consolidar usando todos os resultados em XML
y CVSS
32. Conclusão
y Se não tiver tempo e for rodar apenas uma – w3af!
y Scan portfólio
y Integração contínua
y Garanta as correções
y Integração de Resultados
y Gerenciamento