Uma senha, várias portas: como detectar um password spray
O desafio
O SSO da Veltro registrou um minuto silencioso logo após as oito: um único endereço tentou entrar como uma longa lista de funcionários diferentes, uma tentativa para cada um, e seguiu em frente. Isso não é alguém martelando uma conta até ela ceder; é alguém testando uma senha que já tem contra todo mundo, sabendo que a maioria não vai bater, mas a de alguém vai. Quase todas essas tentativas falharam. Uma não. Encontre a conta que os deixou entrar.
O que você vai aprender
- Distinguir password spraying (amplo) de brute force (profundo)
- Filtrar um SIEM por endereço de origem para isolar as tentativas de um único agente
- Reconhecer uma origem tocando muitos usernames distintos como o sinal do spray
- Diferenciar uma nova tentativa comum (falha e depois sucesso) de um ataque
- Listar as defesas: limites por origem, MFA, bloqueio de senhas vazadas
Habilidades testadas
Pré-requisitos
- Leitura de eventos de log em formato de tabela
- O que significa um login com sucesso ou falha
Como funciona
O brute force tenta muitas senhas contra uma única conta e rapidamente dispara bloqueios. O password spraying inverte a lógica: pega-se uma senha que provavelmente está em uso em algum lugar e tenta-se uma única vez contra uma longa lista de contas. Nenhuma conta registra mais de uma falha, então os bloqueios por conta nunca disparam.
O sinal passa da profundidade para a amplitude. Em vez de um username com muitas falhas, você vê um único endereço de origem passando por muitos usernames diferentes numa janela curta, quase todos falhando, com um sucesso ocasional quando alguma conta por acaso usava aquela senha.
Ler o log pela origem, e não pela conta, é o que torna o padrão óbvio.
Erros comuns
- Procurar muitas falhas em uma única conta. Isso é brute force; um spray mostra uma falha por conta em muitas contas.
- Apontar
s.radev. Essa pessoa falha uma vez e depois acerta a partir do próprio endereço: uma nova tentativa normal, não a origem do spray. - Responder com o IP do atacante. A pergunta é qual conta foi comprometida, não qual é a origem.
- Deixar passar o único sucesso. Dentro da rajada, nove falham e só um acerta; esse usuário é a resposta.
Como se proteger
Detecte a amplitude e elimine a vitória fácil.
- Aplique rate limit e alerte por endereço de origem, não apenas por conta, e sinalize qualquer origem que tente muitos usernames distintos em uma janela curta.
- Exija autenticação multifator para que uma senha correta, sozinha, não conceda acesso.
- Bloqueie senhas fracas, compartilhadas e já vazadas, que são o que faz uma única tentativa do spray acertar.
- Bloqueie ou exija verificação adicional em contas que tenham sucesso a partir de um endereço visto falhando contra muitas outras.