PH_Rule_SIGMA_1589
Enabled
Detects suspicious process patterns used in NTDS.DIT exfiltration. NTDS.dit file is a database that stores the Active Directory data (including users, groups, security descriptors and password hashes). This rule is adapted from https://github.com/SigmaHQ/sigma/blob/master/rules/windows/process_creation/proc_creation_win_susp_ntds.yml
7
Security
Credential Access
Credential Access consists of techniques for stealing credentials like account names and passwords. Techniques used to get credentials include keylogging or credential dumping. Using legitimate credentials can give adversaries access to systems, make them harder to detect, and provide the opportunity to create more accounts to help achieve their goals.
https://attack.mitre.org/tactics/TA0006T1003.003
OS Credential Dumping: NTDS
Adversaries may attempt to access or create a copy of the Active Directory domain database in order to steal credential information, as well as obtain other information about domain members such as devices, users, and access rights.
https://attack.mitre.org/techniques/T1003/003Server
Windows Sysmon via FortiSIEM Agent
Correlation
Determine if this was an authorized penetration testing activity or authorized sysadmin activity. Otherwise, there is no reason for this activity to be occurring. The host should be quarantined and investigated immediately. Collect the process hash and check for malware match. Investigate what other incidents are occurring on that host during that time frame.
If the following pattern or patterns match an ingested event within the given time window in seconds, trigger an incident.
300 seconds
If the following defined pattern/s occur within a 300 second time window.
Filter
This is the named definition of the event query, this is important if multiple subpatterns are defined to distinguish them.
This is the query logic that matches incoming events
eventType="Win-Sysmon-1-Create-Process" AND (((procName REGEXP "\\NTDSDumpEx\.exe$|\\NTDSDump\.exe$" OR (command REGEXP ".*ntds\.dit.*" AND command REGEXP ".*system\.hiv.*") OR command REGEXP ".*NTDSgrab\.ps1.*") OR (command REGEXP ".*ac i ntds.*" AND command REGEXP ".*create full.*") OR (command REGEXP ".*/c copy .*" AND command REGEXP ".*\\windows\\ntds\\ntds\.dit.*") OR (command REGEXP ".*activate instance ntds.*" AND command REGEXP ".*create full.*") OR (command REGEXP ".*powershell.*" AND command REGEXP ".*ntds\.dit.*")) OR (command REGEXP ".*ntds\.dit.*" AND (parentProcName REGEXP ".*\\AppData\\.*|.*\\PerfLogs\\.*|.*\\Public\\.*|.*\\Temp\\.*|.*\\apache.*|.*\\tomcat.*" OR procName REGEXP ".*\\AppData\\.*|.*\\PerfLogs\\.*|.*\\Public\\.*|.*\\Temp\\.*|.*\\apache.*|.*\\tomcat.*")))
This defines how matching events are aggregated, only events with the same matching attribute values are grouped into one unique incident ID
command,hostName,parentProcName,procName
This is most typically a numerical constraint that defines when the rule should trigger an incident
COUNT(*) >= 1
This section defines which fields in matching raw events should be mapped to the incident attributes in the resulting incident.
The available raw event attributes to map are limited to the group by attributes and the aggregate event constraint fields for each subpattern
command = Filter.command,
hostName = Filter.hostName,
parentProcName = Filter.parentProcName,
procName = Filter.procName