detecting-anomalous-authentication-patterns
Faz seu agente detectar padrões estranhos em logins. Ele usa análise de comportamento e aprendizado de máquina para encontrar atividades suspeitas.
O que ela faz
Esta ferramenta analisa os registros de login de usuários para encontrar atividades de acesso incomuns ou suspeitas. Ela procura por padrões que podem indicar que uma conta foi invadida ou que alguém está tentando acessá-la de forma maliciosa.
Quando usar
- ✓Quando você suspeita que uma conta de usuário foi comprometida.
- ✓Para verificar se um usuário está acessando sistemas de locais geograficamente impossíveis.
- ✓Para detectar ataques em massa como 'brute force' ou 'credential stuffing'.
Exemplo do que pedir para a IA
“Verifique se há padrões de login anômalos nos registros de autenticação.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ela compara os logins atuais com o comportamento normal registrado anteriormente, usando inteligência artificial e análises estatísticas. Se um login for muito diferente do usual (como vir de outro país em poucos minutos), ele é sinalizado.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-anomalous-authentication-patternsOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/detecting-anomalous-authentication-patterns/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Detecção de Padrões de Autenticação Anômalos
Quando Usar
- Operações de segurança precisam identificar contas comprometidas a partir da análise de logs de autenticação
- Implementar detecção de "viagem impossível" para sinalizar logins geograficamente inconsistentes
- Detectar ataques de força bruta, pulverização de senhas e "credential stuffing" em tempo real
- Construir linhas de base comportamentais para usuários para identificar desvios que indiquem comprometimento da conta
- Correlacionar anomalias de autenticação com inteligência de ameaças para detecção de movimento lateral
- Investigar alertas de SIEM ou IdP para atividades de login suspeitas
Não usar para alertas baseados em regras estáticas de um único login falho; a detecção de anomalias requer linhas de base estatísticas em dimensões de tempo e entidade para reduzir falsos positivos.
Pré-requisitos
- Fontes de log de autenticação (logs de login do Azure AD/Entra ID, logs do sistema Okta, logs de eventos do Active Directory 4624/4625/4648/4768/4771)
- Plataforma SIEM (Splunk, Microsoft Sentinel, Elastic SIEM) com pelo menos 90 dias de dados de linha de base
- Banco de dados GeoIP para detecção de anomalias baseada em localização (MaxMind GeoLite2 ou IP2Location)
- Python 3.9+ com pandas, scikit-learn e scipy para análises personalizadas
- Contexto de identidade do usuário (departamento, cargo, horários de trabalho típicos, localização)
Fluxo de Trabalho
Etapa 1: Coletar e Normalizar Logs de Autenticação
Agregue eventos de autenticação de todas as fontes de identidade:
import pandas as pd
import json
from datetime import datetime, timedelta
from collections import defaultdict
# Analisa logs de autenticação de várias fontes
def normalize_auth_logs(log_source, raw_logs):
"""Normaliza eventos de autenticação para um esquema comum."""
normalized = []
for event in raw_logs:
if log_source == "azure_ad":
normalized.append({
"timestamp": event["createdDateTime"],
"user": event["userPrincipalName"],
"source_ip": event["ipAddress"],
"location": {
"city": event.get("location", {}).get("city"),
"state": event.get("location", {}).get("state"),
"country": event.get("location", {}).get("countryOrRegion"),
"lat": event.get("location", {}).get("geoCoordinates", {}).get("latitude"),
"lon": event.get("location", {}).get("geoCoordinates", {}).get("longitude")
},
"result": "success" if event["status"]["errorCode"] == 0 else "failure",
"failure_reason": event["status"].get("failureReason", ""),
"app": event.get("appDisplayName", "Unknown"),
"device": event.get("deviceDetail", {}).get("operatingSystem", "Unknown"),
"browser": event.get("deviceDetail", {}).get("browser", "Unknown"),
"mfa_result": event.get("authenticationDetails", [{}])[0].get("succeeded", None),
"risk_level": event.get("riskLevelDuringSignIn", "none"),
"client_app": event.get("clientAppUsed", "Unknown"),
"source": "azure_ad"
})
elif log_source == "okta":
normalized.append({
"timestamp": event["published"],
"user": event["actor"]["alternateId"],
"source_ip": event["client"]["ipAddress"],
"location": {
"city": event["client"].get("geographicalContext", {}).get("city"),
"state": event["client"].get("geographicalContext", {}).get("state"),
"country": event["client"].get("geographicalContext", {}).get("country"),
"lat": event["client"].get("geographicalContext", {}).get("geolocation", {}).get("lat"),
"lon": event["client"].get("geographicalContext", {}).get("geolocation", {}).get("lon")
},
"result": "success" if event["outcome"]["result"] == "SUCCESS" else "failure",
"failure_reason": event["outcome"].get("reason", ""),
"app": event.get("target", [{}])[0].get("displayName", "Unknown"),
"device": event["client"].get("device", "Unknown"),
"browser": event["client"].get("userAgent", {}).get("browser", "Unknown"),
"source": "okta"
})
elif log_source == "windows_ad":
normalized.append({
"timestamp": event["TimeCreated"],
"user": event["TargetUserName"],
…
Perguntas frequentes
O que são 'padrões anômalos de autenticação'?
São atividades de login que fogem do comportamento normal esperado para um usuário, como logins de locais muito distantes em um curto período de tempo, ou muitas tentativas de login falhas seguidas.
Que tipos de ataques essa ferramenta pode detectar?
Ela pode detectar ataques como 'impossible travel' (viagem impossível), 'credential stuffing' (uso de credenciais roubadas), 'brute force' (tentativas repetidas de senha) e 'password spraying' (tentativa de senhas comuns em muitas contas).
Preciso de algum dado específico para usar esta ferramenta?
Sim, você precisa ter os registros de login de sistemas como Azure AD, Okta ou Active Directory, além de dados históricos (pelo menos 90 dias) para que a ferramenta possa aprender o comportamento normal.
Detalhes
Descrição original do autor
Detects anomalous authentication patterns using UEBA analytics, statistical baselines, and machine learning models to identify impossible travel, credential stuffing, brute force, password spraying, and compromised account behaviors across authentication logs. Activates for requests involving authentication anomaly detection, login behavior analysis, UEBA implementation, or suspicious sign-in inve
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5629
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
django-security
Ajuda seu agente a implementar práticas de segurança em aplicações Django. Ele foca em autenticação, autorização e prevenção contra ataques comuns, garantindo um código mais seguro.
affaan-m/ECC
laravel-security
Ajuda seu agente a proteger aplicações Laravel contra ameaças. Implementa práticas de segurança para autenticação, autorização e prevenção de ataques comuns.
affaan-m/ECC
module-regression
Ajuda seu agente a gerenciar mudanças em projetos grandes. Garante que alterações em uma parte do código não quebrem outras partes.
affaan-m/ECC