devcommerce conference 2016: secdevops – testes contínuos de segurança em aplicações
TRANSCRIPT
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
Processo atual
• Processos manuais
• Documentos antigos
• Não são ágeis
• Levam muito tempo
NormasDev
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
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
Email: [email protected]
Linkedin: https://br.linkedin.com/in/mferreira
Blog: http://labs.siteblindado.com
Fone: +55 11 3454-3310
Marcos FerreiraObrigado!