O AWS WAF (Web Application Firewall), provê uma camada adicional de segurança para sua aplicação web. Essa sessão terá o intuito de expor, formas de utilização do serviço, arquiteturas, como também, automações de bloqueios.
6. O que é AWS WAF?
Firewall de aplicativo da web (WAF) permite
criar mecanismos de controle que ajudam a
decidir quais requisições podem ou não
acessar seu website
• Full-feature API
• Regras de segurança customizáveis
• Integrado com Amazon CloudFront – proteção na
borda
• Casos de uso: proteção contra exploits, abuso e DDoS
na aplicação
7. O que é AWS Lambda?
O AWS Lambda permite que você execute
códigos sem provisionar ou gerenciar
servidores.
• “Server-less” scripting; Ações baseadas em eventos
• Possui integração com outros serviços da AWS
• Casos de uso: ação em resposta a eventos,
agendamento de tarefa, server-less backend etc.
9. • Fontes de ataques são persistentes e adaptáveis
• Melhor proteção
• Análises customizadas mais elaboradas e levando em
consideração especificidade de cada aplicação
• Integração com fonte de dados públicas
Por que criar automação de proteção?
15. Tipos de ataques que requerem automação
HTTP floods Scans & probesIP reputation lists Bots & scrapers
Atacantes
16. Tipos de ataques que requerem automação
HTTP floods Scans & probesIP reputation lists Bots & scrapers
Atacantes
17. IP reputation lists
Coleção de IPs com histórico de problemas ou
fontes conhecidas de ataques
• Open proxies ou hosts conhecidos por enviar
spam/trojans/virus
• Lista constantemente mudando e sendo atualizada
• Solução: configurar função agendada que consulta
listas públicas (ex: Emerging Threats, Spamhause, Tor
Node list) e atualiza automaticamente as regras de
bloqueio no WAF
20. Tipos de ataques que requerem automação
HTTP floods Scans & probesIP reputation lists Bots & scrapers
Atacantes
21. HTTP floods
Requisições válidas em uma quantidade que
comprometem os recursos do servidor
• Requisições direcionadas a serviços/páginas de algo
consumo de recursos. (ex: login, busca de produtos
etc)
• Diferentemente de outros ataques de flood, aqui as
requisições são válidas
• Problema para diferenciar requisições de usuários
válidos de atacantes
• Solução: analisar logs de acesso para identificar
origens com número de acesso acima do
considerado normal.
Atacantes
24. Tipos de ataques que requerem automação
HTTP floods Scans & probesIP reputation lists Bots & scrapers
Atacantes
25. Scans & probes
Sistemas que analisam aplicações web em
busca de vulnerabilidades
• Seus scans – excelente; executados por fonte não
autorizada/desconhecida – mau sinal.
• Algo ou alguém mal intencionado
• Consomem recuros ao acessar URLs que não
existem
• Solução: analisar logs de acesso para identificar
origens com alto número de requisições que
geraram erro 40x
28. Tipos de ataques que requerem automação
HTTP floods Scans & probesIP reputation lists Bots & scrapers
Atacantes
29. Bots & scrappers
Aplicações que executam busca automática
através da internet
• Good bots (engines de busca, inteligência/comparador
de preço …) vs bad bots (cópia de conteúdo, roubo de
dados, malware …)
• Constantemente evoluindo/adaptando-se
• Solução: usar robots.txt e um “honeypot” para
identificar (e bloquear) ofensores
33. “Equilibrar a segurança com o
desempenho, custo e escalabilidade”
“Com os controles que
o AWS WAF e
CloudFront,
implementamos uma
arquitetura escalável e
simples. O beneficio
imediato foi custo e
disponibilidade, sem
aumento de equipe.”
Gleicon Moraes
• Uma das maiores redes de
varejo do Brasil
• Números
• +700 Lojas
• +24.000 Pessoas
• 8 CDs
• Plataforma de e-commerce
34. Desafio
• WAFs tradicionais:
1. Perfis de aplicações tradicionais
2. Difíceis de escalar na nuvem - limitação de banda e CPU
3. Automação requer banda e hardware para processamento de logs
• Bloquear Bots e Crawlers mal intencionados (com base
em IP) sem afetar a navegação e experiência do cliente
• Ter uma solução em tempo para Black Friday
37. Marcos Antes do Black Friday
• Setembro
• Confirmado nova arquitetura
• Início desenvolvimento
• Outubro
• Nova estrutura pronta para entrar em produção
• Novembro
• Virada de todo o tráfego para nova estrutura
38. Lições Aprendidas
• Identifique o que necessita de proteção
• Comece pequeno e evolua incrementalmente
• Use a ferramenta adequada para o trabalho
• Python
• Libs
• Considere o tempo entre receber arquivo de logs e processá-lo
• Defesa em camadas
• Regras simples na borda
• Regras complexas perto da aplicação ou assíncrono
39. Material de Apoio
Security Blogs
• HTTP Floods Heitor Vital <heitorc@amazon.com>
• Scans & Probes Ben Potter <benpo@amazon.com>
• Bots & Scrappers Vlad Vlasceanu <vladv@amazon.com>
• IP Reputation Lists Lee Atkinson <leeatk@amazon.co.uk>
Tutorials Page
• aws.amazon.com/waf/preconfiguredrules/