Guide on how to review admin rights.

I was sitting in a budget meeting three years ago, listening to a consultant drone on about “Zero Trust architecture” and expensive third-party identity management suites, when I nearly lost it. They were pitching a six-figure solution for a problem that could be solved with a bit of discipline and a proper audit. Most of the “best practices” you read about online regarding how to review admin rights are just layers of expensive fluff designed to sell you software you don’t need. I’ve spent seventeen years in the trenches of regional council networks, and I can tell you that the real security holes aren’t caused by a lack of fancy tools; they’re caused by laziness and the habit of leaving legacy accounts active long after the person has left the building.

I’m not here to sell you a subscription or walk you through some theoretical whitepaper. I’m going to show you how I actually do it—the manual, slightly tedious, but highly effective way to strip back unnecessary privileges without breaking your local workflows. I’ve tested these methods against real-world Windows fleets, and I’m going to give you the direct steps to clean up your environment. No cargo-culted forum advice, just proven administrative workflows that actually work.

Implementing Principle of Least Privilege Implementation That Actually Work

Implementing Principle of Least Privilege Implementation That Actually Work

Look, you can’t just set a policy once and pretend you’re secure. A real principle of least privilege implementation isn’t a “set and forget” task; it’s a constant battle against user drift. I’ve seen it a dozen times in my years with the council: someone gets temporary access for a single project, and suddenly they’re a local admin three years later. You need to stop treating permissions like permanent fixtures. If they don’t need it to perform their daily job, they shouldn’t have it. Period.

The trick is to move away from manual checklists and toward a repeatable process for reducing administrative attack surface. I don’t care how much you trust your team; trust is not a security control. Start by auditing your existing groups and stripping away anything that looks like “just in case” access. If you aren’t regularly verifying that your user permissions match their current role, you aren’t managing access—you’re just collecting technical debt that’s waiting for a ransomware strain to exploit it.

Reducing Administrative Attack Surface Beyond the Usual Myths

Reducing Administrative Attack Surface Beyond the Usual Myths

Most of the advice you’ll find on the usual tech forums regarding reducing administrative attack surface is just noise. They’ll tell you to run some magic PowerShell script or toggle a setting in the Group Policy Editor that they found on a random Reddit thread from 2014. I’ve spent enough time testing these “fixes” to know that most of them don’t actually change how the kernel handles a hijacked token. Real security isn’t about a single registry tweak; it’s about a disciplined identity and access management lifecycle that treats every new account as a potential liability from day one.

If you want to actually move the needle, you need to stop treating local admin rights as a permanent status and start treating them as a temporary exception. I’ve seen too many environments where “temporary” access becomes a permanent fixture because nobody bothered to check back a week later. You need to move toward a model of privilege escalation prevention that requires an explicit, logged request for elevated rights rather than letting users sit in a privileged group indefinitely. It’s tedious work, but it’s the only way to stop the bleeding.

Five things to actually check before you call it a day

  • Audit your local Administrators group, not just the Domain Admins. I’ve seen far too many machines where a technician added a local account three years ago for a “quick fix” and forgot it was still sitting there with full reign.
  • Look for the “shadow admins”—those users who aren’t in the admin group but have delegated permissions that let them reset passwords or change group memberships. If they can grant themselves rights, they might as well be admins.
  • Stop ignoring the service accounts. If a legacy application is running under a Domain Admin account instead of a Managed Service Account (MSA), you’ve just handed a lateral movement tool to anyone on your network.
  • Check the timestamps on your last privilege review. If your “audit” is just a spreadsheet someone updated once in 2022, you aren’t auditing; you’re just documenting your own negligence.
  • Verify the “why” behind every exception. If a user needs admin rights because “the software won’t run without it,” don’t just grant it; find the specific folder or registry key that needs the permission and target that instead.

The Bottom Line

Stop chasing registry “hacks” to secure your users; real security comes from stripping local admin rights and actually managing your groups.

If you haven’t audited your administrative accounts in the last six months, you aren’t managing a fleet, you’re just hoping for the best.

Implement the principle of least privilege by necessity, not by suggestion, because a single compromised admin account makes all your other settings irrelevant.

Stop Guessing and Start Auditing

Stop Guessing and Start Auditing privileges.

At the end of the day, reviewing admin rights isn’t about finding some magic registry key that magically hardens your kernel; it’s about the tedious, unglamorous work of cleaning up after years of “temporary” fixes. We’ve covered why the Principle of Least Privilege is your best defense, why those legacy service accounts are ticking time bombs, and why you need to stop believing that a single script can solve a systemic culture of over-privilege. If you aren’t actively stripping rights and verifying who actually needs them, you aren’t managing a fleet—you’re just watching it grow more vulnerable with every update.

I know it feels like a slog, especially when you’re staring down a mountain of inherited permissions that no one wants to touch for fear of breaking a legacy app. But trust me, the headache of a manual audit is nothing compared to the fallout of a compromised domain admin account. Don’t just copy a checklist from a forum and call it a day. Build a process that actually reflects your environment, test the changes, and own your infrastructure. It’s better to spend your weekend fixing a permission error than your Monday morning dealing with a ransomware deployment.

Frequently Asked Questions

If I strip admin rights from my power users, how do I stop them from flooding my ticket queue every time they need to install a printer driver or a niche utility?

Look, I know the fear. You strip the rights and suddenly your ticket queue looks like a dam burst. But don’t just hand back the keys. If it’s printer drivers, push them via Group Policy or Intune; they shouldn’t be “installing” hardware anyway. For the niche stuff, look into Privilege Management tools or even just a staged local admin setup. If you’re still manually typing passwords for every tiny utility, you haven’t implemented least privilege—you’ve just created a bottleneck.

How do I actually audit who has local admin rights across a fleet of a few hundred machines without manually logging into every single desktop?

You aren’t going to go desk-to-desk with a USB stick; that’s a waste of your life. If you’re in a decent AD environment, use a PowerShell script via Group Policy or your RMM. I usually run a simple `Get-LocalGroupMember` script targeting the ‘Administrators’ group and pipe the output to a CSV on a network share. It takes ten minutes to write, and it’s the only way to see the real mess you’re dealing with.

Is there any point in auditing service accounts for admin privileges, or is that just more busywork that won't actually stop a lateral movement attack?

It’s not just busywork, but you’re right to be skeptical of the “audit everything” approach. If a service account has local admin rights just because some legacy installer demanded it in 2012, you’ve handed an attacker a golden ticket for lateral movement. I’ve seen it happen: a compromised service becomes the pivot point. Don’t just audit them; strip those rights. If the service breaks, find the specific permission it actually needs instead of defaulting to admin.

About Serge Oyelowo-Haan

Half the registry tweaks people swear by have done nothing since Windows 7. I test them.

Who Has Administrator and Why
Scroll to top