|
| 1 | +# Splunk Production-Tuned Conversion Pack |
| 2 | + |
| 3 | +This is the second-pass tuning package for the Sentinel-to-Splunk conversion. |
| 4 | + |
| 5 | +## Summary |
| 6 | +- Active converted rules: 75 |
| 7 | +- Production-ready candidates: 70 |
| 8 | +- Validation-required candidates: 5 |
| 9 | +- Deprecated rules preserved separately: 22 |
| 10 | + |
| 11 | +## What changed in this pass |
| 12 | +- Normalized first-pass SPL syntax that still contained KQL habits such as `!in~`, `!has`, `between (...)`, and unresolved `project` fragments. |
| 13 | +- Replaced broken time-window joins with `relative_time(...)` comparisons where appropriate. |
| 14 | +- Promoted reviewed rules to `status: production` and `lifecycle: production`. |
| 15 | +- Added consistent implementation and production tuning guidance to each active rule. |
| 16 | +- Kept complex cloud and Entra correlation detections in testing status when they still depend on environment-specific nested fields or multi-source joins. |
| 17 | + |
| 18 | +## Production candidates |
| 19 | +- browser/browser-extension-install-from-temp-or-user-profile.yml |
| 20 | +- collection/Clipboard-Data-Collection.yml |
| 21 | +- collection/data-from-local-system.yml |
| 22 | +- collection/graph-mail-access-burst.yml |
| 23 | +- collection/mass-file-enumeration-in-user-data-paths.yml |
| 24 | +- collection/screen-capture-utility-execution.yml |
| 25 | +- command-and-control/powershell-or-lolbin-external-network-traffic.yml |
| 26 | +- command-and-control/quick-assist-or-rmm-followed-by-script-execution.yml |
| 27 | +- command-and-control/sharepoint-spinstall0-or-webshell-staging-access.yml |
| 28 | +- command-and-control/suspicious-web-download-via-certutil-or-bitsadmin.yml |
| 29 | +- credential-access/device-code-phishing-followed-by-graph-mail-access.yml |
| 30 | +- credential-access/potential-lsass-memory-dump.yml |
| 31 | +- credential-access/potential-ntlm-enumeration-via-failed-logons.yml |
| 32 | +- credential-access/suspicious-browser-credential-store-access.yml |
| 33 | +- credential-access/vmware_vmdk_ntds_theft.yml |
| 34 | +- defense-evasion/clear-windows-event-logs.yml |
| 35 | +- defense-evasion/disable-script-block-logging.yml |
| 36 | +- defense-evasion/powershell-script-block-logging-disabled.yml |
| 37 | +- defense-evasion/security-tool-disable-attempt.yml |
| 38 | +- discovery/dns-enumeration-via-command-line-tools.yml |
| 39 | +- discovery/ldap-enumeration-using-powershell.yml |
| 40 | +- discovery/net-group-and-domain-trust-discovery.yml |
| 41 | +- discovery/Net-User-Enumeration.yml |
| 42 | +- discovery/system-and-network-configuration-discovery.yml |
| 43 | +- execution/fake_captcha_browser_to_script.yml |
| 44 | +- execution/malicious-and-paste-powershell-from-explorer.yml |
| 45 | +- execution/mshta-launching-script-or-powershell.yml |
| 46 | +- execution/oauth-redirection-abuse-followed-by-browser-download.yml |
| 47 | +- execution/powershell-encoded-command-execution.yml |
| 48 | +- execution/powershell-encoded-command-from-temp-folder.yml |
| 49 | +- execution/suspicious-ai-cli-noninteractive-trust-all-tools.yml |
| 50 | +- exfiltration/archive-creation-followed-by-external-transfer.yml |
| 51 | +- exfiltration/azcopy-or-cloud-cli-bulk-export.yml |
| 52 | +- exfiltration/exfiltration-uncommon-port.yml |
| 53 | +- exfiltration/Onedrive-File-Exfil.yml |
| 54 | +- exfiltration/onedrive-or-cloud-storage-bulk-upload-spike.yml |
| 55 | +- exfiltration/powershell-email-exfiltration-with-attachments.yml |
| 56 | +- exfiltration/quick_assist_winscp_google_drive.yml |
| 57 | +- exfiltration/sharepoint-or-onedrive-bulk-download-by-newly-risky-user.yml |
| 58 | +- impact/boot-configuration-or-recovery-tampering.yml |
| 59 | +- impact/mass-file-rename-or-encryption-burst.yml |
| 60 | +- impact/remote_smb_encryption.yml |
| 61 | +- impact/volume-shadow-copy-deletion.yml |
| 62 | +- initial-access/device-code-sign-in-followed-by-device-registration.yml |
| 63 | +- initial-access/multiple-user-device-code-sign-ins.yml |
| 64 | +- initial-access/oauth-redirection-abuse-url-click.yml |
| 65 | +- initial-access/potential-spearphishing-attachment-execution.yml |
| 66 | +- initial-access/suspicious-external-remote-service-sign-in.yml |
| 67 | +- initial-access/teams-external-contact-followed-by-quick-assist.yml |
| 68 | +- lateral-movement/remote-scheduled-task-creation.yml |
| 69 | +- lateral-movement/remote-service-creation.yml |
| 70 | +- lateral-movement/wmi-remote-process-execution.yml |
| 71 | +- persistence/cleanup-loader-scheduled-task-rundll32-dllregisterserver.yml |
| 72 | +- persistence/m365_inbox_rule_forward_delete.yml |
| 73 | +- persistence/nodejs-guid-installer-scheduled-task.yml |
| 74 | +- persistence/random-appdata-roaming-dll-drop-followed-by-task.yml |
| 75 | +- persistence/registry-run-key-modification.yml |
| 76 | +- persistence/service-binary-path-hijack.yml |
| 77 | +- persistence/suspicious-scheduled-task-creation.yml |
| 78 | +- privilege-escalation/dll-injection.yml |
| 79 | +- privilege-escalation/event-viewer-uac-bypass-registry-hijack.yml |
| 80 | +- privilege-escalation/suspicious-service-creation-for-elevation.yml |
| 81 | +- privilege-escalation/suspicious-token-manipulation-or-sedebug-use.yml |
| 82 | +- reconnaissance/External-Lookup-Tool-Usage.yml |
| 83 | +- reconnaissance/external-network-scanner-execution.yml |
| 84 | +- reconnaissance/whoami-and-net-enumeration-burst.yml |
| 85 | +- resource-development/bulk-mailbox-or-rule-creation.yml |
| 86 | +- resource-development/suspicious-azure-ad-application-registration.yml |
| 87 | +- resource-development/suspicious-trufflehog-secret-scanning.yml |
| 88 | +- resource-development/user-click-spike-to-suspicious-domain.yml |
| 89 | + |
| 90 | +## Validation-required rules |
| 91 | +- exfiltration/cloud-storage-public-access-or-immutability-removal.yml |
| 92 | +- impact/cloud-backup-or-storage-mass-delete-burst.yml |
| 93 | +- persistence/entra_control_plane_abuse.yml |
| 94 | +- resource-development/new-app-secret-added-then-service-principal-signin.yml |
| 95 | +- resource-development/sharepoint-third-party-integration-secret-access.yml |
| 96 | + |
| 97 | +## Deployment guidance |
| 98 | +1. Point each source macro to the correct index, sourcetype, or accelerated datamodel. |
| 99 | +2. Validate field aliases for Microsoft Defender, Office 365, Azure Activity, AuditLogs, and URL click telemetry. |
| 100 | +3. Start rules in a lower-noise schedule with suppression and allowlists for IT/admin activity. |
| 101 | +4. Promote to notable or risk-based alerting only after baseline review. |
| 102 | + |
| 103 | +## Important note |
| 104 | +The 5 validation-required rules are not broken, but they still need hands-on field mapping in your Splunk environment because the original Sentinel logic depends on source-specific cloud schemas and nested JSON arrays. |
0 commit comments