tdc2016poa | trilha web - agile security
TRANSCRIPT
Agile SecurityMindset de segurança no ambiente ágil
1
Sobre nós
Waldemar Neto @waldemarnt
http://walde.co/
Jeff Stachelski @jeffhsta
https://jeffhsta.github.io/
2
Agile SecurityMindset de segurança em um ambiente ágil
3
Mas porque?
● Aplicação○ Pacote○ Auditoria externa○ Cloud computing
● Desenvolvimento○ Senhas fracas○ 2FA○ GPG○ Git○ Conhecimentos de autenticação
4
Segurança no dia a dia
5
Assinando commits com GPG
6
Um pouco sobre GPG (GNU Privacy Guard)
7
GIT e GPG
8
Demo time
9
Segredos compartilhados
10
Compartilhando segredos
● pass● Vault● 1Password for teams
11
Criptografando canais de comunicação
12
HTTPS em todo lugar
● Hypper● Text● Transport● Protocol● Secure
13
Autenticação
14
Mais de um fator de autenticação
15
Autenticação baseada em form
16
Autenticação baseada em Token
● Basic● JWT (JSON Web Token)● OAuth2
17
18
user: waldemar
password: 12345
Basic Authentication
base64Encode(user:password)
Authorization: Basic d2FsZGVtYXI6MTIzNDU2
19
Json Web Token (JWT)
Header
Payload
Signature
20
OAuth
Senhas
21
Senhas
● Senhas fracas: ○ 123456, admin ou 18061992
● Políticas de senhas● Armazenando senhas
22
Vida sem senhas
23
Criptografia e Hashing
24
CRIPTOGRAFIA E HASHING
● Plaintext != Encoding != Encryption != Hashing != Criptografia
25
Não reinvente a roda
● Bibliotecas de criptografía existentes● Algoritmos conhecidos como:
○ AES (Advanced Encryption Standard)○ RSA○ SHA512 (Secure Hash Algorithm)○ bcrypt
26
Reset de senhas
27
Validações
28
Validação de dados de entrada
● Validar e sanitizar os dados de entrada● Sanitizar os dados de saída● Cross Site Scripting (XSS)● Injection Attacks● Uploads
29
Melhoria de segurança com HTTP headers
● Content-Security-Policy● X-Content-Security-Policy● X-WebKit-CSP
30
Demo
31
Sessões
32
Sessões
● Lembre de mim● Onde salvar status de sessão● Invalidando sessões● Cookie monster● Local Storage
33
Um pouco sobre ataques
34
Ataques comuns
● Clickjacking● Cross Site Request Forgery (CSRF)● Denial of Service (DoS)● Server Side Request Forgery (SSRF)● CORS
35
Falhas em configurações
36
Falhas em configurações
● Esqueci o debug com TRUE● Falta de Monitoramento● Principle of least privilege● Rate limiting & Captchas ● Senhas e segredos de projeto em
arquivos● Patching e Updates
37
Docker
38
Pontos de atenção com docker
● Origem das imagens● Automated build● Dockerfile● Least privilege● read-only
39
Práticas de segurança no projeto
40
Pentesting
● OWASP top 10● Ferramentas
○ OWASP Zap○ Burp Suite
● Distro Linux○ Kali Linux○ BlackArch
41
CONTINUOUS SECURITY HYGIENE
● Mantenha sempre os padrões de segurança
● Segurança vs Usabilidade● Como manter essas práticas
continuamente no time?
42
43
Threat Modeling
44
OWASP CORNUCOPIA E Elevation of Privilege
45
Valeu!
Perguntas?
You can find nóis at @waldemarnt & @jeffhsta