CoCoineticBack to coinetic.io

Event ID 4732: a member was added to a security-enabled local group

Event 4732 means someone was added to a local group – and the groups that matter are Administrators and Remote Desktop Users. Adding an account to Administrators is how a foothold becomes full control, so this is one of the few events worth an alert every single time.

In short
  • What it is: a member added to a local (or domain local) security group. Removed: 4733.
  • Domain groups: 4728 / 4729 global (e.g. Domain Admins), 4756 / 4757 universal (e.g. Enterprise Admins).
  • Fields: Member (often only its SID), Group, and Subject = who did it.
  • Use SIDs, not names: Administrators is S-1-5-32-544 on every Windows language, Remote Desktop Users S-1-5-32-555.

1. The fields

Audit subcategory Security Group Management, on by default.

2. PowerShell: who was added to Administrators or Remote Desktop Users

function Get-EventFields($e) { $d = [ordered]@{}; ([xml]$e.ToXml()).Event.EventData.Data | ForEach-Object { $d[$_.Name] = $_.'#text' }; [pscustomobject]$d }
$watch = @{ 'S-1-5-32-544' = 'Administrators'; 'S-1-5-32-555' = 'Remote Desktop Users' }
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4732,4733; StartTime=(Get-Date).AddDays(-90)} -ErrorAction SilentlyContinue |
  ForEach-Object { $f = Get-EventFields $_
    if ($watch.ContainsKey($f.TargetSid)) {
      $who = try { (New-Object Security.Principal.SecurityIdentifier $f.MemberSid).Translate([Security.Principal.NTAccount]).Value } catch { $f.MemberSid }
      [pscustomobject]@{ Time = $_.TimeCreated; Change = if ($_.Id -eq 4732) { 'added' } else { 'removed' }; Member = $who; Group = $watch[$f.TargetSid]; By = $f.SubjectUserName } } } |
  Sort-Object Time | Format-Table -AutoSize

Who is in the groups now:

Get-LocalGroupMember -SID S-1-5-32-544
Get-LocalGroupMember -SID S-1-5-32-555

3. Normal or attack?

If you did not expect it: remove the member, disable the account, and check its logons and what it did.

4. Let Coinetic watch it for you

Coinetic keeps the network side of a Server or PC in shape, so attackers rarely get as far as this:

Protect this Server or PC in 5 minutes

Download Coinetic, install, done: it starts protecting at once. 30 days free with all features, no payment details. From $20 per computer per year.

Start the free 30-day trial →

More guides: all Coinetic guides.

Frequently asked

Why is the member name a dash?

For local accounts Windows often records only the SID. Translate it (see the PowerShell above) or look it up with Get-LocalUser -SID.

What is the difference between 4732, 4728 and 4756?

4732 is a local or domain local group (Administrators on a computer), 4728 a global group (Domain Admins), 4756 a universal group (Enterprise Admins). All three matter for admin groups.

Our Group Policy keeps re-adding members - is that 4732?

Yes. Restricted Groups or Group Policy Preferences re-apply the membership and log 4732 / 4733 when something changes.