SlideShare uma empresa Scribd logo
1 de 28
Baixar para ler offline
OWASP ZAP
Zed Attack Proxy Project
Detectando Vulnerabilidades
em sua Aplicação Web 
jeronimo.zucco@owasp.org
@jczucco
Sobre mim
• Analista GTI/UCS
• Twitter: @jczucco
• http://www.linkedin.com/in/jeronimozucco
• Membro OWASP Capítulo Porto Alegre
• http://www.owasp.org/index.php/User:Jeronimo_Zucco
• Algumas certificações na área de segurança
2
3
OWASP
Open Web Application
Security Project
Uma comunidade aberta
dedicada a ajudar as
organizações a desenvolver,
comprar e manter aplicações que
possam ser confiáveis.
OWASP
4
• Promover o desenvolvimento seguro
• Auxiliar a tomada de decisão quanto ao
risco
• Oferecer recursos gratuitos
• Promover a contribuição e
compartilhamento de informação
5
5
https://www.owasp.org/index.php/Porto_Alegre
6
Problemas
• A maioria dos desenvolvedores não conhece
sobre segurança
• A maior parte das empresas não possui pessoas
especializadas em segurança
• Testes terceirizados custam caro
• Testes de segurança são feitos somente no
final do ciclo de desenvolvimento (se for feito)
7
Fonte: https://www.acunetix.com/blog/news/nearly-all-websites-have-serious-security-vulnerabilities-new-research-shows/
8
"Você não pode criar
aplicações web seguras a
não ser que saiba como
elas serão atacadas."
9
10
11
OWASP Zed Attack Proxy Project
OWASP Zed Attack Proxy Project
• https://www.owasp.org/index.php/
OWASP_Zed_Attack_Proxy_Project
• Simon Bennetts - Engenheiro de Segurança da
Mozilla
• Vários desenvolvedores e tradutores no github:
https://github.com/zaproxy/zaproxy/
• Ferramenta de pentest de fácil uso que visa
identificar vulnerabilidades em aplicações web.
• Uma das principais ferramentas da OWASP
• free e opensource
12
Fonte: AppSec EU15 - Jim Manico
OWASP Zed Attack Proxy Project
• Baseado no Paros Proxy (fork em set/2010)
• Ideal para principiantes, mas também
utilizado por profissionais de segurança
• Ideal para desenvolvedores, especialmente
em testes automatizados de segurança
• versão atual: 2.7.0
• framework para testes avançados
• scanners automatizados
13
Fonte: AppSec EU15 - Jim Manico
IMPORTANTE
14
Use somente em suas aplicações
ou naquelas que você tiver
permissão para testar
Princípios ZAP
• Código aberto, livre
• Funciona em múltiplas plataformas (java)
• Fácil de instalar e usar
• Internacionalizado (traduzido em vários
idiomas, pt-br inclusive)
• Muita documentação
• Componentes reutilizáveis
• Envolvimento encorajado
15
Principais Características
• Traz todo o essencial para testes de aplicações web
• Proxy
• Scanners passivos e ativos
• Spider (crawl)
• Suporte à escopo e múltiplos sites
• Trata sessões e autenticação
• gerador de relatórios
• Ataques de força bruta
• Ataques de fuzzing
• Extensível (add-ons plugins) https://github.com/
zaproxy/zap-extensions
• Altamente configurável e "escriptável"
16
Características Adicionais
• Auto update
• Auto tagging (ex: coloca um label em todas as páginas
encontradas que possuem um campos ocultos)
• Scanner de portas
• Análises de parâmetros
• Comparação de sessões (se a app suporte múltiplos
papéis (roles), como: admin, usuário, etc)
• Suporte a aplicações externas
• Certificados SSL dinâmicos
• Suporte à tokens CSRF
• Testes automatizados sem UI (interface de usuário)
17
Características Adicionais
• REST API
• Container: https://github.com/zaproxy/zaproxy/
wiki/Docker
• Baseline Scan https://github.com/zaproxy/zaproxy/
wiki/ZAP-Baseline-Scan
• Ex: docker run -t owasp/zap2docker-weekly zap-
baseline.py -t https://www.example.com
• Plug-n-Hack: Extensão browser
• Suporte à scripts em várias linguagens (Javascript,
Ruby, Python, Zest) https://github.com/zaproxy/
community-scripts
• Plugins alfa
18
Modo Quick Start
• Aponte e clique
• Spider
• Varredura ativa
• Para testes mais profundos, modo proxy,
fuzzing, força bruta, configuração,
escopo, etc
19
Pentest Simples
• Configurar o browser para utilizar o ZAP como
proxy para interceptar
• Navegar na aplicação manualmente
• Utilizar o spider para encontrar conteúdos ocultos
• Verificar os problemas encontrados pelo scan
passivo
• Usar o scan ativo para encontrar vulnerabilidades
• OBS: muitos problemas não serão encontrados
com scan automatizados, utilizar o ZAP para lhe
auxiliar em testes manuais mais avançados
•
20
Testes Automatizados
• ZAP Baseline Scan https://github.com/zaproxy/
zaproxy/wiki/ZAP-Baseline-Scan
• Plugin Jenkins https://plugins.jenkins.io/zap
• Scripts: https://github.com/zaproxy/
community-scripts
• ZAP SDLC scripts: https://github.com/zaproxy/
community-scripts/tree/master/api/sdlc-
integration
• Suporte à Zest scripts https://github.com/
mozilla/zest/wiki
21
VMs para aprendizado
• Samurai Web Testing Framework
http://www.samurai-wtf.org
• OWASP Broken Web Applications Project
https://www.owasp.org/index.php/
OWASP_Broken_Web_Applications_Project
22
DEMONSTRAÇÃO
24
Referências
Outras Referências
• BSSIM (Building Security in Maturity Model)
• OWASP ASVS (OWASP Application Security
Verification Standard (ASVS) Project)
• OWASP Testing Guide
• IEEE Top 10 Software Security Design Flaws
• OWASP Testing Guide
25
Referências - ZAP
• https://www.owasp.org/index.php/ZAP
• OWASP ZAP Tutorial Videos: https://
www.youtube.com/playlist?list=PLEBitBW-
Hlsv8cEIUntAO8st2UGhmrjUB
• https://twitter.com/zaproxybot
• https://github.com/zaproxy/zap-core-help-
pt_BR/wiki/HelpIntro
• Getting Started Guide: https://github.com/
zaproxy/zaproxy/releases/download/2.6.0/
ZAPGettingStartedGuide-2.6.pdf
• https://www.slideshare.net/psiinon
26
PERGUNTAS?
OBRIGADO!
JERONIMO.ZUCO@OWASP.ORG
@JCZUCCO

Mais conteúdo relacionado

Mais procurados

Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub ActionsKnoldus Inc.
 
Introduction to Github Actions
Introduction to Github ActionsIntroduction to Github Actions
Introduction to Github ActionsKnoldus Inc.
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven DevelopmentElias Nogueira
 
Unit Test and TDD
Unit Test and TDDUnit Test and TDD
Unit Test and TDDViet Tran
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
 
Introduction to Git and GitHub
Introduction to Git and GitHubIntroduction to Git and GitHub
Introduction to Git and GitHubVikram SV
 
Implementing DevOps
Implementing DevOpsImplementing DevOps
Implementing DevOpsMike McGarr
 
Git flow Introduction
Git flow IntroductionGit flow Introduction
Git flow IntroductionDavid Paluy
 
Salesforce DevOps using GitHub Action
Salesforce DevOps using GitHub ActionSalesforce DevOps using GitHub Action
Salesforce DevOps using GitHub ActionSakthivel Madesh
 
“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...
“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...
“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...Fabián Alejandro Garófalo
 
DevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteiraDevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteiraDiego Gabriel Cardoso
 
Difference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs BitbucketDifference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs Bitbucketjeetendra mandal
 

Mais procurados (20)

Git e GitHub - Conceitos Básicos
Git e GitHub - Conceitos BásicosGit e GitHub - Conceitos Básicos
Git e GitHub - Conceitos Básicos
 
Introduction to GitHub Actions
Introduction to GitHub ActionsIntroduction to GitHub Actions
Introduction to GitHub Actions
 
Git Init (Introduction to Git)
Git Init (Introduction to Git)Git Init (Introduction to Git)
Git Init (Introduction to Git)
 
Introduction to Github Actions
Introduction to Github ActionsIntroduction to Github Actions
Introduction to Github Actions
 
Introducing GitLab
Introducing GitLabIntroducing GitLab
Introducing GitLab
 
TDD - Test Driven Development
TDD - Test Driven DevelopmentTDD - Test Driven Development
TDD - Test Driven Development
 
Unit Test and TDD
Unit Test and TDDUnit Test and TDD
Unit Test and TDD
 
CI/CD with Github Actions
CI/CD with Github ActionsCI/CD with Github Actions
CI/CD with Github Actions
 
Git+github
Git+githubGit+github
Git+github
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
 
Github
GithubGithub
Github
 
Introduction to Git and GitHub
Introduction to Git and GitHubIntroduction to Git and GitHub
Introduction to Git and GitHub
 
Implementing DevOps
Implementing DevOpsImplementing DevOps
Implementing DevOps
 
GitHub Basics - Derek Bable
GitHub Basics - Derek BableGitHub Basics - Derek Bable
GitHub Basics - Derek Bable
 
Explorando a API Rest Jira Cloud
Explorando a API Rest Jira CloudExplorando a API Rest Jira Cloud
Explorando a API Rest Jira Cloud
 
Git flow Introduction
Git flow IntroductionGit flow Introduction
Git flow Introduction
 
Salesforce DevOps using GitHub Action
Salesforce DevOps using GitHub ActionSalesforce DevOps using GitHub Action
Salesforce DevOps using GitHub Action
 
“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...
“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...
“¿Porqué utilizar una TMO (Transformation Management Office) en proyectos de ...
 
DevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteiraDevSecOps - Colocando segurança na esteira
DevSecOps - Colocando segurança na esteira
 
Difference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs BitbucketDifference between Github vs Gitlab vs Bitbucket
Difference between Github vs Gitlab vs Bitbucket
 

Semelhante a Detectando Vulnerabilidades em seu Site utilizando OWASP ZAP - Zed Attack Proxy

Validando a Segurança de Software
Validando a Segurança de SoftwareValidando a Segurança de Software
Validando a Segurança de SoftwareJeronimo Zucco
 
Ruby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviçosRuby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviçosBruno Ghisi
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open SourceEdgar Silva
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma AndroidÉdipo Souza
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Integração do Zabbix com Grafana
Integração do Zabbix com GrafanaIntegração do Zabbix com Grafana
Integração do Zabbix com GrafanaAécio Pires
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaAri Stopassola Junior
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliverySamanta Cicilia
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Durotdc-globalcode
 
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Jeronimo Zucco
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Jeronimo Zucco
 
escalando aplicações django
escalando aplicações djangoescalando aplicações django
escalando aplicações djangoAndrews Medina
 
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...minastestingconference
 
Zabbix e KACE, uma boa ideia, e porque não!
Zabbix e KACE, uma boa ideia, e porque não!Zabbix e KACE, uma boa ideia, e porque não!
Zabbix e KACE, uma boa ideia, e porque não!Fabio Vieira Mello
 
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
 

Semelhante a Detectando Vulnerabilidades em seu Site utilizando OWASP ZAP - Zed Attack Proxy (20)

Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
Analysis of vulnerabilities in web applications - LinuxCon Brazil 2010
 
Validando a Segurança de Software
Validando a Segurança de SoftwareValidando a Segurança de Software
Validando a Segurança de Software
 
Ruby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviçosRuby on Rails 100% na cloud com heroku e outros serviços
Ruby on Rails 100% na cloud com heroku e outros serviços
 
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
OpenShift: NoSQL  "a la carte"  num PaaS 100% Open SourceOpenShift: NoSQL  "a la carte"  num PaaS 100% Open Source
OpenShift: NoSQL "a la carte" num PaaS 100% Open Source
 
Introdução a Plataforma Android
Introdução a Plataforma AndroidIntrodução a Plataforma Android
Introdução a Plataforma Android
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Integração do Zabbix com Grafana
Integração do Zabbix com GrafanaIntegração do Zabbix com Grafana
Integração do Zabbix com Grafana
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na prática
 
Api todo list
Api todo listApi todo list
Api todo list
 
CNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous DeliveryCNQS - Testes Automatizados & Continuous Delivery
CNQS - Testes Automatizados & Continuous Delivery
 
Machine Learning Black Boxes
Machine Learning Black BoxesMachine Learning Black Boxes
Machine Learning Black Boxes
 
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho DuroTDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
TDC2016SP - Machine Learning Black Boxes - Terceirizando o Trabalho Duro
 
Owasp Chapter Belo Horizonte
Owasp Chapter Belo HorizonteOwasp Chapter Belo Horizonte
Owasp Chapter Belo Horizonte
 
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
 
De 0 a DevOps
De 0 a DevOpsDe 0 a DevOps
De 0 a DevOps
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
 
escalando aplicações django
escalando aplicações djangoescalando aplicações django
escalando aplicações django
 
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
Samanta Cicilia - MTC - Importância de Testes Automatizados para Continuous D...
 
Zabbix e KACE, uma boa ideia, e porque não!
Zabbix e KACE, uma boa ideia, e porque não!Zabbix e KACE, uma boa ideia, e porque não!
Zabbix e KACE, uma boa ideia, e porque não!
 
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
 

Mais de Jeronimo Zucco

Disponibilização de Serviços em IPv6 na UCS - Um Caso Prático
Disponibilização de Serviços em IPv6 na UCS - Um Caso PráticoDisponibilização de Serviços em IPv6 na UCS - Um Caso Prático
Disponibilização de Serviços em IPv6 na UCS - Um Caso PráticoJeronimo Zucco
 
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...Jeronimo Zucco
 
Segurança Através de Gerência de Configurações
Segurança Através de Gerência de ConfiguraçõesSegurança Através de Gerência de Configurações
Segurança Através de Gerência de ConfiguraçõesJeronimo Zucco
 
Segurança em desenvolvimento de software
Segurança em desenvolvimento de softwareSegurança em desenvolvimento de software
Segurança em desenvolvimento de softwareJeronimo Zucco
 
Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012Jeronimo Zucco
 
Introducão a Web Applications Firewalls
Introducão a Web Applications FirewallsIntroducão a Web Applications Firewalls
Introducão a Web Applications FirewallsJeronimo Zucco
 
Impacto das Redes Sociais na Segurança da Informação
Impacto das Redes Sociais na Segurança da InformaçãoImpacto das Redes Sociais na Segurança da Informação
Impacto das Redes Sociais na Segurança da InformaçãoJeronimo Zucco
 

Mais de Jeronimo Zucco (9)

Disponibilização de Serviços em IPv6 na UCS - Um Caso Prático
Disponibilização de Serviços em IPv6 na UCS - Um Caso PráticoDisponibilização de Serviços em IPv6 na UCS - Um Caso Prático
Disponibilização de Serviços em IPv6 na UCS - Um Caso Prático
 
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
Além do HTTPS - Como (tentar) Aumentar a Segurança de seu Website e Aplicação...
 
Segurança Através de Gerência de Configurações
Segurança Através de Gerência de ConfiguraçõesSegurança Através de Gerência de Configurações
Segurança Através de Gerência de Configurações
 
Owasp top 10 2013
Owasp top 10 2013Owasp top 10 2013
Owasp top 10 2013
 
Segurança em desenvolvimento de software
Segurança em desenvolvimento de softwareSegurança em desenvolvimento de software
Segurança em desenvolvimento de software
 
Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012Introducao WAF Tchelinux 2012
Introducao WAF Tchelinux 2012
 
Introducão a Web Applications Firewalls
Introducão a Web Applications FirewallsIntroducão a Web Applications Firewalls
Introducão a Web Applications Firewalls
 
Impacto das Redes Sociais na Segurança da Informação
Impacto das Redes Sociais na Segurança da InformaçãoImpacto das Redes Sociais na Segurança da Informação
Impacto das Redes Sociais na Segurança da Informação
 
Implementing ossec
Implementing ossecImplementing ossec
Implementing ossec
 

Detectando Vulnerabilidades em seu Site utilizando OWASP ZAP - Zed Attack Proxy

  • 1. OWASP ZAP Zed Attack Proxy Project Detectando Vulnerabilidades em sua Aplicação Web  jeronimo.zucco@owasp.org @jczucco
  • 2. Sobre mim • Analista GTI/UCS • Twitter: @jczucco • http://www.linkedin.com/in/jeronimozucco • Membro OWASP Capítulo Porto Alegre • http://www.owasp.org/index.php/User:Jeronimo_Zucco • Algumas certificações na área de segurança 2
  • 3. 3 OWASP Open Web Application Security Project Uma comunidade aberta dedicada a ajudar as organizações a desenvolver, comprar e manter aplicações que possam ser confiáveis.
  • 4. OWASP 4 • Promover o desenvolvimento seguro • Auxiliar a tomada de decisão quanto ao risco • Oferecer recursos gratuitos • Promover a contribuição e compartilhamento de informação
  • 6. 6
  • 7. Problemas • A maioria dos desenvolvedores não conhece sobre segurança • A maior parte das empresas não possui pessoas especializadas em segurança • Testes terceirizados custam caro • Testes de segurança são feitos somente no final do ciclo de desenvolvimento (se for feito) 7 Fonte: https://www.acunetix.com/blog/news/nearly-all-websites-have-serious-security-vulnerabilities-new-research-shows/
  • 8. 8 "Você não pode criar aplicações web seguras a não ser que saiba como elas serão atacadas."
  • 9. 9
  • 10. 10
  • 11. 11 OWASP Zed Attack Proxy Project
  • 12. OWASP Zed Attack Proxy Project • https://www.owasp.org/index.php/ OWASP_Zed_Attack_Proxy_Project • Simon Bennetts - Engenheiro de Segurança da Mozilla • Vários desenvolvedores e tradutores no github: https://github.com/zaproxy/zaproxy/ • Ferramenta de pentest de fácil uso que visa identificar vulnerabilidades em aplicações web. • Uma das principais ferramentas da OWASP • free e opensource 12 Fonte: AppSec EU15 - Jim Manico
  • 13. OWASP Zed Attack Proxy Project • Baseado no Paros Proxy (fork em set/2010) • Ideal para principiantes, mas também utilizado por profissionais de segurança • Ideal para desenvolvedores, especialmente em testes automatizados de segurança • versão atual: 2.7.0 • framework para testes avançados • scanners automatizados 13 Fonte: AppSec EU15 - Jim Manico
  • 14. IMPORTANTE 14 Use somente em suas aplicações ou naquelas que você tiver permissão para testar
  • 15. Princípios ZAP • Código aberto, livre • Funciona em múltiplas plataformas (java) • Fácil de instalar e usar • Internacionalizado (traduzido em vários idiomas, pt-br inclusive) • Muita documentação • Componentes reutilizáveis • Envolvimento encorajado 15
  • 16. Principais Características • Traz todo o essencial para testes de aplicações web • Proxy • Scanners passivos e ativos • Spider (crawl) • Suporte à escopo e múltiplos sites • Trata sessões e autenticação • gerador de relatórios • Ataques de força bruta • Ataques de fuzzing • Extensível (add-ons plugins) https://github.com/ zaproxy/zap-extensions • Altamente configurável e "escriptável" 16
  • 17. Características Adicionais • Auto update • Auto tagging (ex: coloca um label em todas as páginas encontradas que possuem um campos ocultos) • Scanner de portas • Análises de parâmetros • Comparação de sessões (se a app suporte múltiplos papéis (roles), como: admin, usuário, etc) • Suporte a aplicações externas • Certificados SSL dinâmicos • Suporte à tokens CSRF • Testes automatizados sem UI (interface de usuário) 17
  • 18. Características Adicionais • REST API • Container: https://github.com/zaproxy/zaproxy/ wiki/Docker • Baseline Scan https://github.com/zaproxy/zaproxy/ wiki/ZAP-Baseline-Scan • Ex: docker run -t owasp/zap2docker-weekly zap- baseline.py -t https://www.example.com • Plug-n-Hack: Extensão browser • Suporte à scripts em várias linguagens (Javascript, Ruby, Python, Zest) https://github.com/zaproxy/ community-scripts • Plugins alfa 18
  • 19. Modo Quick Start • Aponte e clique • Spider • Varredura ativa • Para testes mais profundos, modo proxy, fuzzing, força bruta, configuração, escopo, etc 19
  • 20. Pentest Simples • Configurar o browser para utilizar o ZAP como proxy para interceptar • Navegar na aplicação manualmente • Utilizar o spider para encontrar conteúdos ocultos • Verificar os problemas encontrados pelo scan passivo • Usar o scan ativo para encontrar vulnerabilidades • OBS: muitos problemas não serão encontrados com scan automatizados, utilizar o ZAP para lhe auxiliar em testes manuais mais avançados • 20
  • 21. Testes Automatizados • ZAP Baseline Scan https://github.com/zaproxy/ zaproxy/wiki/ZAP-Baseline-Scan • Plugin Jenkins https://plugins.jenkins.io/zap • Scripts: https://github.com/zaproxy/ community-scripts • ZAP SDLC scripts: https://github.com/zaproxy/ community-scripts/tree/master/api/sdlc- integration • Suporte à Zest scripts https://github.com/ mozilla/zest/wiki 21
  • 22. VMs para aprendizado • Samurai Web Testing Framework http://www.samurai-wtf.org • OWASP Broken Web Applications Project https://www.owasp.org/index.php/ OWASP_Broken_Web_Applications_Project 22
  • 25. Outras Referências • BSSIM (Building Security in Maturity Model) • OWASP ASVS (OWASP Application Security Verification Standard (ASVS) Project) • OWASP Testing Guide • IEEE Top 10 Software Security Design Flaws • OWASP Testing Guide 25
  • 26. Referências - ZAP • https://www.owasp.org/index.php/ZAP • OWASP ZAP Tutorial Videos: https:// www.youtube.com/playlist?list=PLEBitBW- Hlsv8cEIUntAO8st2UGhmrjUB • https://twitter.com/zaproxybot • https://github.com/zaproxy/zap-core-help- pt_BR/wiki/HelpIntro • Getting Started Guide: https://github.com/ zaproxy/zaproxy/releases/download/2.6.0/ ZAPGettingStartedGuide-2.6.pdf • https://www.slideshare.net/psiinon 26