← Library
splApache-2.0from splunk/security_content

ServicePrincipalNames Discovery with SetSPN

The following analytic detects the use of `setspn.exe` to query the domain for Service Principal Names (SPNs). This detection leverages Endpoint Detection and Response (EDR) data, focusing on specific command-line arguments associated with `setspn.exe`. Monitoring this activity is crucial as it often precedes Kerberoasting or Silver Ticket attacks, which can lead to credential theft. If confirmed malicious, an attacker could use the gathered SPNs to escalate privileges or persist within the environment, posing a significant security risk.

Quality
67
FP risk
Forks
0
Views
0
Rule sourcedetections/endpoint/serviceprincipalnames_discovery_with_setspn.yml
| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time) as lastTime FROM datamodel=Endpoint.Processes
  WHERE `process_setspn` (Processes.process="*-t*"
    AND
    Processes.process="*-f*")
    OR
    (Processes.process="*-q*"
    AND
    Processes.process="**/**")
    OR
    (Processes.process="*-q*")
    OR
    (Processes.process="*-s*")
  BY Processes.action Processes.dest Processes.original_file_name
     Processes.parent_process Processes.parent_process_exec Processes.parent_process_guid
     Processes.parent_process_id Processes.parent_process_name Processes.parent_process_path
     Processes.process Processes.process_exec Processes.process_guid
     Processes.process_hash Processes.process_id Processes.process_integrity_level
     Processes.process_name Processes.process_path Processes.user
     Processes.user_id Processes.vendor_product
| `drop_dm_object_name(Processes)`
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `serviceprincipalnames_discovery_with_setspn_filter`
ServicePrincipalNames Discovery with SetSPN · SPL rule | DetectionLint