Abnormal Security-Logs erfassen
Parserversion:6.0
In diesem Dokument wird beschrieben, wie Sie Abnormal Security-Logs in Google Security Operations aufnehmen. Der Parser verarbeitet E-Mail-Logs sowohl im JSON- als auch im Syslog-Format. Zuerst wird versucht, die Eingabe als JSON zu verarbeiten. Wenn das nicht gelingt, werden Grok-Muster verwendet, um Daten aus dem Syslog-Format zu extrahieren. Die extrahierten Felder werden dann dem Unified Data Model (UDM) zugeordnet, um die Daten mit relevantem Sicherheitskontext anzureichern und das Format für weitere Analysen zu standardisieren.
Hinweis
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz.
- Privilegierter Zugriff auf Abnormal Security.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Profile auf.
- Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.
Authentifizierungsdatei für die Google SecOps-Aufnahme abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
- Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.
Abnormal Security so konfigurieren, dass Logs an Google SecOps gesendet werden
- Melden Sie sich in der Abnormal Security-Web-UI an.
- Klicken Sie auf Einstellungen > Integrationen.
- Suchen Sie das Symbol für Google Chronicle und klicken Sie auf Verbinden.
- Geben Sie Ihre Google SecOps-Kundennummer ein.
- Geben Sie die Endpunktadresse Ihrer Google SecOps-Instanz ein.
- Kanada: https://northamerica-northeast2-malachiteingestion-pa.googleapis.com
- Dammam: https://me-central2-malachiteingestion-pa.googleapis.com
- Europa, mehrere Regionen: https://europe-malachiteingestion-pa.googleapis.com
- Frankfurt: https://europe-west3-malachiteingestion-pa.googleapis.com
- London: https://europe-west2-malachiteingestion-pa.googleapis.com
- Mumbai: https://asia-south1-malachiteingestion-pa.googleapis.com
- Singapur: https://asia-southeast1-malachiteingestion-pa.googleapis.com
- Sydney: https://australia-southeast1-malachiteingestion-pa.googleapis.com
- Tel Aviv: https://me-west1-malachiteingestion-pa.googleapis.com
- Tokio: https://asia-northeast1-malachiteingestion-pa.googleapis.com
- USA (mehrere Regionen): https://malachiteingestion-pa.googleapis.com
- Zürich: https://europe-west6-malachiteingestion-pa.googleapis.com
- Laden Sie die zuvor heruntergeladene Authentifizierungsdatei für die Aufnahme als Google-Dienstkonto hoch.
- Klicken Sie auf Speichern > Bestätigen.
Unterstützte Abnormal Security-Logformate
Der Abnormal Security-Parser unterstützt Logs im SYSLOG- und JSON-Format.
Unterstützte Beispiel-Logs für anormale Sicherheit
- JSON
{
"threatId": "3fd4ed1a-9237-7e6f-d434-eacdcc41f47b",
"messages": [
{
"abxMessageId": 3405268390454580698,
"abxPortalUrl": "https://portal.abnormalsecurity.com/home/threat-center/remediation-history/3405268390454580698",
"attachmentCount": 0,
"attachmentNames": [],
"attackStrategy": "Unknown Sender",
"attackType": "Spam",
"attackVector": "Link",
"attackedParty": "VIP",
"autoRemediated": true,
"fromAddress": "masked.from@example.com",
"fromName": "Masked User Name",
"impersonatedParty": "None / Others",
"internetMessageId": "<20eb9e7c1c3046fda97f6564c81ced64@530566577>",
"isRead": false,
"postRemediated": false,
"receivedTime": "2023-08-28T14:09:31Z",
"recipientAddress": "masked.recipient@example.com",
"remediationStatus": "Auto-Remediated",
"remediationTimestamp": "2023-08-28T14:09:35.618Z",
"sentTime": "2023-08-28T14:08:44Z",
"subject": "Banking Insights | A deep dive into the global M&A landscape",
"threatId": "3fd4ed1a-9237-7e6f-d434-eacdcc41f47b",
"toAddresses": [
"masked.to@example.com"
],
"ccEmails": [],
"replyToEmails": [
"masked.reply@example.com"
],
"returnPath": "masked.returnPath@example.com",
"senderDomain": "masked.sender.domain",
"senderIpAddress": null,
"summaryInsights": [
"Suspicious Link",
"Unusual Sender",
"Abnormal Email Body HTML",
"Invisible characters found in Email",
"Unusual Sender Domain",
"Suspicious Financial Request",
"Unusual Reply To"
],
"urlCount": 19,
"urls": [
"https://masked.comm.link/e/es?s=530566577&e=2595782&elqTrackId=MASKEDID&elq=MASKEDID&elqaid=119820&elqat=1",
"https://www.masked.group/en/simplifying-the-brand?utm_source=Eloqua&utm_medium=email&utm_campaign=MASKED_CAMPAIGN&elqCampaignId=20995&elq=MASKEDID",
"https://masked.group.link/e/er?utm_source=Eloqua&utm_medium=email&utm_campaign=MASKED_CAMPAIGN&elqCampaignId=20995&s=530566577&lid=192730&elqTrackId=MASKEDID&elq=MASKEDID&elqaid=119820&elqat=1"
// ... (16 additional masked URLs omitted for brevity)
]
}
]
}
- SYSLOG + JSON
<14> {
"threatId": "83da593b-3778-9d2f-da8c-e305dc1425e1",
"messages": [
{
"abxMessageId": 8274341447487143770,
"abxPortalUrl": "https://portal.abnormalsecurity.com/home/threat-center/remediation-history/8274341447487143770",
"attackType": "Spam",
"fromAddress": "masked.from.1@example.com",
"fromName": "Masked User Name",
"internetMessageId": "<PUZPR06MB45764FCED76739D0BC8A1B69E3DFA@masked.server.prod.outlook.com>",
"recipientAddress": "masked.recipient.1@example.com",
"remediationStatus": "Auto-Remediated",
"subject": "Freightview, FreightPOP Users List",
"toAddresses": [
"masked.to.1@example.com"
],
"returnPath": "masked.returnPath.1@example.com",
"senderDomain": "outlook.com",
"senderIpAddress": null,
"urlCount": 0,
"urls": []
},
{
"abxMessageId": -4495524442058864563,
"abxPortalUrl": "https://portal.abnormalsecurity.com/home/threat-center/remediation-history/-4495524442058864563",
"attackType": "Spam",
"fromAddress": "masked.user.2@outlook.com",
"fromName": "Masked User Name",
"internetMessageId": "<PUZPR06MB4576BF221988D780C8412731E3DFA@masked.server.prod.outlook.com>",
"recipientAddress": "masked.recipient.2@example.com",
"remediationStatus": "Auto-Remediated",
"subject": "Freightview, FreightPOP Users List",
"toAddresses": [
"masked.to.2@example.com"
],
"returnPath": "masked.user.2@outlook.com",
"senderDomain": "outlook.com",
"senderIpAddress": null,
"urlCount": 0,
"urls": []
}
]
}
- JSON-Schema (threat_log)
{
"event": {
"abx_message_id": -3325933065721657641,
"abx_portal_url": "https://portal.abnormalsecurity.com/home/threat-center/remediation-history/-3325933065721657641",
"threat_id": "1c3736ab-9e3a-883f-62b5-6fe36ac9672c",
"subject": "[EXTERNAL] RE: Masked Name PUP094439581",
"from_address": "masked.sender@maskeddomain.xyz",
"from_name": "masked.sender@maskeddomain.xyz",
"to_addresses": "masked.recipient@maskedcorp.com",
"recipient_address": "masked.recipient@maskedcorp.com",
"internet_message_id": "<MASKEDID@masked-insurance-group.com>",
"attack_type": "Phishing: Credential",
"return_path": "masked.sender@maskeddomain.xyz",
"sender_ip_address": "",
"urls": [
"www.masked-insurance-group.com",
"http://www.masked-insurance-group.com/"
],
"sender_domain": "masked-insurance-group.com",
"tenant": "Auto Club Group"
},
"sourcetype": "threat_log"
}
- JSON-Schema (abuse_mailbox)
{
"event": {
"abx_metadata": {
"event_type": "ABUSE_MAILBOX",
"timestamp": "2024-04-27T15:25:53.374227319Z",
"trace_id": "00bc67b5-eb26-41c2-9f95-021eb435fc49"
},
"abx_body": {
"campaign_id": "28b9c99f-f4a4-3032-bd99-3b7bac532471",
"subject": "[EXTERNAL] News you might have missed",
"recipient_name": "Masked PII Name",
"recipient_address": "masked.abuse.recipient@secops.com",
"internet_message_id": "<AutoNewsDigest-MASKED@odspnotify>",
"email_label_or_location": "inbox"
}
},
"sourcetype": "abuse_mailbox"
}
- JSON-Schema (audit_log)
{
"event": {
"abx_metadata": {
"event_type": "AUDIT_LOG",
"timestamp": "2024-04-01T17:50:55.194231924Z",
"trace_id": "6f95188c-cba2-4e86-a3ae-3eaf22c869e4"
},
"abx_body": {
"category": "login",
"details": {
"request_url": "/api-token-auth/"
},
"source_ip": "0.0.0.0",
"status": "SUCCESS",
"tenant_name": "masked_secops_tenant",
"timestamp": "2024-04-01T17:50:54.632Z",
"user": {
"email": "masked.audit.user@secops.net"
}
}
},
"sourcetype": "audit_log"
}
- JSON-Schema (Fall)
{
"event": {
"abx_metadata": {
"event_type": "CASE",
"timestamp": "2024-08-08T12:42:45.104485389Z",
"trace_id": "e4ad638f-439a-4c5f-839d-b650ecab9156"
},
"abx_body": {
"schema_version": "1.0.0",
"case_id": 11188520,
"tenant": "masked name",
"entity": {
"entity_type": "USER_ACCOUNT",
"identifier": "masked.case.user@secops.com"
},
"description": "Account Compromised",
"event_timeline": [
{
"timestamp": "2024-09-07T20:17:25+00:00",
"event_type": "SIGN_IN",
"platform": "AZURE_AD",
"insights": [
{
"signal": "Risky Browser",
"description": "The browser associated with this sign-in, None, is considered risky and has been blocklisted by Abnormal or your organization."
}
],
"ip_address": "0.0.0.0 ",
"operating_system": "ios 17.6",
"isp": "verizon wireless",
"location": {
"city": "Huntley",
"state": "Illinois",
"country": "United States"
}
},
{
"timestamp": "2024-09-07T20:17:25+00:00",
"event_type": "SIGN_IN",
"platform": "AZURE_AD",
"ip_address": "0.0.0.0 ",
"operating_system": "ios 15.6"
}
],
"event_type": "CASE"
}
},
"sourcetype": "case"
}
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
| attachmentCount | additional.fields.attachmentCount.value.number_value | Direkt zugeordnet |
| attachmentNames | additional.fields.attachmentNames.value | Als kommagetrennter String verkettet |
| attackStrategy | security_result.detection_fields.attackStrategy.value | Direkt zugeordnet |
| attackType | security_result.threat_name | Direkt zugeordnet |
| attackVector | security_result.detection_fields.attackVector.value | Direkt zugeordnet |
| attackedParty | security_result.detection_fields.attackedParty.value | Direkt zugeordnet |
| autoRemediated | Nicht dem IDM-Objekt zugeordnet | |
| ccEmails | network.email.cc | Jede E‑Mail-Adresse wird extrahiert und dem Array hinzugefügt. |
| fromAddress | network.email.from | E‑Mail-Adresse wird extrahiert und direkt zugeordnet |
| fromName | principal.user.user_display_name | Direkt zugeordnet |
| impersonatedParty | security_result.detection_fields.impersonatedParty.value | Direkt zugeordnet |
| internetMessageId | additional.fields.internetMessageId.value.string_value | Direkt zugeordnet |
| isRead | additional.fields.isRead.value.bool_value | Direkt zugeordnet |
| postRemediated | additional.fields.postRemediated.value.bool_value | Direkt zugeordnet |
| receivedTime | additional.fields.mailReceivedTime.value.string_value | Direkt zugeordnet |
| remediationStatus | additional.fields.remediationStatus.value.string_value | Direkt zugeordnet |
| remediationTimestamp | additional.fields.mailRemediationTimestamp.value.string_value | Direkt zugeordnet |
| replyToEmails | network.email.reply_to | Die erste E-Mail-Adresse wird extrahiert und direkt zugeordnet. |
| returnPath | additional.fields.returnPath.value.string_value | Direkt zugeordnet |
| senderDomain | principal.administrative_domain | Direkt zugeordnet |
| senderIpAddress | principal.ip, principal.asset.ip | Die IP-Adresse wird extrahiert und beiden Feldern zugeordnet. |
| sentTime | additional.fields.mailSentTime.value.string_value | Direkt zugeordnet |
| subject | network.email.subject | Direkt zugeordnet |
| summaryInsights | security_result.summary | Als kommagetrennter String verkettet |
| threatId | security_result.threat_id | Direkt zugeordnet |
| toAddresses | network.email.to | Jede E‑Mail-Adresse wird extrahiert und dem Array hinzugefügt. |
| urlCount | additional.fields.urlCount.value.number_value | Direkt zugeordnet |
| URLs | additional.fields.detectedUrls.value | Als kommagetrennter String verkettet |
| additional.fields.campaign_id.value.string_value | Wird aus event_data.abx_body.campaign_id zugeordnet, falls vorhanden | |
| additional.fields.trace_id.value.string_value | Wird aus event_data.abx_metadata.trace_id zugeordnet, sofern vorhanden | |
| additional.fields.messageReportedTime.value.string_value | Wird aus „event_data.abx_body.message_reported_time“ abgeleitet, sofern vorhanden. | |
| metadata.event_type | Auf EMAIL_TRANSACTION gesetzt, wenn das Nachrichtenarray vorhanden ist. Andernfalls wird der Wert anhand anderer Felder ermittelt und kann USER_LOGIN, STATUS_UPDATE oder GENERIC_EVENT sein. |
|
| metadata.product_name | Immer auf ABNORMAL_SECURITY festgelegt |
|
| metadata.vendor_name | Immer auf ABNORMAL_SECURITY festgelegt |
|
| metadata.product_event_type | Wird aus „event_data.abx_metadata.event_type“ zugeordnet, falls vorhanden | |
| extensions.auth.type | Wird auf AUTHTYPE_UNSPECIFIED gesetzt, wenn „event_type“ USER_LOGIN ist. |
|
| security_result.category | Auf MAIL_SPAM und MAIL_PHISHING festgelegt, wenn das Nachrichten-Array vorhanden ist. Andernfalls wird es basierend auf anderen Feldern auf MAIL_PHISHING und/oder MAIL_SPAM festgelegt. |
|
| security_result.category_details | Wird auf ABUSE_MAILBOX gesetzt, wenn abx_metadata.event_type ABUSE_MAILBOX ist. Andernfalls wird es auf login gesetzt, wenn abx_body.category login ist. |
|
| security_result.detection_fields.reported.value | Wird aus „event_data.abx_body.reported“ zugeordnet, falls vorhanden | |
| security_result.detection_fields.judgement.value | Wird aus „event_data.abx_body.judgement“ zugeordnet, falls vorhanden. | |
| target.url | Wird aus „event_data.abx_body.details.request_url“ zugeordnet, falls vorhanden. | |
| target.user.userid | Wird aus event_data.abx_body.user.email zugeordnet, sofern vorhanden | |
| target.user.email_addresses | Wird aus event_data.abx_body.user.email zugeordnet, sofern vorhanden | |
event.abx_body.abnormal_message_id |
event.idm.read_only_udm.metadata.product_log_id |
Aus dem Änderungsprotokoll zugeordnet |
event.abx_body.email_label_or_location |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
event.abx_body.not_analyzed |
event.idm.read_only_udm.security_result.detection_fields |
Aus dem Änderungsprotokoll zugeordnet |
event_data.message_sources", "event_data.sender_auth_results.spf", "event_data.sender_auth_results.dkim", "event_data.sender_auth_results.dmarc", "event_data.tenant", and "event_data.attack_score |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
event_data.abx_body.severity |
security_result.severity |
Aus dem Änderungsprotokoll zugeordnet |
event_data.abx_body.trigger_event" and "event_data.abx_body.entity.entity_type |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
event_data.abx_body.entity.identifier |
principal.user.email_addresses |
Aus dem Änderungsprotokoll zugeordnet |
event_data.abx_body.case_id |
metadata.product_log_id |
Aus dem Änderungsprotokoll zugeordnet |
sourcetype", "event.folder_locations |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
event.abx_message_id |
metadata.product_log_id |
Aus dem Änderungsprotokoll zugeordnet |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten