Testes contínuos de
segurança em aplicações
15 anos de experiência na área de SI
Consultoria de segurança, Análise de vulnerabilidade e
Pentest, Engenharia Social, Incident Response
Voluntário no SANS Institute Top 20
Marcos Ferreira
Agenda
• O que é o SecDevOps?
• Onde e quando é implementado?
• Ferramentas para testes
• Dúvidas
• Contatos
Como funciona o DevOps
• Entrega e implementação contínua
• Não precisa esperar release
• Entrega de features
• Agilidade
E a segurança...
...precisa se reinventar!
Processo atual
• Processos manuais
• Documentos antigos
• Não são ágeis
• Levam muito tempo
Normas
Dev
Testes
Pentest
Scans
Ops
ISO / PCI / OWASP / Políticas
Como começar
• Planeje a segurança
• Traga os desenvolvedores para próximo de
segurança
• Disponibilize ferramentas
• Faça verificações constantes
Implementar sec no processo
Source: https://insights.sei.cmu.edu/sei_blog/2014/12/security-in-continuous-integration.html
SAST, DAST ou RASP?
• Static Application Security Testing (SAST)
• Acesso ao código fonte
• Verificação bem detalhada
• Dynamic Application Security Testing (DAST)
• Baseado em requisições e respostas
• Não precisa ter acesso ao código fonte
• Runtime Application Self-Protection (RASP)
• Identificação e bloqueio de ataques em tempo real
• Integrado diretamente na aplicação
Ferramentas de testes e DevSecOps
GAUNTLT
Hardening Framework
Mittn
Hardening Framework
• Automatic Server Hardening
• Chef, Puppet e Ansible
• OS hardening
• SSH / MySql / PostgreSQL / Apache / Nginx
• Ubuntu / RedHat / CentOS / Debian
http://dev-sec.io/
Clair
• Análise de vulnerabilidade estática
• Containers Appc e Docker
• Ubuntu / RedHat / Debian
https://github.com/coreos/clair
Bdd-Security
• Behavior-Driven Development (BDD)
• Framework escrito Java e based no JBehave e
Selenium 2 (WebDriver)
• Usa o formato Given, When, Then
• Pode ser integrado com Jenkins
• Integração com OWASP ZAP / Nessus
• Não precisa de acesso ao código
https://github.com/continuumsecurity/bdd-security
GAUNTLT
• Behavior-Driven Development (BDD)
• Baseado em ruby
• Usa o formato Given, When, Then
• Integração com Nmap / sqlmap / arachni
http://gauntlt.org/
Mittn
• Projetado no contexto de Continuous Integration
• Baseado em python
• Usa o formato Given, When, Then
• Integração com Burp / sslyze / Radamsa
https://github.com/F-Secure/mittn
Resumindo...
Dev
Hardening
Framework
+
SEMPRE TESTE...
...E ATUALIZE TUDO! =)
Dúvidas
Email: marcos.ferreira@siteblindado.com.br
Linkedin: https://br.linkedin.com/in/mferreira
Blog: http://labs.siteblindado.com
Fone: +55 11 3454-3310
Marcos Ferreira
Obrigado!
+55 11 3354-3310
sec@siteblindado.com.br
labs.siteblindado.com

DevCommerce Conference 2016: SecDevOps – Testes contínuos de segurança em aplicações