Operator On The Wire
Join
← Back to Knowledge Base
BLUE TEAM / THREAT HUNT / WINDOWS / PRIVILEGE ESCALATION

Group Abuse

This note documents detection patterns related to Privilege Escalation via Folder / Group Abuse within Windows environments.


Direct Indicators

LogEvent IDMeaningForensic ValueNotes
Security4670Permissions on object changedCriticalCore event when attacker modifies ACLs on folders, files, or privileged paths.
Security4663Object accessHighDetect write attempts to sensitive folders if auditing is enabled.
Security4688Process creationCriticalShows icacls, takeown, cmd, powershell, net localgroup, or payload execution.
Security4732Member added to local security-enabled groupCriticalDetects attacker adding account into Administrators or privileged local groups.
Security4728Member added to global security-enabled groupCriticalDomain group privilege escalation indicator.
Security4733 / 4729Member removed from groupMediumCleanup or privilege adjustment.
Sysmon1Process creationCriticalBest execution source for ACL abuse and group manipulation commands.
Sysmon11File createHighPayload dropped into writable privileged folder.
Sysmon13Registry value setHighOften adjacent when folder abuse leads to persistence.
Sysmon12Registry object create/deleteMediumSupports chained privilege escalation activity.

Indirect Indicators

IndicatorWhat To Look ForForensic ValueNotes
Writable service pathNon-admin write access under service binary directoryCriticalClassic privilege escalation primitive.
Weak ACL on startup folderUser can place executable in privileged startup pathHighLeads to execution at next logon.
Group membership spikeUser suddenly joins Administrators / Backup OperatorsCriticalDirect privilege escalation.
icacls on system pathACL changes under Program Files / Windows pathsCriticalRare under normal user context.
Payload dropped into writable privileged folderEXE/DLL appears before privileged executionCriticalStrong escalation chain.
takeown.exe usageOwnership seizure before ACL modificationHighCommon attacker preparation.
DLL planted in writable privileged folderHijack candidateCriticalOften chained with service restart.
Abuse of Backup Operators / Print OperatorsNon-admin account receives powerful delegated rightsHighOften overlooked escalation vector.

Common Tools

ToolUsage
icacls.exeModify file/folder ACLs
takeown.exeTake ownership of protected files
net.exeAdd user to local groups
net1.exeLegacy group manipulation
PowerShellACL modification and group membership changes
whoami.exePrivilege verification
accesschk.exeIdentify weak permissions
sc.exeRestart service after replacing binary
custom DLL/EXEPayload planted in writable privileged path

Relevant Artifacts

  • Security Event IDs 4670, 4663, 4732, 4728
  • Sysmon Event ID 1
  • Sysmon Event ID 11
  • Prefetch: ICACLS.EXE, TAKEOWN.EXE, NET.EXE
  • Amcache for dropped payloads
  • ShimCache for execution history
  • MFT / USN Journal for file replacement timeline
  • Service Control Manager logs if service binary affected
  • ACL metadata on disk
  • Group membership snapshots
  • EDR lineage for payload launch

MITRE ATT&CK References

  • T1574 Hijack Execution Flow
  • T1222 File and Directory Permissions Modification
  • T1068 Exploitation for Privilege Escalation
  • T1098 Account Manipulation
  • T1548 Abuse Elevation Control Mechanism

Decision Tree

  1. Was privileged folder or ACL modified?

    • Check 4670
    • Identify target path
  2. Was group membership altered?

    • Check 4732 / 4728
    • Identify added principal
  3. Was payload dropped?

    • Check Sysmon 11
    • Compare timestamps
  4. Did privileged process execute attacker-controlled file?

    • Service?
    • Scheduled task?
    • Startup path?
  5. Expand:

    • Parent process
    • User context
    • Adjacent persistence
  6. Scope:

    • Single host
    • Domain spread
    • Delegation abuse

Example Detection Templates

KQL

SecurityEvent
| where EventID in (4670,4732,4728)
| project TimeGenerated, Computer, Account, EventID, ObjectName, TargetAccount
Sysmon
| where EventID == 1
| where CommandLine has_any ("icacls","takeown","net localgroup","Add-LocalGroupMember")
| project TimeGenerated, Computer, User, CommandLine, ParentImage

EQL

process where process.command_line like "*icacls*" or process.command_line like "*takeown*" or process.command_line like "*net localgroup*"
sequence by host.name with maxspan=5m
  [ process where process.command_line like "*icacls*" ]
  [ file where file.path like "C:\\Program Files\\*" ]

Sigma

title: Privilege Escalation Folder Or Group Abuse
id: 0f9d3a7e-folder-group-abuse
status: experimental
description: Detects ACL modification or privileged group abuse linked to escalation
references:
  - https://attack.mitre.org/
author: Vergil
date: 2026-03-07
logsource:
  product: windows
detection:
  selection:
    EventID:
      - 4670
      - 4732
      - 4728
  condition: selection
fields:
  - EventID
  - ObjectName
  - TargetAccount
falsepositives:
  - Legitimate administration
level: high
tags:
  - attack.privilege_escalation

Mitigation & Hardening

Control AreaMitigationEffectivenessNotes
ACL auditsRegularly review privileged folder ACLsCriticalDetect weak paths early
Restrict group delegationLimit who can alter privileged groupsCriticalPrevent silent escalation
Sysmon coverageEnable process + file monitoringCriticalRequired visibility
Service binary hardeningProtect service pathsHighCommon escalation target
WDAC / AppLockerRestrict planted payload executionHighLimits abuse