Skip to main content
4672SecurityLogon/LogoffSecurity tier 1

Event ID 4672: Special privileges assigned to new logon

Event ID 4672 (Security log, Audit Special Logon subcategory) records that a new logon session was handed one or more sensitive Windows privileges, such as SeDebugPrivilege or SeBackupPrivilege. It fires immediately after a matching 4624 logon. Most instances come from SYSTEM and service accounts; the ones worth chasing are standard or service accounts receiving privileges they have never held before.

What Triggers Event 4672

Event 4672 lives in the Security channel and belongs to the Audit Special Logon subcategory, under Advanced Audit Policy Configuration, Logon/Logoff. Windows raises it every time a new logon session's access token is built with at least one of thirteen privileges Microsoft classifies as sensitive: SeAssignPrimaryTokenPrivilege, SeAuditPrivilege, SeBackupPrivilege, SeCreateTokenPrivilege, SeDebugPrivilege, SeEnableDelegationPrivilege, SeImpersonatePrivilege, SeLoadDriverPrivilege, SeRestorePrivilege, SeSecurityPrivilege, SeSystemEnvironmentPrivilege, SeTakeOwnershipPrivilege, and SeTcbPrivilege.

The event has a small field set: SubjectUserSid, SubjectUserName, SubjectDomainName, and SubjectLogonId identify the account and session, and PrivilegeList spells out which of the thirteen privileges landed in that token. There is no target-account block and no logon-type field on 4672 itself; that context always lives on the paired 4624.

The SubjectLogonId is the field that does the real work. It is a hexadecimal session identifier that ties 4672 back to the 4624 that created the session, and forward to 4634 or 4647 when the session ends, and to 4673 if the account actually exercises one of the granted privileges (opening a privileged handle, for instance). An analyst reading 4672 in isolation only knows a token was built with elevated rights; joining on LogonId is what turns that into a story: who authenticated, from where, with what logon type, and what they did with the privilege afterward.

Volume is dominated by NT AUTHORITY\SYSTEM. SYSTEM's token already carries almost the entire sensitive-privilege list, so every service start, every scheduled task running as SYSTEM, and every kernel-mode driver load produces a fresh 4672. Domain controllers add their own baseline: machine account logons for replication, Group Policy processing, and Kerberos ticket issuance all touch SeTcbPrivilege or SeSecurityPrivilege in the process.

Event 4672 Fields

FieldWhat it tells youSimulated value
SubjectUserSidSID of the account whose new logon session received the sensitive privileges.S-1-5-21-424242-350044
SubjectUserNameAccount name for the logon; SYSTEM and machine-account ($ suffix) values dominate normal volume.svc.inventory
SubjectDomainNameDomain or computer name for the subject account; shows NT AUTHORITY for well-known principals like SYSTEM.corp.socsimulator.example
SubjectLogonIdHex session identifier used to correlate this event with the matching 4624 logon, the eventual 4634/4647 logoff, and any 4673 privileged-service-call events.simulated-subjectlogonid-EEFA35
PrivilegeListSpace-delimited list of the sensitive privileges granted to this logon session, drawn from the fixed set of thirteen (e.g. SeDebugPrivilege, SeTcbPrivilege).simulated-privilegelist-4AA675

Decode Event 4672 Codes

Click a code to see what it means during triage and when it points at something worth escalating.

Example Event 4672 Log

A representative Security entry for Event 4672, generated deterministically by our telemetry engine so every field holds a realistic, internally consistent value.

Simulated example generated by SOCSimulator Research
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Security-Auditing" />
    <EventID>4672</EventID>
    <Version>0</Version>
    <Level>0</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8020000000000000</Keywords>
    <TimeCreated SystemTime="2025-10-19T05:26:55.000Z" />
    <EventRecordID>310997</EventRecordID>
    <Channel>Security</Channel>
    <Computer>WS-SIM-001.corp.socsimulator.example</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="SubjectUserSid">S-1-5-21-424242-350044</Data>
    <Data Name="SubjectUserName">svc.inventory</Data>
    <Data Name="SubjectDomainName">corp.socsimulator.example</Data>
    <Data Name="SubjectLogonId">simulated-subjectlogonid-EEFA35</Data>
    <Data Name="PrivilegeList">simulated-privilegelist-4AA675</Data>
  </EventData>
</Event>

Detecting Event 4672

Special privileges granted to a non-system, non-machine account

index=wineventlog source="WinEventLog:Security" EventCode=4672
| where NOT match(Caller_User_Name, "(?i)^(system|local service|network service)$") AND NOT match(Caller_User_Name, "\$$")
| table _time, Caller_Domain, Caller_User_Name, Logon_ID, PrivilegeList
| sort - _time

4672 privilege grants, joinable to their source 4624 logon by Logon ID

Base filter; join in your SIEM.

index=wineventlog EventCode=4672
| rename Logon_ID as SubjectLogonId
| join type=inner SubjectLogonId
  [ search index=wineventlog EventCode=4624
    | rename Logon_ID as SubjectLogonId
    | table SubjectLogonId, Logon_Type, Account_Name, Source_Network_Address ]
| table _time, Account_Name, Logon_Type, Source_Network_Address, PrivilegeList

Service account receiving SeDebugPrivilege or SeBackupPrivilege it has not held before

index=wineventlog EventCode=4672 (PrivilegeList="*SeDebugPrivilege*" OR PrivilegeList="*SeBackupPrivilege*")
| lookup service_account_baseline.csv Caller_User_Name OUTPUT known_privileges
| where NOT match(known_privileges, "SeDebugPrivilege|SeBackupPrivilege")
| table _time, Caller_Domain, Caller_User_Name, Logon_ID, PrivilegeList

Per-host 4672 volume

Base filter; compute the hourly avg+3σ baseline via aggregation in your SIEM.

index=wineventlog EventCode=4672
| bin _time span=1h
| stats count as hourly_count by _time, Computer
| eventstats avg(hourly_count) as avg_count, stdev(hourly_count) as stdev_count by Computer
| where hourly_count > (avg_count + 3*stdev_count)
| table _time, Computer, hourly_count, avg_count, stdev_count

NETWORK SERVICE and LOCAL SERVICE contribute a smaller but steady stream tied to built-in Windows services that need to impersonate callers (IIS application pools, print spooler helpers, WMI providers). None of this volume is remarkable on its own; it is the cost of a functioning Windows estate and the reason 4672 is one of the noisiest IDs in the Security log on servers and domain controllers.

What is worth an analyst's attention is the same event firing against an account that is not SYSTEM, not a well-known service SID, and not a machine account. A help-desk technician's interactive logon producing SeDebugPrivilege is unusual, because that right is normally reserved for local Administrators debugging processes, not for a standard support account. A batch or scheduled-task account suddenly holding SeBackupPrivilege and SeRestorePrivilege, when its job has never needed filesystem-ACL bypass before, points at a group-membership change somewhere upstream rather than at the 4672 event itself, which only reports the consequence.

Attackers light this event up in a handful of recognizable ways. Credential theft against LSASS (Mimikatz and its descendants) requires SeDebugPrivilege on the attacking process, so a 4672 carrying that privilege against an account outside the expected admin set is a leading indicator of an in-progress dump attempt, especially when it is followed by a 4673 targeting lsass.exe. Potato-family local-privilege-escalation tools (JuicyPotato, RoguePotato, PrintSpoofer) abuse SeImpersonatePrivilege, which service accounts typically already hold, to coerce a SYSTEM-level token; the 4672 here looks routine on its own but becomes meaningful when paired with an unexpected child process spawned moments later.

Bring-your-own-vulnerable-driver techniques used to kill EDR agents need SeLoadDriverPrivilege, a right almost never exercised outside of driver installers and virtualization software, making any unscheduled instance worth a look. Ransomware operators taking ownership of files ahead of encryption, or deleting shadow copies to block recovery, ride on SeTakeOwnershipPrivilege and SeBackupPrivilege respectively. And lateral movement using stolen Domain Admin credentials (pass-the-hash, pass-the-ticket, or plain credential reuse) shows up as a 4672 for a genuine admin account, but from a source workstation or at an hour that does not match that admin's normal pattern once you correlate the LogonId back to 4624.

True Positive vs False Positive

Start triage by removing the accounts that are supposed to be here. SubjectUserName values of SYSTEM, NETWORK SERVICE, and LOCAL SERVICE, plus any account name ending in a dollar sign (computer accounts and, on some estates, service accounts provisioned with machine-style naming), account for the overwhelming majority of 4672 volume on any server or domain controller. Filtering these out first is not optional; without it, every hunt drowns before it starts.

On a domain controller, machine-account 4672 entries tied to replication, LDAP binds, and Group Policy refresh are expected background noise, as is a genuine Domain Admin logging on interactively during business hours from their known jump box. Confirm the last part by joining SubjectLogonId to the matching 4624 and checking LogonType (2 for interactive, 10 for RemoteInteractive/RDP) and the source workstation or IP against what that admin normally uses. A privileged logon that checks out on all three, expected account, expected source, expected hour, is a true positive for "privilege granted," but a false positive for "something is wrong."

The pattern worth escalating is the mismatch. A standard user account or a low-privilege service account receiving SeDebugPrivilege or SeImpersonatePrivilege for the first time in its history is the single strongest signal 4672 offers, particularly on a workstation rather than a server, since workstations rarely need any of these thirteen rights outside of local Administrator sessions.

Pair that with the LogonId trail: if the 4624 behind the 4672 shows an unfamiliar source IP, an off-hours timestamp, or a logon type that does not match how that account is supposed to authenticate (a service account showing LogonType 10, for example), the privilege grant is riding on top of a suspicious authentication event, not a benign one.

Use 4673 as the tiebreaker when the account itself looks ambiguous. A 4672 with no corresponding 4673 for hours or days means the privilege was granted but never exercised, which lowers urgency without eliminating it as a finding worth a baseline update. A 4673 that follows within seconds and names a sensitive target, lsass.exe under SeDebugPrivilege, the SAM or NTDS.dit path under SeBackupPrivilege, is close to unambiguous evidence the privilege is being actively used for something an analyst should look at immediately.

Finally, baseline the volume itself per host. A domain controller or admin jump box that produces hundreds of 4672 events an hour is normal for that host; the same count on a line-of-business workstation that historically logs two or three a month is not, regardless of which account or privilege is involved. Building that per-host baseline, and alerting on deviations from it, catches automated enumeration, repeated persistence-mechanism restarts, and compromised-service reuse that individual-event filtering on account name or privilege name alone will miss.

MITRE ATT&CK® Techniques

Event 4672 telemetry feeds detections for these ATT&CK® techniques:

Practice Investigating Event 4672

Reading about special privileges assigned to new logon is one thing. Working the detection inside a live console is another. These free SOCSimulator operations cover the attack techniques Event 4672 helps you detect:

Credential Harvesting: The Lookalike Login

Credential Harvesting: The Lookalike Login

Investigate an adversary-in-the-middle (AiTM) credential phishing campaign that lured an employee to a lookalike Microsoft 365 login page. Working entirely from SIEM logs, you will identify the lookalike domain, reconstruct the multi-hop redirect chain through a compromised legitimate site, uncover a secondary phishing wave against another employee, and confirm account takeover in Azure AD sign-in logs via impossible travel and session-token replay. You finish by choosing the containment action that actually evicts an attacker holding a valid session token. Foundational skills for SOC analysts in lookalike-domain analysis and identity-centric incident response.

20m·257 tasks
View Operation
FortiOS Bypass to Hunters International Ransomware

FortiOS Bypass to Hunters International Ransomware

Operators consistent with the Hunters International ransomware group abuse a FortiOS super-admin authentication bypass on an internet-facing FortiGate, plant rogue accounts, pivot over the SSL-VPN tunnel by RDP, sweep the network with Advanced IP and Port Scanner, and push roughly 6.8 GB of share data to a single external host over SFTP before running the encrypter. Work the FortiGate edge, the directory records, the perimeter egress, and the endpoint process tree to reconstruct the intrusion from entry to encryption.

30m·256 tasks
View Operation
The Template That Read the Disk

The Template That Read the Disk

The file-transfer portal that Tideglow Logistics' partners upload to spent a morning returning host files it was never meant to publish, and finished it running an administrator session nobody had logged into. The root cause is CVE-2024-4040 in CrushFTP 10.6.0. Walk the access logs and firewall traffic step by step to trace how a client holding no credentials turned a request parameter into a read of the host, and that read into a takeover.

25m·256 tasks
View Operation
Start investigating free

Frequently Asked Questions

Why do I see so many event ID 4672 entries in my Security log?
SYSTEM's access token already contains nearly all thirteen sensitive privileges 4672 tracks, so every service start, scheduled task, and driver load under SYSTEM produces one. Domain controllers add replication and Group Policy processing on top of that. NETWORK SERVICE and LOCAL SERVICE contribute a smaller steady stream from built-in Windows services. Filtering these well-known accounts out first is the standard way to make the event usable.
What is the difference between event ID 4624 and event ID 4672?
4624 is the general successful-logon event and fires for every session, privileged or not. 4672 fires only when the new session's token contains one of thirteen sensitive privileges, and it always accompanies a 4624 for the same logon, sharing the same Logon ID. Reading them together, rather than either alone, is what lets an analyst confirm whether a privileged logon's source and logon type actually match the account's normal pattern.
Is event ID 4672 a sign my system has been hacked?
Not by itself. The event is routine for SYSTEM, NETWORK SERVICE, LOCAL SERVICE, and machine accounts, and is expected whenever a genuine administrator logs on. It becomes a real concern when it names a standard user or service account that has never held that privilege before, especially SeDebugPrivilege or SeImpersonatePrivilege on a workstation, or when it is immediately followed by a 4673 targeting a sensitive process like lsass.exe.
Which privileges in event ID 4672 matter most for security monitoring?
SeDebugPrivilege, SeTcbPrivilege, SeLoadDriverPrivilege, SeBackupPrivilege, SeRestorePrivilege, and SeTakeOwnershipPrivilege are the ones tied to real attacker tooling: credential dumping, kernel driver abuse to disable EDR, and ACL-bypassing file access used in ransomware and data-theft operations. SeImpersonatePrivilege matters specifically on service accounts, where Potato-family privilege-escalation tools abuse it to mint a SYSTEM-level token.
Can event ID 4672 be disabled or reduced without losing security visibility?
The subcategory can be turned off, but doing so removes the only event that shows which sensitive privileges a session actually received, which weakens correlation with 4673 and privilege-escalation detection generally. The better fix for volume is filtering known-benign subjects (SYSTEM, NETWORK SERVICE, LOCAL SERVICE, machine accounts) at the SIEM layer rather than disabling the audit policy at the source.

Sources

Event description, EventData field list (SubjectUserSid/SubjectUserName/SubjectDomainName/SubjectLogonId/PrivilegeList), the 13-privilege table with User Right Group Policy names and descriptions, and the Audit Special Logon subcategory mapping.

Guidance that most admin-equivalent privileges are intended for services rather than human accounts, and the correlation chain to 4624, legacy 576, and 4673.

T1078 (Valid Accounts) is a current, non-deprecated Enterprise ATT&CK parent technique covering credential reuse for privilege escalation and lateral movement, the technique mapped to privileged-logon abuse detected via 4672.

Detection rationale for SeDebugPrivilege abuse: the privilege lets a process inspect and modify another process's memory, the basis for treating unexpected SeDebugPrivilege grants in 4672 as a credential-dumping precursor.

Vendor detection framing for SeDebugPrivilege enablement by non-standard processes, supporting the true-positive/false-positive split on that privilege in this page's triage guidance.

Glossary

What is Brute Force Attack? SOC Glossary

A brute force attack systematically tries large numbers of username and password combinations, or decryption keys, until…

Read more
Glossary

What is Lateral Movement? SOC Glossary

Lateral movement is the attack phase where adversaries expand access from an initial foothold to additional systems, usi…

Read more
Glossary

What is MFA? SOC Glossary

Multi-Factor Authentication (MFA) requires a user to prove their identity with two or more independent factors, somethin…

Read more
Glossary

What is SIEM? SOC Glossary

Security Information and Event Management (SIEM) is a platform that aggregates, normalizes, and correlates log data from…

Read more
Career Path

SOC Analyst (Tier 1) Career Guide: Salary & Skills

Tier 1 SOC Analysts are the front line. You monitor alert queues, triage incoming detections, classify them as true or f…

Read more
Career Path

SOC Analyst (Tier 2) Career Guide: Salary & Skills

Tier 2 SOC Analysts handle the investigations that Tier 1 escalates. You dig into multi-stage attacks, coordinate contai…

Read more
Technique

Valid Accounts (T1078): Detection Training

Valid Accounts is among the hardest abuses to spot because nothing is technically broken, the adversary simply authentic…

Read more
Comparison

SOCSimulator vs. LetsDefend: Platform Comparison

SOCSimulator wins on operational realism. You get multi-tool shift simulation with SLA pressure, noise injection, and al…

Read more
Event ID

Windows Event ID Library: SOC Reference

Windows Security and Sysmon event IDs with simulated log samples, field tables, and tested detection queries.

Read more
Feature

Shift Mode: Real-Time SOC Simulation

Practice alert triage under realistic time pressure with SLA timers and noise injection.

Read more
Feature

Operations: Guided Training Operations

Structured CTF-style investigation operations covering real-world attack scenarios.

Read more
Blog

SOCSimulator Blog: Security Training Insights

Articles on SOC analyst skills, detection engineering, and career development.

Read more