Windows Default Group Policy Object Modified

Original Source: [splunk source]
Name:Windows Default Group Policy Object Modified
id:fe6a6cc4-9e0d-4d66-bcf4-2c7f44860876
version:4
date:2024-09-30
author:Mauricio Velazco, Splunk
status:production
type:TTP
Description:The following analytic detects modifications to default Group Policy Objects (GPOs) using Event ID 5136. It monitors changes to the `Default Domain Controllers Policy` and `Default Domain Policy`, which are critical for enforcing security settings across domain controllers and all users/computers, respectively. This activity is significant because unauthorized changes to these GPOs can indicate an adversary with privileged access attempting to deploy persistence mechanisms or execute malware across the network. If confirmed malicious, such modifications could lead to widespread compromise, allowing attackers to maintain control and execute arbitrary code on numerous hosts.
Data_source:
  • -Windows Event Log Security 5136
search:`wineventlog_security` EventCode=5136 ObjectClass=groupPolicyContainer AttributeLDAPDisplayName=versionNumber (ObjectDN="CN={31B2F340-016D-11D2-945F-00C04FB984F9},CN=POLICIES,CN=SYSTEM,DC=*" OR ObjectDN="CN={6AC1786C-016F-11D2-945F-00C04fB984F9},CN=POLICIES,CN=SYSTEM,DC=*")
| stats min(_time) as firstTime max(_time) as lastTime by ObjectDN SubjectUserSid AttributeValue Computer DSName
| rename AttributeValue as versionNumber
| `security_content_ctime(firstTime)`
| `security_content_ctime(lastTime)`
| `windows_default_group_policy_object_modified_filter`


how_to_implement:To successfully implement this search, the Advanced Security Audit policy setting `Audit Directory Service Changes` within `DS Access` needs to be enabled. Furthermore, the appropriate system access control lists (SACL) need to be created as the used events are not logged by default. A good guide to accomplish this can be found here https://jgspiers.com/audit-group-policy-changes/.
known_false_positives:The default Group Policy Objects within an AD network may be legitimately updated for administrative operations, filter as needed.
References:
  -https://attack.mitre.org/techniques/T1484/
  -https://attack.mitre.org/techniques/T1484/001
  -https://www.trustedsec.com/blog/weaponizing-group-policy-objects-access/
  -https://adsecurity.org/?p=2716
drilldown_searches:
name:'View the detection results for - "$Computer$"'
search:'%original_detection_search% | search Computer = "$Computer$"'
earliest_offset:'$info_min_time$'
latest_offset:'$info_max_time$'
name:'View risk events for the last 7 days for - "$Computer$"'
search:'| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$Computer$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
earliest_offset:'$info_min_time$'
latest_offset:'$info_max_time$'
tags:
  analytic_story:
    - 'Active Directory Privilege Escalation'
    - 'Sneaky Active Directory Persistence Tricks'
  asset_type:Endpoint
  confidence:50
  impact:100
  message:A default group policy object was modified on $Computer$ by $SubjectUserSid$
  mitre_attack_id:
    - 'T1484'
    - 'T1484.001'
  observable:
    name:'SubjectUserSid'
    type:'User'
    - role:
      - 'Attacker'
    name:'Computer'
    type:'Endpoint'
    - role:
      - 'Victim'
  product:
    - 'Splunk Enterprise'
    - 'Splunk Enterprise Security'
    - 'Splunk Cloud'
  required_fields:
    - 'EventCode'
    - 'ObjectClass'
    - 'AttributeLDAPDisplayName'
    - 'ObjectDN'
    - 'Computer'
    - 'DSName'
    - 'AttributeValue'
    - 'SubjectUserSid'
  risk_score:50
  security_domain:endpoint

tests:
name:'True Positive Test'
 attack_data:
  data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1484.001/default_domain_policy_modified/windows-security.log
  source: XmlWinEventLog:Security
  sourcetype: XmlWinEventLog
manual_test:None