Initial SOC memory POC implementation
This commit is contained in:
65
evaluation/datasets/normalized_cases/CASE-2026-0001.json
Normal file
65
evaluation/datasets/normalized_cases/CASE-2026-0001.json
Normal file
@ -0,0 +1,65 @@
|
||||
{
|
||||
"id": "CASE-2026-0001",
|
||||
"memory_type": "case",
|
||||
"scenario": "phishing",
|
||||
"title": "Finance user received invoice-themed phishing email",
|
||||
"abstract": "Finance user received an invoice-themed phishing email containing a malicious HTML attachment that redirected to a credential harvesting page.",
|
||||
"verdict": "true_positive",
|
||||
"severity": "high",
|
||||
"entities": {
|
||||
"users": [
|
||||
"alice@corp.example"
|
||||
],
|
||||
"hosts": [
|
||||
"FIN-LAPTOP-12"
|
||||
],
|
||||
"mailboxes": [
|
||||
"alice@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"sender_emails": [
|
||||
"billing@vendor-payments.com"
|
||||
],
|
||||
"domains": [
|
||||
"vendor-payments.com",
|
||||
"vendor-payments-login.com"
|
||||
],
|
||||
"urls": [
|
||||
"https://vendor-payments-login.com/review"
|
||||
],
|
||||
"ips": [
|
||||
"198.51.100.20"
|
||||
],
|
||||
"hashes": [
|
||||
"sha256:phish0001"
|
||||
]
|
||||
},
|
||||
"evidence": [
|
||||
"Sender domain was newly observed and failed DMARC.",
|
||||
"Attachment redirected to a fake Microsoft 365 login page.",
|
||||
"User clicked the link before mail quarantine completed."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:true_positive",
|
||||
"scenario:phishing",
|
||||
"alert_type:mail_suspicious_attachment"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-PHISH-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-PHISH-HEADER-CHECK",
|
||||
"KB-CRED-HARVEST-PATTERNS"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/phishing/CASE-2026-0001.json",
|
||||
"tags": [
|
||||
"phishing",
|
||||
"email",
|
||||
"credential-harvest",
|
||||
"finance"
|
||||
]
|
||||
}
|
||||
59
evaluation/datasets/normalized_cases/CASE-2026-0002.json
Normal file
59
evaluation/datasets/normalized_cases/CASE-2026-0002.json
Normal file
@ -0,0 +1,59 @@
|
||||
{
|
||||
"id": "CASE-2026-0002",
|
||||
"memory_type": "case",
|
||||
"scenario": "phishing",
|
||||
"title": "Payroll notification email flagged but determined benign",
|
||||
"abstract": "Payroll update email was flagged due to a shortened URL, but the destination was the approved HR vendor portal.",
|
||||
"verdict": "false_positive",
|
||||
"severity": "medium",
|
||||
"entities": {
|
||||
"users": [
|
||||
"bob@corp.example"
|
||||
],
|
||||
"hosts": [
|
||||
"HR-LAPTOP-03"
|
||||
],
|
||||
"mailboxes": [
|
||||
"bob@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"sender_emails": [
|
||||
"notify@hr-vendor.example"
|
||||
],
|
||||
"domains": [
|
||||
"hr-vendor.example"
|
||||
],
|
||||
"urls": [
|
||||
"https://bit.ly/hr-portal-example"
|
||||
],
|
||||
"ips": [],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"Sender domain aligned with SPF and DKIM.",
|
||||
"Destination domain matched approved supplier inventory.",
|
||||
"No credential prompt anomaly observed."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:false_positive",
|
||||
"scenario:phishing",
|
||||
"alert_type:mail_suspicious_link"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-PHISH-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-PHISH-HEADER-CHECK"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/phishing/CASE-2026-0002.json",
|
||||
"tags": [
|
||||
"phishing",
|
||||
"email",
|
||||
"false-positive",
|
||||
"vendor"
|
||||
]
|
||||
}
|
||||
58
evaluation/datasets/normalized_cases/CASE-2026-0003.json
Normal file
58
evaluation/datasets/normalized_cases/CASE-2026-0003.json
Normal file
@ -0,0 +1,58 @@
|
||||
{
|
||||
"id": "CASE-2026-0003",
|
||||
"memory_type": "case",
|
||||
"scenario": "phishing",
|
||||
"title": "Executive impersonation email requested urgent wire transfer",
|
||||
"abstract": "An executive impersonation email targeted finance staff with an urgent wire transfer request from a lookalike domain.",
|
||||
"verdict": "true_positive",
|
||||
"severity": "high",
|
||||
"entities": {
|
||||
"users": [
|
||||
"carol@corp.example"
|
||||
],
|
||||
"hosts": [
|
||||
"FIN-LAPTOP-08"
|
||||
],
|
||||
"mailboxes": [
|
||||
"carol@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"sender_emails": [
|
||||
"ceo@c0rp-example.com"
|
||||
],
|
||||
"domains": [
|
||||
"c0rp-example.com"
|
||||
],
|
||||
"urls": [],
|
||||
"ips": [
|
||||
"203.0.113.45"
|
||||
],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"Lookalike domain used numeric substitution.",
|
||||
"Language pressure matched prior BEC pattern.",
|
||||
"No historical communication from sender domain."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:true_positive",
|
||||
"scenario:phishing",
|
||||
"alert_type:mail_bec_impersonation"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-PHISH-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-CRED-HARVEST-PATTERNS"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/phishing/CASE-2026-0003.json",
|
||||
"tags": [
|
||||
"phishing",
|
||||
"bec",
|
||||
"executive-impersonation"
|
||||
]
|
||||
}
|
||||
62
evaluation/datasets/normalized_cases/CASE-2026-0004.json
Normal file
62
evaluation/datasets/normalized_cases/CASE-2026-0004.json
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"id": "CASE-2026-0004",
|
||||
"memory_type": "case",
|
||||
"scenario": "phishing",
|
||||
"title": "Shared mailbox received OneDrive lure with HTML attachment",
|
||||
"abstract": "Shared finance mailbox received a fake OneDrive notification with an HTML attachment that led to credential collection.",
|
||||
"verdict": "true_positive",
|
||||
"severity": "medium",
|
||||
"entities": {
|
||||
"users": [
|
||||
"shared-finance@corp.example"
|
||||
],
|
||||
"hosts": [],
|
||||
"mailboxes": [
|
||||
"shared-finance@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"sender_emails": [
|
||||
"noreply@sharepoint-notify.com"
|
||||
],
|
||||
"domains": [
|
||||
"sharepoint-notify.com"
|
||||
],
|
||||
"urls": [
|
||||
"https://onedrive-review-login.example"
|
||||
],
|
||||
"ips": [
|
||||
"198.51.100.87"
|
||||
],
|
||||
"hashes": [
|
||||
"sha256:phish0004"
|
||||
]
|
||||
},
|
||||
"evidence": [
|
||||
"Attachment rendered a fake Microsoft sign-in page.",
|
||||
"Landing page hosted outside Microsoft IP space.",
|
||||
"Mail body reused branding from previous phishing campaign."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:true_positive",
|
||||
"scenario:phishing",
|
||||
"alert_type:mail_suspicious_attachment"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-PHISH-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-CRED-HARVEST-PATTERNS"
|
||||
],
|
||||
"cases": [
|
||||
"CASE-2026-0001"
|
||||
]
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/phishing/CASE-2026-0004.json",
|
||||
"tags": [
|
||||
"phishing",
|
||||
"email",
|
||||
"onedrive-lure"
|
||||
]
|
||||
}
|
||||
56
evaluation/datasets/normalized_cases/CASE-2026-1001.json
Normal file
56
evaluation/datasets/normalized_cases/CASE-2026-1001.json
Normal file
@ -0,0 +1,56 @@
|
||||
{
|
||||
"id": "CASE-2026-1001",
|
||||
"memory_type": "case",
|
||||
"scenario": "o365_suspicious_login",
|
||||
"title": "Impossible travel login followed by MFA prompt fatigue",
|
||||
"abstract": "User account showed impossible travel between Shanghai and Amsterdam, followed by repeated MFA prompts and successful sign-in.",
|
||||
"verdict": "true_positive",
|
||||
"severity": "high",
|
||||
"entities": {
|
||||
"users": [
|
||||
"david@corp.example"
|
||||
],
|
||||
"hosts": [
|
||||
"WS-DAVID-01"
|
||||
],
|
||||
"mailboxes": [
|
||||
"david@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"ips": [
|
||||
"203.0.113.150",
|
||||
"198.51.100.61"
|
||||
],
|
||||
"domains": [],
|
||||
"urls": [],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"Two successful sign-ins from geographically impossible locations within 15 minutes.",
|
||||
"MFA challenge volume increased abnormally before final success.",
|
||||
"User confirmed they did not initiate overseas login."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:true_positive",
|
||||
"scenario:o365_suspicious_login",
|
||||
"alert_type:azuread_impossible_travel"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-O365-LOGIN-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-O365-IMPOSSIBLE-TRAVEL",
|
||||
"KB-O365-MFA-FATIGUE"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/o365_suspicious_login/CASE-2026-1001.json",
|
||||
"tags": [
|
||||
"o365",
|
||||
"login",
|
||||
"impossible-travel",
|
||||
"mfa-fatigue"
|
||||
]
|
||||
}
|
||||
52
evaluation/datasets/normalized_cases/CASE-2026-1002.json
Normal file
52
evaluation/datasets/normalized_cases/CASE-2026-1002.json
Normal file
@ -0,0 +1,52 @@
|
||||
{
|
||||
"id": "CASE-2026-1002",
|
||||
"memory_type": "case",
|
||||
"scenario": "o365_suspicious_login",
|
||||
"title": "Legacy protocol sign-in from unfamiliar IP blocked by policy",
|
||||
"abstract": "Legacy authentication attempt from a cloud IP was blocked; investigation tied it to an approved migration tool test.",
|
||||
"verdict": "false_positive",
|
||||
"severity": "medium",
|
||||
"entities": {
|
||||
"users": [
|
||||
"svc-migration@corp.example"
|
||||
],
|
||||
"hosts": [],
|
||||
"mailboxes": [
|
||||
"svc-migration@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"ips": [
|
||||
"192.0.2.24"
|
||||
],
|
||||
"domains": [],
|
||||
"urls": [],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"The account is a known migration service account.",
|
||||
"Source IP matched approved cloud migration vendor range.",
|
||||
"No successful sign-in occurred due to policy block."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:false_positive",
|
||||
"scenario:o365_suspicious_login",
|
||||
"alert_type:azuread_legacy_auth_attempt"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-O365-LOGIN-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-O365-LEGACY-AUTH"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/o365_suspicious_login/CASE-2026-1002.json",
|
||||
"tags": [
|
||||
"o365",
|
||||
"login",
|
||||
"false-positive",
|
||||
"legacy-auth"
|
||||
]
|
||||
}
|
||||
55
evaluation/datasets/normalized_cases/CASE-2026-1003.json
Normal file
55
evaluation/datasets/normalized_cases/CASE-2026-1003.json
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
"id": "CASE-2026-1003",
|
||||
"memory_type": "case",
|
||||
"scenario": "o365_suspicious_login",
|
||||
"title": "Suspicious inbox rule creation after successful foreign login",
|
||||
"abstract": "An overseas sign-in to Microsoft 365 was followed by inbox rule creation to hide finance-related emails.",
|
||||
"verdict": "true_positive",
|
||||
"severity": "high",
|
||||
"entities": {
|
||||
"users": [
|
||||
"emma@corp.example"
|
||||
],
|
||||
"hosts": [
|
||||
"WS-EMMA-07"
|
||||
],
|
||||
"mailboxes": [
|
||||
"emma@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"ips": [
|
||||
"198.51.100.98"
|
||||
],
|
||||
"domains": [],
|
||||
"urls": [],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"Successful sign-in from untrusted ASN.",
|
||||
"Inbox rule moved wire transfer emails to RSS Feeds folder.",
|
||||
"Mailbox audit showed rule creation minutes after login."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:true_positive",
|
||||
"scenario:o365_suspicious_login",
|
||||
"alert_type:azuread_suspicious_inbox_rule_after_login"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-O365-LOGIN-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-O365-INBOX-RULE-ABUSE",
|
||||
"KB-O365-IMPOSSIBLE-TRAVEL"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/o365_suspicious_login/CASE-2026-1003.json",
|
||||
"tags": [
|
||||
"o365",
|
||||
"login",
|
||||
"inbox-rule",
|
||||
"account-compromise"
|
||||
]
|
||||
}
|
||||
52
evaluation/datasets/normalized_cases/CASE-2026-1004.json
Normal file
52
evaluation/datasets/normalized_cases/CASE-2026-1004.json
Normal file
@ -0,0 +1,52 @@
|
||||
{
|
||||
"id": "CASE-2026-1004",
|
||||
"memory_type": "case",
|
||||
"scenario": "o365_suspicious_login",
|
||||
"title": "Multiple failed logins from residential proxy but no successful access",
|
||||
"abstract": "Repeated failed Microsoft 365 sign-in attempts targeted one user from a residential proxy network, with no successful authentication observed.",
|
||||
"verdict": "uncertain",
|
||||
"severity": "medium",
|
||||
"entities": {
|
||||
"users": [
|
||||
"frank@corp.example"
|
||||
],
|
||||
"hosts": [],
|
||||
"mailboxes": [
|
||||
"frank@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"ips": [
|
||||
"203.0.113.201"
|
||||
],
|
||||
"domains": [],
|
||||
"urls": [],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"High-volume failed attempts over a short period.",
|
||||
"Source IP attributed to a residential proxy provider.",
|
||||
"No matching successful sign-in or MFA event found."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:uncertain",
|
||||
"scenario:o365_suspicious_login",
|
||||
"alert_type:azuread_password_spray_attempt"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-O365-LOGIN-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-O365-IMPOSSIBLE-TRAVEL"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/o365_suspicious_login/CASE-2026-1004.json",
|
||||
"tags": [
|
||||
"o365",
|
||||
"login",
|
||||
"password-spray",
|
||||
"pending"
|
||||
]
|
||||
}
|
||||
55
evaluation/datasets/normalized_cases/CASE-2026-1005.json
Normal file
55
evaluation/datasets/normalized_cases/CASE-2026-1005.json
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
"id": "CASE-2026-1005",
|
||||
"memory_type": "case",
|
||||
"scenario": "o365_suspicious_login",
|
||||
"title": "Traveling executive triggered impossible travel but activity was legitimate",
|
||||
"abstract": "Executive account triggered impossible travel due to corporate VPN exit node while the user was on an approved overseas trip.",
|
||||
"verdict": "false_positive",
|
||||
"severity": "medium",
|
||||
"entities": {
|
||||
"users": [
|
||||
"grace@corp.example"
|
||||
],
|
||||
"hosts": [
|
||||
"VIP-LAPTOP-01"
|
||||
],
|
||||
"mailboxes": [
|
||||
"grace@corp.example"
|
||||
]
|
||||
},
|
||||
"observables": {
|
||||
"ips": [
|
||||
"192.0.2.90",
|
||||
"203.0.113.77"
|
||||
],
|
||||
"domains": [],
|
||||
"urls": [],
|
||||
"hashes": []
|
||||
},
|
||||
"evidence": [
|
||||
"Approved travel request existed.",
|
||||
"One login originated from corporate VPN exit node.",
|
||||
"Device and user agent were consistent with known user profile."
|
||||
],
|
||||
"patterns": [
|
||||
"verdict:false_positive",
|
||||
"scenario:o365_suspicious_login",
|
||||
"alert_type:azuread_impossible_travel"
|
||||
],
|
||||
"related_refs": {
|
||||
"playbooks": [
|
||||
"PB-O365-LOGIN-001"
|
||||
],
|
||||
"kb": [
|
||||
"KB-O365-IMPOSSIBLE-TRAVEL"
|
||||
],
|
||||
"cases": []
|
||||
},
|
||||
"source_path": "/home/tom/soc_memory_poc/evaluation/datasets/mock_cases/o365_suspicious_login/CASE-2026-1005.json",
|
||||
"tags": [
|
||||
"o365",
|
||||
"login",
|
||||
"false-positive",
|
||||
"travel"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user