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

658 views 28 slides May 13, 2019
Slide 1
Slide 1 of 28
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28

About This Presentation

Detectando Vulnerabilidades em seu Site utilizando OWASP ZAP - Zed Attack Proxy - Apresentação realizada no Tchelinux Caxias 2018


Slide Content

OWASP ZAP
Zed Attack Proxy Project
Detectando Vulnerabilidades
em sua Aplicação Web 
[email protected]
@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!
[email protected]
@JCZUCCO