PowerView
PowerView is a pure-PowerShell domain reconnaissance tool written by Will Schroeder (@harmj0y) as part of the PowerSploit offensive framework. It implements replacements for the Windows net * commands using PowerShell AD hooks and underlying Win32 API calls, plus “metafunctions” for user hunting, local-admin discovery, share hunting, and domain trust enumeration. Because it runs in-memory as script, it became the canonical tool for Active Directory enumeration from a compromised domain workstation — and a canonical AMSI bypass target, since modern Defender signatures flag it on load.
PowerView 2.0 renamed the classic cmdlets (Get-NetUser → Get-DomainUser, Invoke-UserHunter → Find-DomainUserLocation, Invoke-ShareFinder → Find-DomainShare, etc.); both naming generations appear below since older cheatsheets and implants still use the v1 names.
Passive reconnaissance
These calls replicate functions a normal domain client performs routinely, so they are rarely logged or alerted on:
Get-NetDomain; Get-NetDomainController
Get-NetUser; Get-NetUser -Username $USER
Get-NetComputer
Get-NetGroup "Domain Admins"; Get-NetGroupMember "Domain Admins" -Recurse
Get-NetDomainTrust; Get-NetForest
Get-DomainPolicy; (Get-DomainPolicy)."Kerberos Policy"
Get-UserProperty -Properties pwdlastset, logoncount, badpwdcount
Find-UserField -SearchField Description -SearchTerm "built"Find-UserField is a sleeper hit: admins periodically stash passwords or hints in user Description fields, readable by any authenticated domain user — see active-directory-enumeration.
Domain enumeration (LDAP-backed)
Get-DomainUser | select name, memberof # users + group membership
Get-DomainUser -SPN # service accounts → [[kerberoasting]]
Get-DomainGroupMember -Identity $GROUP # incl. nested groups
Get-NetLoggedon # historical logons (needs admin remotely)
Get-NetSession # live sessions (NetSessionEnum — no admin needed from servers)Get-DomainUser -SPN is the classic first step of kerberoasting: any account with a servicePrincipalName yields a crackable service ticket. Users with pre-authentication disabled feed as-rep-roasting; -KerberosPreuthNotRequired finds them directly.
Active reconnaissance
These functions touch every machine or share in the domain. Any org running netflow or SMB session monitoring will see the fan-out — treat as noisy:
Invoke-ShareFinder -Verbose # → Find-DomainShare
Invoke-FileFinder -Verbose # → Find-InterestingDomainShareFile
Invoke-EnumerateLocalAdmin -Verbose
Find-LocalAdminAccess -Verbose # machines where YOU have local admin
Find-PSRemotingAccessUser hunting (Invoke-UserHunter → Find-DomainUserLocation) is PowerView’s signature capability: it queries every domain machine with Get-NetSession / Get-NetLoggedon and reports where target users (default: Domain Admins) are logged in — no admin rights required for the session enumeration itself:
Invoke-UserHunter # find DA sessions domain-wide
Invoke-UserHunter -GroupName "RDPUsers"
Invoke-UserHunter -CheckAccess # also test local admin on hits
Invoke-UserHunter -Stealth # file-server-only, far less trafficThe -Stealth variant (formerly Invoke-StealthUserHunter) queries only file servers hosting user home directories — one session check per server instead of per machine. Once a privileged session is located, see active-directory-lateral-movement for the hop and active-directory-weak-permissions for ACL-based escalation that avoids touching the target’s password.
Opsec
- Defender and AMSI detect stock PowerView on load; AMSI bypass or in-memory obfuscation is a prerequisite on patched systems.
Get-*LDAP queries blend with normal directory traffic;Find-*/Invoke-*metafunctions generate one connection per domain host and are detectable.- Alternatives with a different telemetry profile: the RSAT ActiveDirectory module (active-directory-enumeration), ADSI searcher, or BloodHound (which automates the same collection and graphs the result).
Sources
- PowerSploit Docs — Recon (PowerView)
- Will Schroeder (@harmj0y) 2016 — PowerSploit — PowerView.ps1 (Recon)
- Will Schroeder (@harmj0y) 2016 — Make PowerView Great Again
- Will Schroeder (@harmj0y) 2015 — I Hunt Sys Admins
Related: active-directory-enumeration, active-directory-lateral-movement, active-directory-weak-permissions, kerberoasting, as-rep-roasting, amsi-bypass, bloodhound, windows-reconnaissance-powershell.