Le renseignement sur les menaces dans Verify
Sécuriser les organisations contre les attaques d'identité à grande échelle avec IBM Security Verify
Les violations de données dues à l'augmentation de la transformation numérique dans tous les secteurs d'activité s'avèrent coûteuses à corriger et ont un impact négatif sur la réputation de la marque. Selon Cost of a Rapport sur les violations de données 2022, l'utilisation d'informations d'identification volées ou compromises reste la cause la plus fréquente d'une atteinte à la protection des données. Les violations causées par le vol ou la compromission d'informations d'identification ont coûté en moyenne 4.50 millions d'USD. Ces violations ont eu le cycle de vie le plus long - 243 jours pour identifier la violation, et 84 jours supplémentaires pour la contenir. Les clients cherchent donc à avoir une visibilité sur le trafic suspect qui arrive chez leurs locataires et à prendre des mesures proactives pour éviter les attaques liées à l'identité. Les attaques basées sur l'identité comprennent également des attaques continues sur les ressources par le biais de nombreuses tentatives de connexion et de tentatives de second facteur. Les organisations doivent rester alertes et conscientes, 24x7, ce qui crée beaucoup de consternation et d'inconfort pour les équipes qui protègent ces ressources.
En raison de ces vecteurs de menace et des préoccupations des organisations, IBM Security Verify SaaS introduit une fonctionnalité permettant d'analyser le trafic sur l'ensemble des locataires afin de détecter les indicateurs de compromission et les anomalies pour les attaques liées à l'identité, telles que les attaques par force brute, les attaques par bourrage d'identifiants, les écarts de connexion, et bien d'autres encore à l'avenir. Ces alertes permettront aux administrateurs chargés de la gestion des identités et des accès (IAM) de l'organisation de connaître le trafic suspect et de prendre des mesures correctives proactives, telles que le blocage d'une adresse IP ou la désactivation du ou des comptes d'utilisateur.
Note
Cette fonctionnalité est disponible dans le cadre d'une bêta fermée. Veuillez contacter le support IBM si vous souhaitez que cette fonction soit activée dans votre locataire
dans votre locataire.
Présentation
IBM Security Verify aide les entreprises à se protéger contre les attaques à grande échelle basées sur l'identité. L'un des mécanismes consiste à utiliser une détection avancée des menaces basée sur les anomalies détectées dans le trafic de tous les clients d' IBM Security Verify. Ce point est décrit plus en détail dans le présent document.

Protection Edge
Chaque fois qu'une demande arrive à Verify, elle est d'abord analysée au niveau de la périphérie afin de bloquer le trafic suspect et de prévenir les attaques telles que l'injection de commande, le Cross Site Scripting (XSS), le DDOS, le HTTP invalide, l'injection PHP, l'inclusion de fichier à distance, l'injection SQL, les chevaux de Troie, etc. Avec une solution de sécurité périphérique, Verify utilise également la géolocalisation et les politiques de réseau pour sécuriser l'infrastructure. Il s'agit notamment des règles de pare-feu pour les applications Web, des règles IP, de la protection DOS basée sur des limites de débit par IP et de la réputation des clients basée sur le comportement antérieur des adresses IP individuelles et partagées. Il est conçu pour arrêter les clients malveillants avant qu'ils ne puissent attaquer.
En outre, le bot manager détecte, alerte et empêche le trafic de bots. En outre, des règles personnalisées sont définies par IBM pour refuser tout trafic suspect qui ne relèverait d'aucune des protections standard fournies par le service WAF. Cette fonctionnalité d' IBM Security Verify existe depuis des années et n'est pas nouvelle.
L'équipe de détection et de réponse à la sécurité d' IBM Security Verify surveille les menaces et les activités suspectes dans son écosystème de milliers de clients et de partenaires, et réagit en prenant les mesures appropriées. Les adresses IP malveillantes connues sont ajoutées à une liste de blocage au niveau de la couche périphérique, en même temps que divers contrôles de sécurité couvrant le cryptage, la sécurité des données des locataires, la séparation et la sécurité du réseau, etc. Cela empêche l'accès à tout locataire Verify à partir de ces adresses IP.
Analyseur de menaces
La couche de défense suivante est l'analyseur de menaces qui analyse le trafic entrant pour détecter les attaques potentielles liées à l'identité, telles que le bourrage d'informations d'identification, les attaques par force brute, les anomalies de connexion, etc. Il exploite également les informations sur les menaces d' IBM Security X-Force Exchange pour les adresses IP concernant la réputation et les données historiques d'activités telles que les logiciels malveillants, les bots, etc. IBM Security X-Force Exchange est une plateforme de partage de renseignements sur les menaces basée sur le cloud qui permet aux utilisateurs de rechercher rapidement les dernières menaces de sécurité, d'agréger des renseignements exploitables et de collaborer avec leurs pairs. IBM X-Force Exchange, avec l'aide des renseignements générés par l'homme et la machine, exploite IBM X-Force dans son intégralité pour aider les utilisateurs à devancer les menaces émergentes.
Il s'agit de la nouvelle capacité dont il est question dans cet article.
L'analyseur de menaces utilise des modèles de menaces historiques générés par tous les locataires IBM Security Verify. Ainsi, tout locataire peut profiter des alertes générées par l'analyseur de menaces, même s'il n'y a pas eu d'attaque antérieure. Cela permet d'atténuer les attaques de manière proactive.
Dans un premier temps, Threat Analyzer suivra quatre grands vecteurs de menace. Les vecteurs de menace analysés seront continuellement améliorés et complétés, et de nouveaux modèles de menace seront ajoutés pour des vecteurs supplémentaires, sans nécessiter de configuration spécifique de la part du locataire. Les modèles actuellement pris en charge sont décrits ci-dessous.
-
X-Force Actionable IPs : Ce vecteur de menace examine les flux de données fournis par IBM Security X-Force. Ce flux de données est une coopération de signaux évalués et agrégés pour identifier et classer les adresses IP suspectes par le biais de données de télécommunication et d'autres données de réseau auxquelles IBM Security X-Force participe et qu'elle alimente. Cette mesure vise à empêcher les adresses IP connues et suspectes d'accéder au système.
-
Échecs de connexion : Ce vecteur de menace examine les modèles d'échecs de connexion pour le premier et le deuxième facteur afin de déterminer si les échecs de connexion se situent dans les limites du seuil normal ou s'ils s'en écartent. L'objectif est d'empêcher les attaques à grande échelle par force brute à partir des adresses IP qui utilisent ce type d'attaque.
-
Écarts de connexion : Ce vecteur de menace examine les modèles de connexion réussie pour le premier et le deuxième facteur afin de déterminer si les connexions réussies se situent dans les limites normales ou s'écartent des seuils normaux. L'objectif est d'empêcher les connexions réussies à partir d'identifiants volés sur les adresses IP qui utilisent ce type d'attaque.
-
Le bourrage d'informations d'identification/les informations d'identification compromises : Ce vecteur de menace s'intéresse à l'utilisation de mots de passe courants ou falsifiés lors de la connexion afin d'identifier les adresses IP qui persistent à utiliser des mots de passe courants ou falsifiés. L'objectif est d'empêcher les ouvertures de session courantes ou hameçonnées à partir des adresses IP qui utilisent ce type d'attaque.
Pré-authentification
Une fois qu'il est confirmé que le trafic n'est pas suspect, il est procédé à des vérifications de préauthentification. Il s'agit notamment de vérifier si l'identifiant entrant est un mot de passe courant ou un identifiant précédemment compromis. Si cette vérification est positive, IBM Security Verify applique des règles d'accès pour déterminer si la demande doit être autorisée/bloquée ou si une vérification supplémentaire est nécessaire.
Cela fera partie d'une prochaine mise à jour.
Authentification
IBM Security Verify offre un moteur de risque adaptatif et robuste qui peut être configuré pour évaluer les règles de contrôle d'accès en fonction du contexte de la demande (comme la géographie et les plages de sous-réseau IP), du contexte et des attributs de l'utilisateur, de l'état de conformité d'un appareil provenant d'une solution de gestion d'appareils, de la biométrie du comportement dynamique de l'utilisateur, etc. En fonction du résultat de l'évaluation de la politique, la décision peut consister à autoriser la transaction, à la bloquer, à demander des facteurs d'authentification supplémentaires ou à diriger l'utilisateur vers un système externe.
La capacité d'authentification basée sur le risque est l'accès adaptatif. Les options MFA comprennent l'OTP par SMS/Email, TOTP et l'application IBM Verify Authenticator (ex : push, présence de l'utilisateur et biométrie). Les options sans mot de passe comprennent également le QRCode et les clés d'accès (FIDO).
Exporter ou notifier des événements de menace
Cette section décrit les différentes manières dont les événements liés aux menaces peuvent être interrogés et transmis à des outils externes tels que le SIEM pour un examen plus approfondi. Vous pouvez choisir celui que vous utilisez déjà pour interroger d'autres événements. Si vous le configurez pour la première fois, nous vous recommandons d'utiliser l'approche des webhooks de notification.
-
Les webhooks de notification : Cela peut se faire en spécifiant
event_type = threat
comme intérêt lors de l'ajout d'un événement personnalisé dans l'abonnement aux événements pour la configuration du webhook de notification. Pour plus de détails sur la configuration du webhook de notification, voir Création d'un webhook de notification -
Interroger les événements liés aux menaces à l'aide de l'API des événements : Pour ce faire, il suffit de spécifier
event_type = threat
comme filtre pour l'API des événements. Pour plus de détails sur l'utilisation de l'API des événements, voir Extraction des données d'activité et d'événement -
QRadar DSM : QRadar DSM peut être configuré pour interroger les événements de menace en sélectionnant
event_type = threat
. Pour plus de détails sur l'utilisation de QRadar DSM, voir IBM Security QRadar
Menaces et enquêtes
Cette section décrit les différentes alertes générées par IBM Security Verify et fournit des conseils sur les étapes possibles pour des investigations supplémentaires afin de déterminer si le trafic est suspect ou non. Il fournit également des détails sur les mesures correctives proactives à prendre si le trafic est jugé suspect.
Nom de l'alerte : Adresses IP pouvant faire l'objet d'une action de la part de XFE
Indique : Attaque par force brute
Détails : Les adresses IP à haut risque sont impliquées dans des activités malveillantes, telles que la pulvérisation de mots de passe et le C&C de botnet, et peuvent indiquer que des comptes ont été compromis au cours de la dernière heure. Voici les quatre catégories d'adresses IP exploitables que nous utilisons :
- Analyse des adresses IP (scanning)
- Logiciels malveillants (mw)
- Bots (bots)
- Serveur de commande et de contrôle de botnet c2server )
Enquête : Analyser le trafic pour déterminer si des mesures correctives sont nécessaires.
- Identifier l' URL du locataire concerné (
top5_affected_tenantname
) - Identifier le type d'événements générés par l'activité d'adresses IP exploitables (
top5_affected_event_type
) - Si des événements de gestion sont générés, identifiez si la réinitialisation des mots de passe ou l'ajout de dispositifs MFA est effectué pour un ou plusieurs utilisateurs. Cela pourrait indiquer un risque de reprise de compte.
- Identifier la liste des adresses IP suspectes et vérifier si des demandes de connexion ont abouti à partir de ces adresses IP.
xfe_confirmed_malicious_ips
: Liste des IP pouvant faire l'objet d'une action et à partir desquelles des événements de SSO, d'authentification ou de gestion ont été trouvés au cours de la dernière heurexfe_threat_insight
: Catégories associées aux Ips exploitables. Par exemple, "Found 3 known malicious IPs, having categories : anonsvcs : 0, bots : 3, c2server: 0, mw : 0, scanning : 0"suspicious_ips
: Liste des adresses IP exploitables trouvées au cours de la dernière heure, avec le pourcentage d'échec, le nombre de réussites et le nombre d'échecs de connexion pour chaque adresse IP.
- Identifier la gravité de l'alerte :
- Critique : Si 5 adresses IP ou plus sont trouvées parmi les adresses IP pouvant faire l'objet d'une action
- Avertissement : Si 1 ou <5 adresses IP sont trouvées parmi les IP pouvant faire l'objet d'une action
- Si les demandes provenant d'adresses IP exploitables échouent, le site
top5_affected_data_cause
fournit davantage d'informations sur la cause des échecs. - Identifier les noms d'utilisateur affectés (
top5_affected_data_username
) qui montrent les 5 comptes les plus utilisés pendant l'attaque. - Identifier si un compte a été accédé avec succès (
compromised_users
) à partir d'adresses IP suspectes - Identifier l'application concernée (
top5_affected_data_applicationname
)
Actions de remédiation possibles :
- Bloquer l'adresse IP si le trafic semble suspect. Pour plus de détails, reportez-vous à la section sur les IP de blocage.
- Bloquer les comptes d'utilisateurs s'ils sont compromis. Pour plus de détails, reportez-vous à la section relative aux comptes de blocs.
{
"rule_id": "XFE_ACTIONABLE_IP",
"rule_name": "Actionable IP addresses from XFE",
"summary": "Actionable IP addresses from XFE: 115 risky events are observed from 2022-12-17 11:00:00 UTC to 2022-12-17 12:00:00 UTC.",
"source": "[('tenantid', '874f131f-79a9-4581-b078-de7681091fbc')]",
"component": "Login activity",
"anomalous_event_count": 115,
"normal_traffic_volume": 0,
"start_time": 1671274800000,
"end_time": 1671278400000,
"date": "2022-12-17",
"severity": "critical",
"index": "event-*",
"impacted_user_count": 22,
"suspicious_ips": "[['ip', 'fail_percentage', 'failure_count', 'success_count'],
['193.118.55.162', 100.0, 5, 0], ['103.153.190.238', 40.0, 2, 3], ['209.141.36.112', 100.0, 1, 0],
['198.235.24.173', 100.0, 1, 0], ['140.213.15.89', 33.33, 1, 2], ['197.210.53.113', 33.33, 1, 2],
['47.9.0.237', 25.0, 1, 3], ['164.100.133.253', 0.0, 0, 2], ['197.210.70.62', 0.0, 0, 1],
['171.245.218.108', 0.0, 0, 1], ['116.50.59.204', 0.0, 0, 1], ['102.88.62.82', 0.0, 0, 1],
['223.196.170.127', 0.0, 0, 2], ['180.247.45.59', 0.0, 0, 1], ['129.205.124.227', 0.0, 0, 7],
['105.113.20.110', 0.0, 0, 2], ['213.55.85.89', 0.0, 0, 3], ['105.178.43.219', 0.0, 0, 7],
['103.134.0.5', 0.0, 0, 1], ['103.28.246.254', 0.0, 0, 3], ['102.89.34.16', 0.0, 0, 4],
['197.211.58.30', 0.0, 0, 5], ['121.101.133.181', 0.0, 0, 2]]",
"anomalous_suspicious_ips": [
"193.118.55.162", "103.153.190.238", "209.141.36.112",
"198.235.24.173", "140.213.15.89", "197.210.53.113",
"47.9.0.237", "164.100.133.253", "197.210.70.62",
"171.245.218.108", "116.50.59.204", "102.88.62.82",
"223.196.170.127", "180.247.45.59", "129.205.124.227",
"105.113.20.110", "213.55.85.89", "105.178.43.219",
"103.134.0.5", "103.28.246.254", "102.89.34.16",
"197.211.58.30", "121.101.133.181"
],
"compromised_users": "{'105.178.43.219': ['[email protected]'], '129.205.124.227': ['[email protected]'], '197.211.58.30': ['[email protected]'], '102.89.34.16': ['[email protected]'], '103.153.190.238': ['[email protected]'], '103.28.246.254': ['[email protected]'], '213.55.85.89': ['[email protected]'], '47.9.0.237': ['[email protected]'], '105.113.20.110': ['[email protected]'], '121.101.133.181': ['[email protected]'], '140.213.15.89': ['[email protected]'], '164.100.133.253': ['[email protected]'], '197.210.53.113': ['[email protected]'], '223.196.170.127': ['[email protected]'], '102.88.62.82': ['[email protected]'], '103.134.0.5': ['[email protected]'], '116.50.59.204': ['[email protected]'], '171.245.218.108': ['[email protected]'], '180.247.45.59': ['[email protected]'], '197.210.70.62': ['[email protected]']}",
"xfe_threat_insight": "Found 23 known malicious IPs, having categories: bots: 22, c2server: 0, mw: 0, scanning: 2",
"xfe_confirmed_malicious_ips": [
"129.205.124.227", "116.50.59.204", "102.89.34.16",
"193.118.55.162", "103.153.190.238", "180.247.45.59",
"164.100.133.253", "197.210.70.62", "171.245.218.108",
"198.235.24.173", "102.88.62.82", "213.55.85.89",
"105.178.43.219", "103.134.0.5", "209.141.36.112",
"103.28.246.254", "197.211.58.30", "47.9.0.237",
"197.210.53.113", "223.196.170.127", "121.101.133.181",
"105.113.20.110", "140.213.15.89"
],
"top5_affected_event_type": "{'risk': 44, 'authentication': 36, 'sso': 31, 'management': 4}",
"most_significant_event_type": [
"risk",
"authentication",
"sso"
],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 115}",
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_tenantname": "{'tenant1.abc.com': 92, 'tenant2.abc.com': 23}",
"most_significant_tenantname": [
"tenant1.abc.com"
],
"top5_affected_data_subtype": "{'oidc': 23, 'user_password': 17, 'mfa': 11, 'saml': 8, 'token-exchange': 7}",
"most_significant_data_subtype": [
"oidc",
"user_password",
"mfa"
],
"top5_affected_data_scope": "{'openid': 20, 'openid email': 2, 'openid profile': 1}",
"most_significant_data_scope": [
"openid"
],
"top5_affected_data_cause": "{
'Token Exchange Successful': 7,
\"CSIAC4610E Unable to retrieve the application's configuration for the Entity ID https://18.135.137.31/samlsp.em7?action=metadata because there is no match found.\": 5,
'Authenticated user \"[email protected]\" successfully.': 2,
'Authenticated user \"[email protected]\" successfully.': 2,
'The system failed to authenticate user \"[email protected]\" because of \"INVALID_CREDS\".': 2
}",
"most_significant_data_cause": [
"Token Exchange Successful",
"CSIAC4610E Unable to retrieve the application's configuration for the Entity ID https://18.135.137.31/samlsp.em7?action=metadata because there is no match found.",
"Authenticated user \"[email protected]\" successfully."
],
"top5_affected_data_sourcetype": "{'clouddirectory': 24, 'oidc': 7, 'saml': 1}",
"most_significant_data_sourcetype": [
"clouddirectory",
"oidc"
],
"top5_affected_servicename": "{'risk': 44, 'oidc_rt': 23, 'profilemgmt': 17, 'factors': 11, 'saml_runtime': 9}",
"most_significant_servicename": [
"risk",
"oidc_rt",
"profilemgmt"
],
"top5_affected_data_providerid": "{'https://18.135.137.31/samlsp.em7?action=metadata': 5, 'https://18.135.144.228/samlsp.em7?action=metadata': 1, 'https://3.123.117.242/samlsp.em7?action=metadata': 1, 'https://tenant1.abc.com/saml/sps/saml20ip/saml20': 1, 'https://sso.everbridge.net/GNMManager': 1}",
"most_significant_data_providerid": [
"https://18.135.137.31/samlsp.em7?action=metadata",
"https://18.135.144.228/samlsp.em7?action=metadata",
"https://3.123.117.242/samlsp.em7?action=metadata"
],
"top5_affected_data_grant_type": "{'authorization_code': 18, 'resource_owner': 7, 'implicit': 5}",
"most_significant_data_grant_type": [
"authorization_code",
"resource_owner"
],
"top5_affected_data_mfamethod": "{'Email OTP': 15}",
"most_significant_data_mfamethod": [
"Email OTP"
],
"top5_affected_data_username": "{'[email protected]': 16, '[email protected]': 12, '[email protected]': 10, '[email protected]': 8, 'UNKNOWN': 7}",
"most_significant_data_username": [
"[email protected]",
"[email protected]",
"[email protected]",
"[email protected]"
],
"top5_affected_geoip_country_name": "{'Nigeria': 46, 'India': 20, 'Indonesia': 20, 'Rwanda': 12, 'Netherlands': 5}",
"most_significant_geoip_country_name": [
"Nigeria",
"India",
"Indonesia"
]
}
Nom de l'alerte : Attaque potentielle de type "credential stuffing" (PCS)
Indique : Attaque par bourrage d'informations d'identification
Détails : Augmentation soudaine des échecs liés aux noms d'utilisateur et aux mots de passe par rapport au comportement normal pour les événements SSO ou Auth au cours des 14 derniers jours. L'alerte contiendra des détails sur les adresses IP rouges trouvées lors de l'attaque.
Enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
-
Identifier l' URL locataire concerné (
top5_affected_tenantname
). -
Identifier la liste des adresses IP suspectes et vérifier si des demandes de connexion ont abouti à partir de ces adresses IP.
xfe_confirmed_malicious_ips
: Liste des IP pouvant faire l'objet d'une action et à partir desquelles des événements de SSO, d'authentification ou de gestion ont été trouvés au cours de la dernière heurexfe_threat_insight
: Catégories associées aux Ips exploitables. E.g.: "Found 3 known malicious IPs, having categories : anonsvcs : 0, bots : 3, c2server: 0, mw : 0, scanning : 0."suspicious_ips
: Liste des adresses IP exploitables trouvées au cours de la dernière heure, avec le pourcentage d'échec, le nombre de réussites et le nombre d'échecs de connexion pour chaque adresse IP.
-
Identifier la gravité de l'alerte :
- Critique : si le nombre d'événements anormaux est de
> max(5*normal_failure_count, 10000)
. - Attention : si le nombre d'événements anormaux est compris entre
[min(3* normal traffic volume, 5000), 10000]
- Critique : si le nombre d'événements anormaux est de
-
top5_affected_data_cause
donne plus d'informations sur les causes des défaillances. -
Identifier les noms d'utilisateur affectés (
top5_affected_data_username
) qui montrent les 5 comptes les plus utilisés pendant l'attaque. -
Identifier si un compte a été accédé avec succès (
compromised_users
) à partir d'adresses IP suspectes -
Identifier l'application concernée (
top5_affected_data_applicationname
) -
normal_traffic_volume
fournit un comptage de base basé sur les 14 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal. -
Dans certains cas, l'augmentation du nombre d'échecs liés aux noms d'utilisateur et aux mots de passe peut être due à l'intégration d'un plus grand nombre d'utilisateurs ou à l'intégration de nouvelles applications. Déterminez s'il s'agit d'une raison possible de l'alerte.
-
Les champs supplémentaires suivants peuvent être analysés pour obtenir un contexte supplémentaire pour l'enquête afin de déboguer les composants affectés pendant l'attaque ou pour des problèmes opérationnels
most_significant_data_client_name
most_significant_data_providerid
most_significant_data_redirecturl
most_significant_data_scope
most_significant_data_subtype
most_significant_geoip_country_name
most_significant_servicename
- Vous pouvez voir le nombre d'événements pour chacune des valeurs correspondant aux attributs ci-dessus dans leur attribut respectif
top5_affected_<FIELD NAME>
. - En général, outre cette alerte, d'autres alertes peuvent être générées au cours de l'attaque, telles que
- Plusieurs tentatives de connexion échouées à partir de l'adresse IP (ou)
- Nombre anormal d'échecs d'événements SSO/Authentication observés par locataire.
- Sur la base du contexte des étapes précédentes, déterminez s'il peut s'agir d'une véritable attaque ou non.
Quelques modèles d'analyse connus :
- Identifier la liste
xfe_confirmed_malicious_ips
. Si une IP est trouvée dans la catégorie, elle peut être directement bloquée ou peut être signalée comme une attaque avec une grande confiance. - Regardez les statistiques des IP dans la liste
suspicious_ips
- Si la plupart des échecs proviennent d'une seule IP et que les autres ont un nombre d'échecs très faible, il est possible que quelqu'un ait exécuté un script ou une application en configurant un nom d'utilisateur ou un mot de passe erroné (identifiez le(s) nom(s) d'utilisateur valide(s) accessible(s) à partir de l'IP). Examinez également la cause de la défaillance et
top5_affected_data_applicationname
pour voir s'il s'agit de l'un des problèmes connus. - Si plusieurs IP présentent un nombre important d'échecs dans la liste des IP suspectes, il est très probable qu'il s'agisse d'une attaque. Identifier les
top5_geoip_country_name
dans l'alerte ainsi que le pays et la répartition des noms d'utilisateur pour les IP suspectes à fort taux d'échec. - Si les échecs concernent une application spécifique, ils peuvent être dus à une mauvaise configuration de l'application. Vérifiez auprès du propriétaire de l'application.
- Si la plupart des échecs proviennent d'une seule IP et que les autres ont un nombre d'échecs très faible, il est possible que quelqu'un ait exécuté un script ou une application en configurant un nom d'utilisateur ou un mot de passe erroné (identifiez le(s) nom(s) d'utilisateur valide(s) accessible(s) à partir de l'IP). Examinez également la cause de la défaillance et
- Pour les événements d'authentification, si la plupart des causes d'échec contiennent des chaînes comme
INVALID_CREDS
, il peut s'agir d'une attaque.
Actions de remédiation possibles :
-
S'il n'est pas certain qu'il s'agisse d'une attaque => Surveiller le trafic pour déterminer si le trafic avec échec du mot de passe du nom d'utilisateur est en augmentation.
-
S'il est confirmé qu'il s'agit d'une attaque, bloquer les adresses IP dans l'attribut
anomalous_suspicious_ips
. Pour plus de détails, reportez-vous à la section sur les IP de blocage. -
Les comptes qui ont été connectés avec succès à partir d'adresses IP suspectes pourraient être compromis. Les noms d'utilisateur potentiellement compromis correspondant à chaque IP suspecte se trouvent dans l'attribut
compromised_users
. Pour les comptes compromis, les clients peuvent décider de réinitialiser le mot de passe ou de désactiver ces comptes. Pour plus d'informations, reportez-vous à la section sur le blocage des comptes ou à la section sur la demande de réinitialisation du mot de passe.
{
"rule_id": "CREDENTIAL_STUFFING_SSO",
"rule_name": "Potential credential stuffing attack (SSO)",
"summary": "Potential credential stuffing attack (SSO): 31348 anomalous events are observed, beyond normal traffic volume, from 2022-11-23 17:00:00 UTC to 2022-11-23 18:00:00 UTC.",
"source": "[('tenantid', '874f131f-79a9-4581-b078-de7681091fbc'), ('tenantname', 'tenant1.abc.com'), ('data.result', 'failure')]",
"component": "Login activity",
"anomalous_event_count": 31348,
"normal_traffic_volume": 1004,
"start_time": 1669222800000,
"end_time": 1669226400000,
"date": "2022-11-23",
"severity": "critical",
"index": "event-sso-*",
"impacted_user_count": 32090,
"impacted_apps_count": 5,
"suspicious_ips": "[['ip', 'fail_percentage', 'failure_count', 'success_count'],
['52.117.163.162', 98.72, 10517, 136], ['169.50.223.22', 98.53, 5502, 82], ['169.50.223.24', 98.42, 5431, 87],
['169.59.129.120', 98.44, 5242, 83], ['169.59.129.116', 98.67, 5185, 70]]",
"anomalous_suspicious_ips": [
"169.50.223.22",
"169.50.223.24",
"169.59.129.116",
"169.59.129.120",
"52.117.163.162"
],
"compromised_users": "{'52.117.163.162': ['[email protected]', '[email protected]', '[email protected]'], '169.50.223.24': ['[email protected]', '[email protected]', '[email protected]'], '169.59.129.120': ['[email protected]', '[email protected]', '[email protected]', '[email protected]'], '169.50.223.22': ['[email protected]', '[email protected]', '[email protected]'], '169.59.129.116': ['[email protected]', '[email protected]']}",
"xfe_threat_insight": "Found 1 known malicious IPs, having categories: anonsvcs: 0, bots: 0, c2server: 0, mw: 1, scanning: 0.",
"xfe_confirmed_malicious_ips": ['52.117.163.162'],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 32352}",
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_tenantname": "{'tenant1.abc.com': 32352}",
"most_significant_tenantname": [
"tenant1.abc.com"
],
"top5_affected_servicename": "{'oidc_rt': 32352}",
"most_significant_servicename": [
"oidc_rt"
],
"top5_affected_data_subtype": "{'oidc': 32352}",
"most_significant_data_subtype": [
"oidc"
],
"top5_affected_data_scope": "{'openid': 32352}",
"most_significant_data_scope": [
"openid"
],
"top5_affected_data_cause": "{'CSIAQ0264E The user name or password is invalid.': 32321, 'CSIAQ0264E El nombre de usuario o la contraseña no es válido.': 12, 'CSIAQ0264E O nome do usuário ou a senha é inválida.': 9, 'CSIAQ0264E 用户名或密码无效。': 4, 'CSIAQ0264E 사용자 이름 또는 비밀번호가 올바르지 않습니다.': 2}",
"most_significant_data_cause": [
"CSIAQ0264E The user name or password is invalid."
],
"top5_affected_data_applicationname": "{'urx_next': 31877, 'ABC_PROD_CLOUD': 347, 'ABC Cloud IAM production - global': 117, 'ABC Cloud IAM staging - global': 7, 'ABC Cloud IAM integrationtest': 4}",
"most_significant_data_applicationname": [
"urx_next"
],
"top5_affected_data_client_name": "{'urx_next': 31877, 'ABC_PROD_CLOUD': 347, 'ABC Cloud IAM production - global': 117, 'ABC Cloud IAM staging - global': 7, 'ABC Cloud IAM integrationtest': 4}",
"most_significant_data_client_name": [
"urx_next"
],
"top5_affected_data_redirecturl": "{'UNKNOWN': 32352}",
"most_significant_data_redirecturl": [
"UNKNOWN"
],
"top5_affected_data_providerid": "{}",
"most_significant_data_providerid": [],
"top5_affected_data_username": "{'[email protected]': 319, '[email protected]': 17, '[email protected]': 9, '[email protected]': 6, '[email protected]': 6}",
"most_significant_data_username": [
"[email protected]"
],
"top5_affected_geoip_country_name": "{'United States': 32334, 'Australia': 17, 'United Kingdom': 1}",
"most_significant_geoip_country_name": [
"United States"
]
}
Nom de l'alerte : Plusieurs tentatives de connexion échouées à partir de l'adresse IP
Indique : Attaque par force brute ou par bourrage d'informations d'identification
Détails : Augmentation soudaine des échecs de connexion à partir d'une adresse IP par rapport au comportement normal pour les événements SSO ou Auth au cours des 7 derniers jours.
Étapes de l'enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
- Identifier l' URL du locataire concerné (
top5_affected_tenantname
) - Identifier la liste des adresses IP suspectes et vérifier si des demandes de connexion ont abouti à partir de ces adresses IP.
xfe_confirmed_malicious_ips
: Liste des adresses IP pouvant faire l'objet d'une action et à partir desquelles des événements de SSO, d'authentification ou de gestion ont été trouvés au cours de la dernière heurexfe_threat_insight
: Catégories associées aux adresses IP pouvant faire l'objet d'une action. E.g.: "Found 3 known malicious IPs, having categories : anonsvcs : 0, bots : 3, c2server: 0, mw : 0, scanning : 0."suspicious_ips
: Liste des adresses IP exploitables trouvées au cours de la dernière heure, avec le pourcentage d'échec, le nombre de réussites et le nombre d'échecs de connexion pour chaque adresse IP.
- Identifier la gravité de l'alerte :
- Critique : si un certain nombre d'événements anormaux sont
> max(5*normal_failure_count, 5000)
- Attention : si le nombre d'événements anormaux est compris entre
[min(3* normal traffic volume, 1000), 5000]
- Critique : si un certain nombre d'événements anormaux sont
top5_affected_data_cause
donne plus d'informations sur les causes des défaillances. Cela peut aider à déterminer si les défaillances sont dues à un problème opérationnel.- Identifier les noms d'utilisateur affectés (
top5_affected_data_username
) qui montrent les 5 comptes les plus utilisés pendant l'attaque. - Identifier si un compte a été accédé avec succès (
compromised_users
) à partir d'adresses IP suspectes. - Identifier l'application concernée (
top5_affected_data_applicationname
). normal_traffic_volume
fournit un comptage de base basé sur les 7 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal.- Dans certains cas, des logins d'échec sont générés en raison de problèmes opérationnels. Déterminer s'il existe des problèmes connus qui pourraient être à l'origine de ces défaillances et donner lieu à une alerte.
- Les champs supplémentaires suivants peuvent être analysés pour obtenir un contexte supplémentaire pour l'enquête afin de déboguer les composants affectés pendant l'attaque ou pour des problèmes opérationnels
most_significant_data_client_name
most_significant_data_providerid
most_significant_data_redirecturl
most_significant_data_scope
most_significant_data_subtype
most_significant_geoip_country_name
most_significant_servicename
- Vous pouvez voir le nombre d'événements pour chacune des valeurs correspondant aux attributs ci-dessus dans leur attribut respectif
top5_affected_<FIELD NAME>
. - Identifier si plusieurs noms d'utilisateur sont utilisés à partir de l'IP. Si plusieurs noms d'utilisateur sont utilisés, identifiez s'il s'agit d'un VPN. Si l'adresse IP n'est pas VPN, il peut s'agir d'une attaque.
- Sur la base du contexte des étapes précédentes, déterminez s'il peut s'agir d'une véritable attaque ou non.
Quelques modèles d'analyse connus :
- Identifier la liste
xfe_confirmed_malicious_ips
, si elle est positive, bloquer l'IP en question. - Vérifiez le nombre d'alertes d'échecs multiples de connexion générées au cours de cette heure, puis identifiez
top5_affected_data_cause
,top5_affected_data_applicationname
, ettop5_affected_data_username
.- Si le trafic provient d'une application spécifique et d'un utilisateur spécifique, il se peut que quelqu'un ait configuré le mauvais nom d'utilisateur/mot de passe et exécuté un script pour quelque chose. Confirmer s'il s'agit d'un trafic légitime ou non.
- Si le trafic provient de plusieurs utilisateurs : Bloquez l'adresse IP (à moins qu'il ne s'agisse d'une adresse IP VPN/proxy). Si l'IP est une IP VPN/proxy, identifiez
top5_affected_data_cause
pour déterminer si cela est dû à des problèmes opérationnels. - Si plusieurs alertes sont trouvées au cours d'une heure : Identifier
top5_affected_tenantname
ettop5_affected_data_username
pour chaque alerte. Si plusieurs IP présentent le plus grand nombre d'échecs pour un même locataire et de la part de plusieurs utilisateurs, il peut s'agir d'une attaque ou d'une défaillance majeure d'une application ou d'un système.
Actions de remédiation possibles :
- S'il n'est pas certain qu'il s'agisse d'une attaque => Surveiller le trafic pour déterminer si les défaillances diminuent ou augmentent.
- S'il est confirmé qu'il s'agit d'une attaque, bloquez les adresses IP suspectes. Pour plus de détails, reportez-vous à la section sur les IP de blocage.
- Les comptes qui ont été connectés avec succès à partir d'adresses IP suspectes pourraient être compromis. Les noms d'utilisateur potentiellement compromis correspondant à l'adresse IP suspecte peuvent être trouvés dans l'attribut
compromised_users
. Pour les comptes compromis, les clients peuvent décider de l'action à entreprendre, c'est-à-dire s'ils veulent réinitialiser les mots de passe ou désactiver ces comptes. Pour plus d'informations, reportez-vous à la section sur le blocage des comptes ou à la section sur la demande de réinitialisation du mot de passe.
{
"rule_id": "MULTIPLE_FAILED_LOGIN_AUTH",
"rule_name": "Multiple failed login from an IP address (Auth)",
"summary": "Multiple failed login from an IP address (Auth): 5597 anomalous events are observed, beyond normal traffic volume, from 2023-01-10 17:00:00 UTC to 2023-01-10 18:00:00 UTC.",
"source": "[('data.origin', '165.155.173.54'), ('data.result', 'failure')]",
"component": "Login activity",
"anomalous_event_count": 5597,
"normal_traffic_volume": 0,
"start_time": 1673370000000,
"end_time": 1673373600000,
"date": "2023-01-10",
"severity": "critical",
"index": "event-authentication-*",
"impacted_user_count": 17,
"suspicious_ips": "[['ip', 'fail_percentage', 'failure_count', 'success_count'], ['165.155.173.54', 98.45, 5597, 88]]",
"anomalous_suspicious_ips": [
"165.155.173.54"
],
"compromised_users": "{'165.155.173.54': ['serafina', 'alessi', 'donyg', 'evanb', 'joelr', 'taqb', 'anthony', 'heaven', 'jenny', 'jessica']}",
"xfe_threat_insight": "Found 0 known malicious IPs.",
"xfe_confirmed_malicious_ips": [],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 5597}",
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_tenantname": "{'tenant1.abc.com': 5593, 'tenant2.abc.com': 4}",
"most_significant_tenantname": [
"idpcloud.nycenet.edu"
],
"top5_affected_data_subtype": "{'user_password': 5596, 'mfa': 1}",
"most_significant_data_subtype": [
"user_password"
],
"top5_affected_data_scope": "{}",
"most_significant_data_scope": [],
"top5_affected_data_cause": "{'The system failed to authenticate user \"aariz\" because of \"INVALID_CREDS\".': 5579,
'The system failed to authenticate user \"anthony\" because of \"INVALID_CREDS\".': 2,
'The system failed to authenticate user \"mtorr\" because of \"INVALID_CREDS\".': 2,
'CSIAH2417E The one-time password that you submitted was invalid. Submit a valid one-time password.': 1,
'The system failed to authenticate user \"aless\" because of \"INVALID_CREDS\".': 1}",
"most_significant_data_cause": [
"The system failed to authenticate user \"aari\" because of \"INVALID_CREDS\"."
],
"top5_affected_data_sourcetype": "{'clouddirectory': 5596}",
"most_significant_data_sourcetype": [
"clouddirectory"
],
"top5_affected_servicename": "{'profilemgmt': 5596, 'authsvc': 1}",
"most_significant_servicename": [
"profilemgmt"
],
"top5_affected_data_providerid": "{}",
"most_significant_data_providerid": [],
"top5_affected_data_grant_type": "{}",
"most_significant_data_grant_type": [],
"top5_affected_data_mfamethod": "{'SMS OTP': 1}",
"most_significant_data_mfamethod": [
"SMS OTP"
],
"top5_affected_data_username": "{'aari': 5579, 'anthony': 2, 'mtor': 2, 'ANor': 1, 'aless': 1}",
"most_significant_data_username": [
"aari"
],
"top5_affected_geoip_country_name": "{'United States': 5597}",
"most_significant_geoip_country_name": [
"United States"
]
}
Nom de l'alerte : Nombre anormal d'échecs d'événements SSO/Authentication observés par locataire.
Indique : Attaque par force brute ou par bourrage de données d'identification ou problèmes opérationnels
Détails : Augmentation soudaine des échecs de connexion pour un locataire par rapport au comportement normal pour les événements SSO ou Auth au cours des 14 derniers jours.
Étapes de l'enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
- Identifier les URL des locataires concernés (
top5_affected_tenantname
). - Identifier la liste des adresses IP suspectes et vérifier si des demandes de connexion ont abouti à partir de ces adresses IP.
xfe_confirmed_malicious_ips
: Liste des adresses IP pouvant faire l'objet d'une action et à partir desquelles des événements de SSO, d'authentification ou de gestion ont été trouvés au cours de la dernière heurexfe_threat_insight
: Catégories associées aux adresses IP pouvant faire l'objet d'une action. E.g.: "Found 3 known malicious IPs, having categories : anonsvcs : 0, bots : 3, c2server: 0, mw : 0, scanning : 0."suspicious_ips
: Liste des adresses IP exploitables trouvées au cours de la dernière heure, avec le pourcentage d'échec, le nombre de réussites et le nombre d'échecs de connexion pour chaque adresse IP.
- Identifier la gravité de l'alerte :
- Critique : si un certain nombre d'événements anormaux sont
> max(5*normal_failure_count, 10000)
- Attention : si le nombre d'événements anormaux est compris entre
[min(3* normal traffic volume, 5000), 10000]
- Critique : si un certain nombre d'événements anormaux sont
top5_affected_data_cause
donne plus d'informations sur les causes des défaillances. Cela permet de déterminer si les défaillances sont dues à des problèmes opérationnels.- Identifier les noms d'utilisateur affectés (
top5_affected_data_username
) qui montrent les 5 comptes les plus fréquemment utilisés pendant l'attaque. - Identifier l'application concernée (
top5_affected_data_applicationname
). normal_traffic_volume
fournit un comptage de base basé sur les 14 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal.- Dans certains cas, des événements de connexion d'échec sont générés en raison de problèmes opérationnels.
- Déterminer s'il existe un problème connu qui pourrait être à l'origine de ces défaillances et donner lieu à une alerte.
- Identifier s'il y a d'autres alertes générées indiquant une attaque telle que plusieurs tentatives de connexion échouées à partir d'une adresse IP (ou) une attaque potentielle de bourrage d'informations d'identification
- Les champs supplémentaires suivants peuvent être analysés pour obtenir un contexte supplémentaire pour l'enquête afin de déboguer les composants affectés pendant l'attaque ou pour des questions opérationnelles
most_significant_data_client_name
most_significant_data_providerid
most_significant_data_redirecturl
most_significant_data_scope
most_significant_data_subtype
most_significant_geoip_country_name
most_significant_servicename
- Vous pouvez voir le nombre d'événements pour chacune des valeurs correspondant aux attributs ci-dessus dans leur attribut respectif
top5_affected_<FIELD NAME>
. - Sur la base du contexte des étapes précédentes, déterminez s'il peut s'agir d'une attaque ou d'un problème opérationnel.
Actions de remédiation possibles :
- S'il n'est pas certain qu'il s'agisse d'une attaque => Surveiller le trafic pour déterminer si les défaillances diminuent ou augmentent.
- S'il est confirmé qu'il s'agit d'une attaque, bloquez les adresses IP mentionnées dans l'attribut
anomalous_suspicious_ips
. Pour plus de détails, reportez-vous à la section sur les IP de blocage. - Les comptes qui ont été connectés avec succès à partir d'adresses IP suspectes pourraient être compromis. Les noms d'utilisateur potentiellement compromis correspondant à l'adresse IP suspecte peuvent être trouvés dans l'attribut
compromised_users
. Pour les comptes compromis, les clients peuvent décider de l'action à entreprendre, c'est-à-dire s'ils veulent réinitialiser les mots de passe ou désactiver ces comptes. Pour plus de détails, reportez-vous à la section sur le blocage des comptes ou à la section sur la demande de réinitialisation du mot de passe.
{
"rule_id": "TENANT_FAILED_SSO_EVENTS",
"rule_name": "Abnormal number of failed SSO events observed per tenant.",
"summary": "Abnormal number of failed SSO events observed per tenant.: 24456 anomalous events are observed, beyond normal traffic volume, from 2022-12-19 10:00:00 UTC to 2022-12-19 11:00:00 UTC.",
"source": "[('tenantid', '874f131f-79a9-4581-b078-de7681091fbc'), ('tenantname', 'tenant1.abc.com'), ('data.result', 'failure')]",
"component": "Login activity",
"anomalous_event_count": 24456,
"normal_traffic_volume": 711,
"start_time": 1671444000000,
"end_time": 1671447600000,
"date": "2022-12-19",
"severity": "critical",
"index": "event-sso-*",
"impacted_user_count": 88,
"impacted_apps_count": 37,
"suspicious_ips": "[['ip', 'fail_percentage', 'failure_count', 'success_count'],
['177.241.73.204', 100.0, 24777, 0], ['129.42.21.2', 100.0, 26, 0], ['129.42.18.2', 100.0, 24, 0],
['129.42.19.2', 100.0, 24, 0], ['89.64.54.76', 100.0, 19, 0], ['52.116.134.146', 100.0, 12, 0],
['122.161.79.4', 100.0, 11, 0]]",
"anomalous_suspicious_ips": [
"122.161.79.4",
"177.241.73.204",
"89.64.54.76"
],
"xfe_threat_insight": "Found 1 known malicious IPs, having categories: anonsvcs: 0, bots: 1, c2server: 0, mw: 0, scanning: 0`",
"xfe_confirmed_malicious_ips": ['122.161.79.4'],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 25167}",
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_tenantname": "{'tenant1.abc.com': 25167}",
"most_significant_tenantname": [
"tenant1.abc.com"
],
"top5_affected_servicename": "{'oidc_rt': 25167}",
"most_significant_servicename": [
"oidc_rt"
],
"top5_affected_data_subtype": "{'oidc': 25167}",
"most_significant_data_subtype": [
"oidc"
],
"top5_affected_data_scope": "{'openid email': 24790, 'openid': 259, 'openid profile': 2, 'openid profile email': 1}",
"most_significant_data_scope": [
"openid email"
],
"top5_affected_data_cause": "{'CSIAQ0178E Login is required. The request cannot be processed without authentication.': 24777,
'CSIAQ0278E User is not authorized to access the application due to policy constraints.': 150,
'CSIAQ0158E The [authorization_grant] of type [authorization_code] does not exist or is invalid.': 70,
'CSIAQ0158E The [authorization_grant] of type [refresh_token] does not exist or is invalid.': 31,
'CSIAQ0158E タイプ [refresh_token] の [authorization_grant] は存在しないか無効です。': 13}",
"most_significant_data_cause": [
"CSIAQ0178E Login is required. The request cannot be processed without authentication."
],
"top5_affected_data_applicationname": "{'Gaz-HAT-Production': 24777, 'abc-refresh-service-prod': 107, 'ABCProductionOIDC': 72, 'ABC Publisher': 63, 'FastPassPRDClient': 30}",
"most_significant_data_applicationname": [
"Gaz-HAT-Production"
],
"top5_affected_data_client_name": "{'ABC-HAT-Production': 24777, 'ABCrefresh-service-prod': 107, 'ABCProductionOIDC': 72, 'abc Publisher': 63, 'abcFastPassPRDClient': 30}",
"most_significant_data_client_name": [
"Gaz-HAT-Production"
],
"top5_affected_data_redirecturl": "{'https://gaz.tuc.stglabs.ibm.com/oidc/callback/': 24777, 'https://w3-authorization-service.us-south-k8s.intranet.ibm.com/sso/callback': 88, 'https://w3.ibm.com/w3publisher/redirect.html': 63, 'UNKNOWN': 50, 'https://fastpass.w3cloud.ibm.com:443/oidcclient/redirect/FastPassPRDClient': 30}",
"most_significant_data_redirecturl": [
"https://gaz.tuc.stglabs.ibm.com/oidc/callback/"
],
"top5_affected_data_providerid": "{}",
"most_significant_data_providerid": [],
"top5_affected_data_username": "{'UNKNOWN': 24978, '[email protected]': 19, '[email protected]': 17, '[email protected]': 11, '[email protected]': 10}",
"most_significant_data_username": [
"UNKNOWN"
],
"top5_affected_geoip_country_name": "{'Mexico': 24777, 'United States': 192, 'India': 84, 'Poland': 26, 'Japan': 22}",
"most_significant_geoip_country_name": [
"Mexico"
]
}
Nom de l'alerte : Authentification fréquente d'un seul utilisateur
Indique : Attaque par force brute ou problèmes opérationnels
Détails : Augmentation soudaine des demandes d'authentification réussies de la part d'un seul utilisateur par rapport au comportement normal pour les événements SSO ou Auth au cours des 7 derniers jours.
Étapes de l'enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
- Identifier l' URL locataire concerné (
top5_affected_tenantname
). - Identifier la gravité de l'alerte :
- Critique : si un certain nombre d'événements anormaux sont
> max(5*normal_failure_count, 10000)
- Attention : si le nombre d'événements anormaux est compris entre
[min(3* normal traffic volume, 5000), 10000]
.
- Critique : si un certain nombre d'événements anormaux sont
- Identifier les noms d'utilisateur concernés (
top5_affected_data_username
) pour évaluer les comptes utilisés à partir d'adresses IP. - Identifier l'application concernée (
top5_affected_data_applicationname
). normal_traffic_volume
fournit un comptage de base basé sur les 7 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal.- Dans certains cas, l'authentification fréquente peut être due à une mauvaise configuration de l'application. Déterminer s'il existe un problème connu qui pourrait être à l'origine de ces défaillances et donner lieu à une alerte.
- Les champs supplémentaires suivants peuvent être analysés pour obtenir un contexte supplémentaire pour l'enquête afin de déboguer les composants affectés pendant l'attaque ou pour des problèmes opérationnels.
most_significant_data_client_name
most_significant_data_providerid
most_significant_data_redirecturl
most_significant_data_scope
most_significant_data_subtype
most_significant_geoip_country_name
most_significant_servicename
- Vous pouvez voir le nombre d'événements pour chacune des valeurs correspondant aux attributs ci-dessus dans leur attribut respectif
top5_affected_<FIELD NAME>
. - Sur la base du contexte des étapes précédentes, déterminez s'il peut s'agir d'un trafic suspect.
Quelques modèles d'analyse connus :
- Identifier si plusieurs alertes arrivent dans le même intervalle pour un même locataire. Si oui, vérifiez s'il y a un problème opérationnel connu pour le locataire, sinon regardez l'attribut
top5_affected_data_applicationname
pour identifier l'application responsable de la génération de l'alerte. - Si l'alerte est générée par la même source (c'est-à-dire la même URL locataire et le même nom d'utilisateur) pendant plusieurs heures, l'utilisateur peut être bloqué pendant une certaine durée (par exemple 24 heures).
- Recherchez la répartition des adresses IP et des noms d'application pour déterminer s'il s'agit d'une attaque distribuée.
Actions de remédiation possibles :
- En cas de doute sur un trafic suspect => surveiller le trafic pour déterminer si les défaillances diminuent ou augmentent.
- Si le trafic est considéré comme suspect, bloquer le compte pour lequel l'alerte a été générée afin de prendre des mesures correctives proactives. Pour plus de détails, reportez-vous à la section relative aux comptes de blocs.
{
"rule_id": "FREQUENT_AUTH_SINGLEUSER_AUTH",
"rule_name": "Frequent authentication from single user (Auth)",
"summary": "Frequent authentication from single user (Auth): 16283 anomalous events are observed, beyond normal traffic volume, from 2022-12-26 10:00:00 UTC to 2022-12-26 11:00:00 UTC.",
"source": "[('tenantid', '874f131f-79a9-4581-b078-de7681091fbc'), ('data.username', 'MSurk'), ('data.result', 'success')]",
"component": "Login activity",
"anomalous_event_count": 16283,
"normal_traffic_volume": 0,
"start_time": 1672048800000,
"end_time": 1672052400000,
"date": "2022-12-26",
"severity": "critical",
"index": "event-authentication-*",
"impacted_user_count": 1,
"anomalous_suspicious_ips": [
"12.153.148.57"
],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 16283}",
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_tenantname": "{'tenant1.abc.com': 16283}",
"most_significant_tenantname": [
"tenant1.abc.com"
],
"top5_affected_data_cause": "{'Authenticated user \"MSurk\" successfully.': 16283}",
"most_significant_data_cause": [
"Authenticated user \"MSurk\" successfully."
],
"top5_affected_data_subtype": "{'user_password': 16283}",
"most_significant_data_subtype": [
"user_password"
],
"top5_affected_data_scope": "{}",
"most_significant_data_scope": [],
"top5_affected_data_sourcetype": "{'clouddirectory': 16283}",
"most_significant_data_sourcetype": [
"clouddirectory"
],
"top5_affected_servicename": "{'profilemgmt': 16283}",
"most_significant_servicename": [
"profilemgmt"
],
"top5_affected_data_origin": "{'12.153.148.57': 16283}",
"most_significant_data_origin": [
"12.153.148.57"
],
"top5_affected_data_providerid": "{}",
"most_significant_data_providerid": [],
"top5_affected_data_grant_type": "{}",
"most_significant_data_grant_type": [],
"top5_affected_data_mfamethod": "{}",
"most_significant_data_mfamethod": [],
"top5_affected_data_username": "{'MSurk': 16283}",
"most_significant_data_username": [
"MSurk"
],
"top5_affected_geoip_country_name": "{'United States': 16283}",
"most_significant_geoip_country_name": [
"United States"
]
}
Nom de l'alerte : Nombre anormal d'enrôlements de dispositifs d'AMF
Indique : Attaque par force brute
Détails : Augmentation soudaine des dispositifs MFA d'un seul utilisateur par rapport à un comportement normal au cours des 7 derniers jours.
Étapes de l'enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
- Identifier l' URL locataire concerné (
top5_affected_tenantname
). - Identifier la gravité de l'alerte :
- Critique : si le nombre d'événements anormaux est de
> 18
. - Attention : si le nombre d'événements anormaux est de
> 10
.
- Critique : si le nombre d'événements anormaux est de
- Identifier la méthode la plus utilisée (
top5_affected_data_mfamethod
) au cours de la dernière heure. normal_traffic_volume
fournit un comptage de base basé sur les 7 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal.- Sur la base du contexte des étapes précédentes, déterminez s'il peut s'agir d'un trafic suspect.
Quelques modèles d'analyse connus :
Cette alerte est générée lors d'événements de gestion. Si une alerte est trouvée, il faut alors vérifier si elle provient d'un utilisateur valide ou non. Si l'utilisateur est valide, identifiez le type d'authentification ( top5_affected_data_mfamethod
) et le nombre de dispositifs en cours d'enrôlement ( anomalous_event_count
). Prendre des mesures en cas de soupçon.
Actions de remédiation possibles :
- En cas de doute sur un trafic suspect => surveiller le trafic pour déterminer si les défaillances diminuent ou augmentent.
- Si le trafic est considéré comme suspect, bloquer le compte pour lequel l'alerte a été générée afin de prendre des mesures correctives proactives. Pour plus de détails, reportez-vous à la section relative aux comptes de blocs.
{
"rule_name": "Abnormal number of device enrollments",
"rule_id": "ABNORMAL_DEVICE_ENROLLMENT",
"summary": "Abnormal number of device enrollments: 20 anomalous events are observed, beyond normal traffic volume, from 2023-01-12 17:00:00 UTC to 2023-01-12 18:00:00 UTC.",
"severity": "critical",
"date": "2023-01-12",
"start_time": "2023-01-12 17:00:00",
"end_time": "2023-01-12 18:00:00",
"component": "Login activity",
"normal_traffic_volume": 0,
"anomalous_event_count": 20,
"impacted_user_count": 1,
"index": "event-management-*",
"most_significant_data_origin": [
"129.41.58.3"
],
"top5_affected_data_username": "{'Henry': 20}",
"source": "[('data.mfamethod', 'Voice OTP'), ('data.username', 'Henry')]",
"top5_affected_servicename": "{'factors': 20}",
"most_significant_data_mfamethod": [
"Voice OTP"
],
"most_significant_geoip_country_name": [
"United States"
],
"most_significant_data_grant_type": [],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 20}",
"top5_affected_tenantname": "{'tenant1.abc.com': 20}",
"most_significant_servicename": [
"factors"
],
"most_significant_tenantname": [
"tenant1.abc.com"
],
"top5_affected_data_origin": "{'129.41.58.3': 20}",
"anomalous_suspicious_ips": [
"129.41.58.3"
],
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_geoip_country_name": "{'United States': 20}",
"top5_affected_data_grant_type": "{}",
"top5_affected_data_mfamethod": "{'Voice OTP': 20}",
"most_significant_data_username": [
"Henry"
]
}
Nom de l'alerte : Utilisation multiple d'informations d'identification compromises
Indique : Prise de contrôle de compte, force brute, bourrage d'informations d'identification
Détails : Augmentation soudaine de l'utilisation d'informations d'identification compromises pour les demandes d'authentification d'une adresse IP par rapport à son comportement normal pour les événements d'authentification au cours des 7 derniers jours. Un grand nombre d'informations d'identification compromises sont stockées dans le site GLOBAL Dictionary
de Verify, que les clients peuvent configurer dans leur locataire pour une protection supplémentaire contre la réutilisation d'informations d'identification compromises.
Étapes de l'enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
- Identifier l' URL locataire concerné (
top5_affected_tenantname
). - Identifier la gravité de l'alerte :
- Critique : si un certain nombre d'événements anormaux sont
> 50
- Attention : si le nombre d'événements anormaux est compris entre
[8, 50]
.
- Critique : si un certain nombre d'événements anormaux sont
- Identifier l'adresse IP qui tente d'utiliser les informations d'identification compromises dans l'attribut
source
. - Identifier les noms d'utilisateur concernés (
top5_affected_data_username
) pour évaluer les comptes utilisés à partir d'adresses IP. normal_traffic_volume
fournit un comptage de base basé sur les 7 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal.- Les champs supplémentaires suivants peuvent être analysés pour obtenir un contexte supplémentaire pour l'enquête afin de déboguer les composants affectés pendant l'attaque ou pour des problèmes opérationnels.
most_significant_data_sourcetype
most_significant_data_providerid
most_significant_data_scope
most_significant_data_subtype
most_significant_geoip_country_name
most_significant_servicename
- Vous pouvez voir le nombre d'événements pour chacune des valeurs correspondant aux attributs ci-dessus dans leur attribut respectif
top5_affected_<FIELD NAME>
. - Sur la base du contexte des étapes précédentes, déterminez s'il peut s'agir d'un trafic suspect.
Quelques modèles d'analyse connus :
- Identifiez si l'IP tente d'accéder à plusieurs utilisateurs en utilisant les informations d'identification compromises de l'attribut
top5_affected_data_username
. Si oui, l'adresse IP peut être bloquée pendant un certain temps. - Si plusieurs alertes ont été détectées à partir de plusieurs IP en une heure ou si la même IP a été détectée par la règle
Multiple_failed_login
ou la règlecredential_stuffing
, il se peut qu'une attaque par force brute ou une attaque par bourrage d'informations d'identification soit en cours.
Actions de remédiation possibles :
- En cas de doute sur un trafic suspect => surveiller le trafic pour déterminer si l'utilisation de mots de passe compromis diminue ou augmente.
- Si certains comptes d'utilisateurs ont été consultés avec succès pendant la durée de l'attaque à partir de la même adresse IP, déconnectez l'utilisateur de toutes les sessions actives et demandez-lui de changer de mot de passe ou bloquez-le temporairement à titre de mesure corrective proactive. Pour plus de détails, reportez-vous à la section relative aux comptes de blocs.
- Si plusieurs utilisateurs sont accédés à partir de l'IP avec des informations d'identification compromises, bloquez l'IP dans l'attribut
source
. Pour plus de détails, reportez-vous à la section sur les IP de blocage.
{
"rule_id": "COMPROMISED_CREDENTIALS",
"rule_name": "Multiple use of compromised credentials",
"summary": "Multiple use of compromised credentials: 100 anomalous events are observed, beyond normal traffic volume, from 2023-02-08 21:00:00 UTC to 2023-02-08 22:00:00 UTC.",
"source": "[('data.origin', '129.41.58.3'), ('data.dict_type', 'GLOBAL')]",
"component": "Login activity",
"severity": "critical",
"impacted_user_count": 1,
"anomalous_event_count": 100,
"normal_traffic_volume": 0,
"date": "2023-02-08",
"top5_affected_data_scope": "{}",
"rule_attribute": "compromised_credentials",
"top5_affected_data_username": "{'Henry': 100}",
"start_time": "2023-02-08 21:00:00",
"end_time": "2023-02-08 22:00:00",
"index": "event-authentication-*",
"top5_affected_servicename": "{'profilemgmt': 100}",
"most_significant_data_mfamethod": [],
"most_significant_geoip_country_name": [
"United States"
],
"most_significant_data_grant_type": [],
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 100}",
"top5_affected_tenantname": "{'tenant1.abc.com': 100}",
"top5_affected_data_providerid": "{}",
"most_significant_servicename": [
"profilemgmt"
],
"most_significant_tenantname": [
"tenant1.abc.com"
],
"most_significant_data_sourcetype": [
"clouddirectory"
],
"most_significant_data_scope": [],
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_data_subtype": "{'user_password': 100}",
"most_significant_data_subtype": [
"user_password"
],
"most_significant_data_providerid": [],
"top5_affected_geoip_country_name": "{'United States': 100}",
"top5_affected_data_grant_type": "{}",
"top5_affected_data_mfamethod": "{}",
"top5_affected_data_sourcetype": "{'clouddirectory': 100}",
"most_significant_data_username": [
"Henry"
]
}
Nom de l'alerte : Regroupement par cause de défaillance
Indique : Problèmes opérationnels
Détails : Augmentation soudaine des événements de défaillance ayant une cause spécifique par rapport au comportement normal au cours des 7 derniers jours. Les causes ne sont pas liées à une défaillance du nom d'utilisateur ou du mot de passe.
Étapes de l'enquête : Analyser le trafic pour comprendre s'il peut s'agir d'une attaque réelle ou non et si des mesures correctives sont nécessaires.
- Identifier l' URL locataire concerné (
top5_affected_tenantname
). - Identifier la gravité de l'alerte :
- Critique : si le nombre d'événements anormaux est de
> max(5*normal_failure_count, 10000)
. - Attention : si le nombre d'événements anormaux est de
> [min(3* normal traffic volume, 5000), 10000]
.
- Critique : si le nombre d'événements anormaux est de
- Identifier les noms d'utilisateur concernés (
top5_affected_data_username
). - Identifier l'application concernée (
top5_affected_data_applicationname
). normal_traffic_volume
fournit un comptage de base basé sur les 7 derniers jours d'événements comparés aux événements de la dernière heure.anomalous_event_count
est la différence entre le total des événements de la dernière heure et le volume_de_trafic_normal.- Les champs supplémentaires suivants peuvent être analysés afin d'obtenir un contexte supplémentaire pour l'enquête. Les attributs suivants peuvent aider à déboguer les composants affectés lors des problèmes opérationnels
most_significant_data_client_name
most_significant_data_providerid
most_significant_data_redirecturl
most_significant_data_scope
most_significant_data_subtype
most_significant_geoip_country_name
most_significant_servicename
- Vous pouvez voir le nombre d'événements pour chacune des valeurs correspondant aux attributs ci-dessus dans leur attribut respectif
top5_affected_<FIELD NAME>
. - Cette alerte concerne principalement des questions opérationnelles. Identifiez l'application concernée et le type de problème à partir de
top5_affected_data_applicationname
et des attributs desummary
.
Actions de remédiation possibles :
En fonction du problème opérationnel, il peut être nécessaire de modifier la configuration de la console d'administration de Verify ou d'obtenir l'aide de l'équipe d'assistance de Verify.
{
"rule_id": "CAUSE_OF_SSO_FAILURE",
"rule_name": "Grouping by the cause of failure (SSO)",
"summary": "Grouping by the cause of failure (SSO): 11314 anomalous events are observed, beyond normal traffic volume, from 2023-01-18 15:00:00 UTC to 2023-01-18 16:00:00 UTC.",
"source": "[('data.cause', 'CSIAC5061E An unexpected error has occurred with a protocol module com.tivoli.am.fim.fedmgr2.protocol.GenericPocAuthenticationDelegateProtocol.'), ('data.result', 'failure')]",
"component": "Login activity",
"anomalous_event_count": 11314,
"normal_traffic_volume": 1595,
"start_time": 1674054000000,
"end_time": 1674057600000,
"date": "2023-01-18",
"severity": "critical",
"index": "event-sso-*",
"impacted_user_count": 7774,
"impacted_apps_count": 20,
"top5_affected_tenantid": "{'874f131f-79a9-4581-b078-de7681091fbc': 12909}",
"most_significant_tenantid": [
"874f131f-79a9-4581-b078-de7681091fbc"
],
"top5_affected_tenantname": "{'tenant1.abc.com': 11057, 'tenant2.abc.com': 1852}",
"most_significant_tenantname": [
"tenant1.abc.com"
],
"top5_affected_servicename": "{'saml_runtime': 12909}",
"most_significant_servicename": [
"saml_runtime"
],
"top5_affected_data_subtype": "{'saml': 12420, 'WS-Fed': 489}",
"most_significant_data_subtype": [
"saml"
],
"top5_affected_data_scope": "{}",
"most_significant_data_scope": [],
"top5_affected_data_cause": "{'CSIAC5061E An unexpected error has occurred with a protocol module com.tivoli.am.fim.fedmgr2.protocol.GenericPocAuthenticationDelegateProtocol.': 12909}",
"most_significant_data_cause": [
"CSIAC5061E An unexpected error has occurred with a protocol module com.tivoli.am.fim.fedmgr2.protocol.GenericPocAuthenticationDelegateProtocol."
],
"top5_affected_data_applicationname": "{'ABC-365': 320, 'Google.com': 67}",
"most_significant_data_applicationname": [
"ABC-365"
],
"top5_affected_data_client_name": "{}",
"most_significant_data_client_name": [],
"top5_affected_data_redirecturl": "{}",
"most_significant_data_redirecturl": [],
"top5_affected_data_providerid": "{'UNKNOWN': 12472, 'urn:federation:MicrosoftOnline': 323}",
"most_significant_data_providerid": [
"UNKNOWN"
],
"top5_affected_data_username": "{'UNKNOWN': 86, '[email protected]': 60, '[email protected]': 31, 'julia': 20, 'Bryan': 11}",
"most_significant_data_username": [
"UNKNOWN",
"[email protected]",
"[email protected]"
],
"top5_affected_geoip_country_name": "{'United States': 12295, 'India': 178, 'Canada': 84, 'United Kingdom': 72, 'Mexico': 36}",
"most_significant_geoip_country_name": [
"United States"
]
}
Corrélation entre plusieurs alertes :
Cette section fournit des conseils sur l'investigation et les mesures correctives proactives lorsque plusieurs alertes sont générées.
Corrélation des alertes | Indicateur de | Action corrective en cours de vérification | Examen |
---|---|---|---|
Bourrage potentiel de données d'identification + Échecs multiples de connexion | Remplissage de documents d'identité | Bloquer les IP dans Verify | Suivre l'enquête sur une attaque potentielle de type "credential stuffing" (bourrage d'informations d'identification) |
Nombre anormal d'échecs + Plusieurs échecs de connexion | Problème opérationnel causé par certaines machines sélectionnées | Informer le client des IP et des utilisateurs liés à ces IP. | Examinez la cause de la défaillance et la répartition des utilisateurs par IP. |
(bourrage potentiel d'informations d'identification/échecs multiples de connexion) + inscriptions anormales de dispositifs | Prise de contrôle de compte | Bloquer le(s) utilisateur(s) compromis | |
(bourrage potentiel d'informations d'identification + échecs multiples de connexion / nombre anormal d'échecs) + informations d'identification compromises | Pulvérisation du mot de passe | Bloquer les Ips et inviter les utilisateurs compromis à changer de mot de passe |
Étapes de remédiation
Bloquer des utilisateurs ou des comptes
Vous pouvez bloquer des utilisateurs par l'intermédiaire de l'interface utilisateur ou d'une API. Voir Mise à jour des détails de l'utilisateur pour désactiver un utilisateur via l'interface utilisateur, et Modifier l'API de l'utilisateur pour mettre à jour le statut "actif" d'un utilisateur spécifique comme "faux" en utilisant l'API.
Bloquer des adresses IP
Ajouter une condition d'IP aux politiques d'accès lorsque cela est possible. Vous pouvez également ouvrir un ticket auprès du support IBM en indiquant les adresses IP à bloquer.
Réinitialiser le mot de passe
Pour réinitialiser le mot de passe d'un utilisateur de cloud directory, utilisez l'API de réinitialisation du mot de passe. Si l'utilisateur est un utilisateur fédéré, réinitialiser le mot de passe à la source (par exemple Active Directory ).
priti Patil, Nagesh Bhagwat & M Krishnakant Achary, IBM Security
Updated 29 days ago