Detection rules › Splunk

Windows Steal Authentication Certificates Certificate Issued

Status
production
Severity
low
Group by
Attributes, Requester, Subject, action, dest, name
Author
Michael Haag, Splunk
Source
github.com/splunk/security_content

The following analytic identifies the issuance of a new certificate by Certificate Services - AD CS, detected via Event ID 4887. This event logs the requester user context, DNS hostname of the requesting machine, and the request time. Monitoring this activity is crucial as it can indicate potential misuse of authentication certificates. If confirmed malicious, an attacker could use the issued certificate to impersonate users, escalate privileges, or maintain persistence within the environment. This detection helps in identifying and correlating suspicious certificate-related activities for further investigation.

Known false positives

  • False positives will be generated based on normal certificates issued. Leave enabled to generate Risk, as this is meant to be an anomaly analytic.

MITRE ATT&CK coverage

TacticTechniques
Credential Access

Telemetry coverage

Rule body

name: Windows Steal Authentication Certificates Certificate Issued
id: 9b1a5385-0c31-4c39-9753-dc26b8ce64c2
version: 9
creation_date: '2023-02-06'
modification_date: '2026-05-13'
author: Michael Haag, Splunk
status: production
type: Anomaly
description: The following analytic identifies the issuance of a new certificate by Certificate Services - AD CS, detected via Event ID 4887. This event logs the requester user context, DNS hostname of the requesting machine, and the request time. Monitoring this activity is crucial as it can indicate potential misuse of authentication certificates. If confirmed malicious, an attacker could use the issued certificate to impersonate users, escalate privileges, or maintain persistence within the environment. This detection helps in identifying and correlating suspicious certificate-related activities for further investigation.
data_source:
    - Windows Event Log Security 4887
search: |-
    `wineventlog_security`  EventCode=4887
      | stats count min(_time) as firstTime max(_time) as lastTime
        BY dest, name, Requester,
           action, Attributes, Subject
      | `security_content_ctime(firstTime)`
      | `security_content_ctime(lastTime)`
      | `windows_steal_authentication_certificates_certificate_issued_filter`
how_to_implement: To implement this analytic, enhanced Audit Logging must be enabled on AD CS and within Group Policy Management for CS server. See Page 115 of first reference.
known_false_positives: False positives will be generated based on normal certificates issued. Leave enabled to generate Risk, as this is meant to be an anomaly analytic.
references:
    - https://specterops.io/wp-content/uploads/sites/3/2022/06/Certified_Pre-Owned.pdf
intermediate_findings:
    entities:
        - field: dest
          type: system
          score: 20
          message: A certificate was issued to $dest$.
analytic_story:
    - Windows Certificate Services
asset_type: Endpoint
mitre_attack_id:
    - T1649
product:
    - Splunk Enterprise
    - Splunk Enterprise Security
    - Splunk Cloud
category: endpoint
security_domain: endpoint

Stages and Predicates

Stage 1: search

`wineventlog_security`  EventCode=4887

Stage 2: stats

| stats count min(_time) as firstTime max(_time) as lastTime
    BY dest, name, Requester,
       action, Attributes, Subject

Stage 3: search

| `security_content_ctime(firstTime)`

Stage 4: search

| `security_content_ctime(lastTime)`

Stage 5: search

| `windows_steal_authentication_certificates_certificate_issued_filter`

Indicators

These rows show field, operator, and value matches.

FieldKindValuesSearch
EventCodeeq
  • 4887 corpus 3 (splunk 3)
field:"EventID" kind:eq value:"4887"