目录导航
前言
在这篇博文中,我们将介绍使用本机 Windows/活动目录函数执行的 AD 枚举技术。使用这些功能的主要原因是在组织网络中保持隐身,以避免被蓝队成员发现。
您在组织的 AD 中保持隐身的次数越多,利用更多资源的可能性就越大。
许多红队更喜欢使用BloodHound,当然它是一个很好的工具,可以用来通过节点获取有关AD的图形信息。但它会在一小段时间内在网络日志上产生非常强烈的噪音。蓝色团队成员会清楚地了解您的存在。我们将在另一篇文章中讨论 BloodHound。
我们可以轻松地使用 0-day 漏洞获取域用户的访问权限,但它受到高度监控,组织将很快对其进行修补和审核。企业组织始终遵循“假设违规方法”进行内部评估。红队最好的办法就是悄悄溜进去。
你越是耐心地列举 AD,它就会让你对 AD 有一个鹰眼的视角。大多数红队成员没有正确列举,因此他们陷入了操作/评估的中间。你列举的关于 AD 的细节越多,你利用它的可能性就越大,你对它的影响就越大。
让我们使用我们被入侵的域用户开始我们的枚举。对于枚举,强烈建议在现代 Windows 系统中使用 PowerShell。
基本枚举
让我们开始使用 powershell 窗口枚举我们的用户。这些可以由任何域用户完成。
查看您在当前域中访问的用户名
PS C:\Users\sharingan> whoami
adlab\sharingan
获取您正在访问的当前计算机的名称
PS C:\Users\sharingan> hostname
PC2021ID01
获取当前用户的权限

PS C:\Users\sharingan> whoami /priv
PRIVILEGES INFORMATION
----------------------
Privilege Name Description State
============================= ==================================== ========
SeShutdownPrivilege Shut down the system Disabled
SeChangeNotifyPrivilege Bypass traverse checking Enabled
SeUndockPrivilege Remove computer from docking station Disabled
SeIncreaseWorkingSetPrivilege Increase a process working set Disabled
SeTimeZonePrivilege Change the time zone Disabled
推荐的枚举工具
我们还将使用两种最常用的工具以隐秘的方式进行枚举
PowerView
参考如下链接进行安装
将其装入机器内:
PS C:\Users\sharingan> Invoke-WebRequest https://raw.githubusercontent.com/PowerShellEmpire/PowerTools/master/PowerView/powerview.ps1 -OutFile PowerView.ps1
PS C:\Users\sharingan> Import-Module .\PowerView.ps1
Import-Module : File C:\Users\sharingan\PowerView.ps1 cannot be loaded because running scripts is disabled on this
system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ Import-Module .\PowerView.ps1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : SecurityError: (:) [Import-Module], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess,Microsoft.PowerShell.Commands.ImportModuleCommand
我们也应该绕过ExecutionPolicy
,以便加载一个 powershell 脚本。
PS C:\Users\sharingan> powershell -ep bypass
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Try the new cross-platform PowerShell https://aka.ms/pscore6
PS C:\Users\sharingan> Import-Module .\PowerView.ps1
活动目录模块
如果您具有管理员权限,则可以轻松安装 AD 模块。默认情况下不存在。
应安装 RSAT(远程服务器管理工具包)
Import-Module Server-Manager
Add-WindowsFeature RSAT-AD-Powershell
绕过 AD 模块的管理员权限,
为此,我们需要一个重要的 DLL
Microsoft.ActiveDirectory.Management.dll
该 DLL 通过 RSAT 从 DC 导入以启用 AD 模块
该 DLL 在 DC 中的位置,
C:\Windows\Microsoft.NET\assembly\GAC_64\Microsoft.ActiveDirectory.Management\
我们也可以手动进行,绕过管理员权限
Microsoft.ActiveDirectory.Management.dll
装入机器内
PS C:\Users\sharingan> Invoke-WebRequest https://github.com/samratashok/ADModule/raw/master/Microsoft.ActiveDirectory.Management.dll -OutFile ADModule.dll
PS C:\Users\sharingan> powershell -ep bypass
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Try the new cross-platform PowerShell https://aka.ms/pscore6
PS C:\Users\sharingan> Import-Module .\Import-ActiveDirectory.ps1
现在 AD 模块已成功加载,无需管理员权限
枚举域
让我们开始使用本机 Windows 函数枚举有关当前域的一些详细信息。
获取当前域信息
PS C:\Users\sharingan> [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()
Forest : ADLab.local
DomainControllers : {TAMILCTF-DC.ADLab.local}
Children : {}
DomainMode : Unknown
DomainModeLevel : 7
Parent :
PdcRoleOwner : TAMILCTF-DC.ADLab.local
RidRoleOwner : TAMILCTF-DC.ADLab.local
InfrastructureRoleOwner : TAMILCTF-DC.ADLab.local
Name : ADLab.local
从这个单一的本机函数中,您可以从字面上获得有关信息
- Name of the current domain
- Forest of the current domain
- Domain Controller (DC) of the current domain
- Children of the current domain
- Parent of the current domain
- DCs with different roles
要获取 DC 的 IP 地址,您可以使用ping
或nslookup
PS C:\Users\sharingan> ping ADLab.local
Pinging ADLab.local [192.168.116.134] with 32 bytes of data:
Reply from 192.168.116.134: bytes=32 time<1ms TTL=128
Reply from 192.168.116.134: bytes=32 time=1ms TTL=128
Reply from 192.168.116.134: bytes=32 time<1ms TTL=128
Reply from 192.168.116.134: bytes=32 time=1ms TTL=128
Ping statistics for 192.168.116.134:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
PS C:\Users\sharingan> nslookup ADLab.local
Server: UnKnown
Address: 192.168.116.134
Name: ADLab.local
Address: 192.168.116.134
但任何通过 DNS 的交互都可能被发现,因为 DNS 是红队的攻击媒介之一。
使用 PowerView 枚举当前域,
PS C:\Users\sharingan> Get-NetDomain
Forest : ADLab.local
DomainControllers : {TAMILCTF-DC.ADLab.local}
Children : {}
DomainMode : Unknown
DomainModeLevel : 7
Parent :
PdcRoleOwner : TAMILCTF-DC.ADLab.local
RidRoleOwner : TAMILCTF-DC.ADLab.local
InfrastructureRoleOwner : TAMILCTF-DC.ADLab.local
Name : ADLab.local
使用 AD 模块枚举当前域,
PS C:\Users\sharingan> Get-ADDomain
DomainSID : S-1-5-21-995680175-2722998285-2164436367
AllowedDNSSuffixes : {}
LastLogonReplicationInterval :
DomainMode : Windows2016Domain
ManagedBy :
LinkedGroupPolicyObjects : {cn={2F2F53C6-04A8-4F8D-9DE6-BE90DB096A3C},cn=policies,cn=system,DC=ADLab,DC=local
,
CN={31B2F340-016D-11D2-945F-00C04FB984F9},CN=Policies,CN=System,DC=ADLab,DC=local}
ChildDomains : {}
ComputersContainer : CN=Computers,DC=ADLab,DC=local
DomainControllersContainer : OU=Domain Controllers,DC=ADLab,DC=local
ForeignSecurityPrincipalsContainer : CN=ForeignSecurityPrincipals,DC=ADLab,DC=local
Forest : ADLab.local
InfrastructureMaster : TAMILCTF-DC.ADLab.local
NetBIOSName : ADLAB
PDCEmulator : TAMILCTF-DC.ADLab.local
ParentDomain :
RIDMaster : TAMILCTF-DC.ADLab.local
SystemsContainer : CN=System,DC=ADLab,DC=local
UsersContainer : CN=Users,DC=ADLab,DC=local
SubordinateReferences : {DC=ForestDnsZones,DC=ADLab,DC=local, DC=DomainDnsZones,DC=ADLab,DC=local,
CN=Configuration,DC=ADLab,DC=local}
DNSRoot : ADLab.local
LostAndFoundContainer : CN=LostAndFound,DC=ADLab,DC=local
DeletedObjectsContainer : CN=Deleted Objects,DC=ADLab,DC=local
QuotasContainer : CN=NTDS Quotas,DC=ADLab,DC=local
ReadOnlyReplicaDirectoryServers : {}
ReplicaDirectoryServers : {TAMILCTF-DC.ADLab.local}
DistinguishedName : DC=ADLab,DC=local
Name : ADLab
ObjectClass : domainDNS
ObjectGuid : db306b0e-d072-414a-8e79-5fd4e7576941
PropertyNames : {AllowedDNSSuffixes, ChildDomains, ComputersContainer, DeletedObjectsContainer...}
AddedProperties : {}
RemovedProperties : {}
ModifiedProperties : {PublicKeyRequiredPasswordRolling}
PropertyCount : 30
现在,我们可以看到许多与当前域相关的详细信息。
枚举用户
AD包含大量用户。用户是 AD 的对象。枚举用户将使您了解您的目标或特定用户的角色,可用于以后利用。
列出使用net.exe
来自当前域的用户,
PS C:\Users\sharingan> net user /domain
The request will be processed at a domain controller for domain ADLab.local.
User accounts for \\TAMILCTF-DC.ADLab.local
-------------------------------------------------------------------------------
Administrator aidenpearce369 allina.kenyon
allissa.pru allsun.linoel alyss.rosie
amalie.edythe annaliese.stormy anthiathia.ondrea
arabela.kylie babbie.gabriel beatriz.pearl
benita.maud bernadene.flss bobbee.amelia
bobette.cornelle bonny.fionna bridie.lonny
chelsea.lanny clare.francoise clementine.caroljean
coletta.sharona corella.marie daisi.adena
dannie.phillis ddene.glenda debra.meriel
dela.kelcie dorris.sally dorthy.hyacinthe
dyan.hertha elly.madelon ermengarde.noni
fawn.dora florance.lindy flss.pris
frederica.daniela gabriela.caryn george.cordi
ginger.eveleen Guest hannie.conchita
holly-anne.jasmine ibbie.irma ibbie.lexie
ivie.gerry jacquie.myrtice janenna.nanette
janey.leontine jania.lauree joly.jenine
jordana.lyndsey juana.ladonna karen.kala
katharyn.lura katya.merl kay.annora
kayley.marylee kirbie.sandra kirby.arlene
konstantine.noellyn koo.augustine krbtgt
kynthia.elfreda lacie.anette laureen.quintina
lauretta.garnette leora.netti lian.babs
liane.cleo lillian.harriett lyndsay.ajay
lynne.nisse madlen.isabelita malissia.biddy
marita.lynda marya.minette max.grier
merrilee.hazel mindy.jessi moyra.maryanne
nadine.karlie nana.aimil onida.bobbie
opalina.dee dee ophelie.federica orelee.laurie
pam.georgie perla.lamar petronille.joanie
querida.jaquith raina.constantia rakel.maye
rebekkah.joete ricca.lelah rinnegan
sabine.julieta salome.carmela sapphire.agretha
seka.alissa selene.kaela sharingan
sharleen.laurianne shay.kincaid sibbie.pauli
sqlservice stephi.meggie
The command completed successfully.
使用 PowerView 列出用户,
PS C:\Users\sharingan> Get-NetUser | Select -ExpandProperty samaccountname
Administrator
Guest
krbtgt
sharingan
aidenpearce369
rinnegan
sqlservice
...
使用 AD 模块列出用户,
PS C:\Users\sharingan> Get-ADUser -Filter * | Select -ExpandProperty SamAccountName
Administrator
Guest
krbtgt
sharingan
aidenpearce369
rinnegan
sqlservice
...
在 PowerView 中枚举有关当前用户的更多详细信息,
PS C:\Users\sharingan> Get-NetUser -UserName sharingan
logoncount : 8
badpasswordtime : 12/12/2021 9:08:00 AM
distinguishedname : CN=Itachi Uchiha,CN=Users,DC=ADLab,DC=local
objectclass : {top, person, organizationalPerson, user}
displayname : Itachi Uchiha
lastlogontimestamp : 12/12/2021 9:08:38 AM
userprincipalname : [email protected]
name : Itachi Uchiha
objectsid : S-1-5-21-995680175-2722998285-2164436367-1104
samaccountname : sharingan
codepage : 0
samaccounttype : 805306368
whenchanged : 12/12/2021 5:08:38 PM
accountexpires : 9223372036854775807
countrycode : 0
adspath : LDAP://CN=Itachi Uchiha,CN=Users,DC=ADLab,DC=local
instancetype : 4
usncreated : 12791
objectguid : b3947efe-54aa-4e75-b03c-4f6133f22933
sn : Uchiha
lastlogoff : 12/31/1600 4:00:00 PM
objectcategory : CN=Person,CN=Schema,CN=Configuration,DC=ADLab,DC=local
dscorepropagationdata : 1/1/1601 12:00:00 AM
givenname : Itachi
lastlogon : 12/12/2021 6:31:31 PM
badpwdcount : 0
cn : Itachi Uchiha
useraccountcontrol : 66048
whencreated : 11/20/2021 6:54:14 PM
primarygroupid : 513
pwdlastset : 11/20/2021 10:54:14 AM
usnchanged : 25426
您可以看到一些重要的属性,例如特定用户的登录、注销、SID、GUID 和其他时间戳。这些细节在未来的立足点中扮演着重要的角色。
使用 AD 模块枚举当前用户,
PS C:\Users\sharingan> Get-ADUser sharingan -Properties *
GivenName : Itachi
Surname : Uchiha
UserPrincipalName : [email protected]
Enabled : True
SamAccountName : sharingan
SID : S-1-5-21-995680175-2722998285-2164436367-1104
DistinguishedName : CN=Itachi Uchiha,CN=Users,DC=ADLab,DC=local
Name : Itachi Uchiha
ObjectClass : user
ObjectGuid : b3947efe-54aa-4e75-b03c-4f6133f22933
PropertyNames : {AccountExpirationDate, accountExpires, AccountLockoutTime, AccountNotDelegated...}
AddedProperties : {}
RemovedProperties : {}
ModifiedProperties : {}
PropertyCount : 106
枚举用户属性
使用 PowerView 枚举上次登录、注销时间戳和登录计数,
PS C:\Users\sharingan> Get-UserProperty -Properties lastlogoff,lastlogon,logoncount | ft
name lastlogoff lastlogon logoncount
---- ---------- --------- ----------
Administrator 12/31/1600 4:00:00 PM 12/12/2021 6:31:18 PM 10
Guest 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
krbtgt 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
Itachi Uchiha 12/31/1600 4:00:00 PM 12/12/2021 6:31:31 PM 8
Monish Kumar 12/31/1600 4:00:00 PM 12/12/2021 10:53:12 AM 5
Nagato Uzumaki 12/31/1600 4:00:00 PM 12/12/2021 10:50:45 AM 3
SQL Database 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
Janenna Nanette 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
Lian Babs 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
George Cordi 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
...
枚举上次设置密码的时间、上次错误密码的时间戳以及使用 PowerView 的用户使用的错误密码次数
PS C:\Users\sharingan> Get-UserProperty -Properties pwdlastset,badpasswordtime,badpwdcount
name pwdlastset badpasswordtime badpwdcount
---- ---------- --------------- -----------
Administrator 11/20/2021 9:55:31 AM 12/31/1600 4:00:00 PM 0
Guest 12/31/1600 4:00:00 PM 12/31/1600 4:00:00 PM 0
krbtgt 11/20/2021 10:13:15 AM 12/31/1600 4:00:00 PM 0
Itachi Uchiha 11/20/2021 10:54:14 AM 12/12/2021 9:08:00 AM 0
Monish Kumar 11/20/2021 10:58:08 AM 11/20/2021 11:59:32 AM 0
Nagato Uzumaki 11/20/2021 11:01:42 AM 11/20/2021 11:33:18 AM 0
SQL Database 11/20/2021 11:05:21 AM 12/31/1600 4:00:00 PM 0
...
在企业 AD 中,枚举这些属性以识别诱饵用户非常重要。错误的密码似乎是一个容易破解的地方。但是从企业的角度来看,他们的安全策略不建议用户使用错误的密码。密码错误的用户被创建为诱饵以引诱红队。因此,分析坏密码计数并设置用户的时间和登录计数可以让您了解普通用户和诱饵用户。
枚举域策略
域策略是在域或 AD 对象上实现的一组安全策略,以按照自己的方式实现安全协议。
使用 PowerView 列出当前域中的可用域策略,
PS C:\Users\sharingan> Get-DomainPolicy
Unicode : @{Unicode=yes}
SystemAccess : @{MinimumPasswordAge=1; MaximumPasswordAge=42; LockoutBadCount=0; PasswordComplexity=0;
RequireLogonToChangePassword=0; LSAAnonymousNameLookup=0; ForceLogoffWhenHourExpire=0;
PasswordHistorySize=24; ClearTextPassword=0; MinimumPasswordLength=4}
RegistryValues : @{MACHINE\System\CurrentControlSet\Control\Lsa\NoLMHash=System.String[]}
KerberosPolicy : @{MaxTicketAge=10; MaxServiceAge=600; MaxClockSkew=5; MaxRenewAge=7; TicketValidateClient=1}
Version : @{Revision=1; signature="$CHICAGO$"}
从域策略中获取“系统访问”策略,
PS C:\Users\sharingan> (Get-DomainPolicy)."SystemAccess"
MinimumPasswordAge : 1
MaximumPasswordAge : 42
LockoutBadCount : 0
PasswordComplexity : 0
RequireLogonToChangePassword : 0
LSAAnonymousNameLookup : 0
ForceLogoffWhenHourExpire : 0
PasswordHistorySize : 24
ClearTextPassword : 0
MinimumPasswordLength : 4
从域策略中获取“Kerberos 策略”
PS C:\Users\sharingan> (Get-DomainPolicy)."KerberosPolicy"
MaxTicketAge : 10
MaxServiceAge : 600
MaxClockSkew : 5
MaxRenewAge : 7
TicketValidateClient : 1
枚举计算机
使用 PowerView 列出当前域中可用的可用计算机,
PS C:\Users\sharingan> Get-NetComputer
TAMILCTF-DC.ADLab.local
PC2021ID01.ADLab.local
PC2021ID02.ADLab.local
使用 AD 模块列出当前域中可用的计算机,
PS C:\Users\sharingan> Get-ADComputer -Filter * | Select -ExpandProperty DNSHostName
TAMILCTF-DC.ADLab.local
PC2021ID01.ADLab.local
PC2021ID02.ADLab.local
枚举计算机属性
使用 PowerView 枚举计算机的所有属性,
PS C:\Users\sharingan> Get-NetComputer -ComputerName PC2021ID01.ADLab.local -FullData
logoncount : 28
badpasswordtime : 12/31/1600 4:00:00 PM
distinguishedname : CN=PC2021ID01,CN=Computers,DC=ADLab,DC=local
objectclass : {top, person, organizationalPerson, user...}
badpwdcount : 0
lastlogontimestamp : 12/12/2021 9:06:42 AM
objectsid : S-1-5-21-995680175-2722998285-2164436367-1110
samaccountname : PC2021ID01$
localpolicyflags : 0
codepage : 0
samaccounttype : 805306369
whenchanged : 12/12/2021 5:06:42 PM
countrycode : 0
cn : PC2021ID01
accountexpires : 9223372036854775807
adspath : LDAP://CN=PC2021ID01,CN=Computers,DC=ADLab,DC=local
instancetype : 4
usncreated : 12885
objectguid : 1dc76462-50bc-48ca-9d0f-393dcacbea7a
operatingsystem : Windows 10 Enterprise Evaluation
operatingsystemversion : 10.0 (19044)
lastlogoff : 12/31/1600 4:00:00 PM
objectcategory : CN=Computer,CN=Schema,CN=Configuration,DC=ADLab,DC=local
dscorepropagationdata : 1/1/1601 12:00:00 AM
serviceprincipalname : {RestrictedKrbHost/PC2021ID01, HOST/PC2021ID01, RestrictedKrbHost/PC2021ID01.ADLab.local,
HOST/PC2021ID01.ADLab.local}
lastlogon : 12/12/2021 7:53:46 PM
iscriticalsystemobject : False
usnchanged : 25416
useraccountcontrol : 4096
whencreated : 11/20/2021 7:30:32 PM
primarygroupid : 515
pwdlastset : 11/20/2021 11:30:32 AM
msds-supportedencryptiontypes : 28
name : PC2021ID01
dnshostname : PC2021ID01.ADLab.local
使用 AD 模块 Ping 所有可用的计算机,
PS C:\Users\sharingan> Get-ADComputer -Filter * -Properties DNSHostName | %{Test-Connection -Count 1 -ComputerName $_.DNSHostName}
Source Destination IPV4Address IPV6Address Bytes Time(ms)
------ ----------- ----------- ----------- ----- --------
PC2021ID01 TAMILCTF-DC.... 192.168.116.134 32 0
PC2021ID01 PC2021ID01.A... 192.168.116.135 fe80::457c:1622:b1b6:11f4%6 32 0
[IGNORE ERROR] ...
枚举组
组也是类似于用户的 AD 对象。组是 AD 对象的集合,这些对象被维护以控制对资源的访问并维护对它们的 GPO。
列出域中的组使用 net.exe
PS C:\Users\sharingan> net group /domain
The request will be processed at a domain controller for domain ADLab.local.
Group Accounts for \\TAMILCTF-DC.ADLab.local
-------------------------------------------------------------------------------
*accounting
*Cloneable Domain Controllers
*DnsUpdateProxy
*Domain Admins
*Domain Computers
*Domain Controllers
*Domain Guests
*Domain Users
*Enterprise Admins
*Enterprise Key Admins
*Enterprise Read-only Domain Controllers
*Executives
*Group Policy Creator Owners
*IT Admins
*Key Admins
*marketing
*Office Admin
*Project management
*Protected Users
*Read-only Domain Controllers
*sales
*Schema Admins
*Senior management
The command completed successfully.
使用net.exe
,列出机器中的本地组
PS C:\Users\sharingan> net localgroup
Aliases for \\PC2021ID01
-------------------------------------------------------------------------------
*Access Control Assistance Operators
*Administrators
*Backup Operators
*Cryptographic Operators
*Device Owners
*Distributed COM Users
*Event Log Readers
*Guests
*Hyper-V Administrators
*IIS_IUSRS
*Network Configuration Operators
*Performance Log Users
*Performance Monitor Users
*Power Users
*Remote Desktop Users
*Remote Management Users
*Replicator
*System Managed Accounts Group
*Users
The command completed successfully.
使用 PowerView 列出所有组,
PS C:\Users\sharingan> Get-NetGroup
Administrators
Users
Guests
Print Operators
Backup Operators
Replicator
Remote Desktop Users
...
使用 AD 模块列出所有组,
PS C:\Users\sharingan> Get-ADGroup -Filter * | Select samaccountname
SamAccountName
--------------
Administrators
Users
Guests
Print Operators
Backup Operators
Replicator
Remote Desktop Users
...
枚举组成员
使用列出组的成员 net.exe
PS C:\Users\sharingan> net group sales /domain
The request will be processed at a domain controller for domain ADLab.local.
Group name sales
Comment
Members
-------------------------------------------------------------------------------
george.cordi ivie.gerry joly.jenine
katharyn.lura madlen.isabelita petronille.joanie
ricca.lelah selene.kaela
The command completed successfully.
使用 PowerView 列出组的成员,
PS C:\Users\sharingan> Get-NetGroupMember -GroupName "Office Admin" | Select -ExpandProperty "MemberName"
salome.carmela
kynthia.elfreda
selene.kaela
ddene.glenda
使用 AD 模块列出组的成员,
PS C:\Users\sharingan> Get-ADGroupMember -Identity accounting | Select -ExpandProperty SamAccountName
bernadene.flss
flss.pris
fawn.dora
benita.maud
nana.aimil
枚举特定用户的组
我们的用户有可能出现在一个有趣的 AD 组中(可能并不总是必须出现在自定义组中。但可以出现在默认组中)
使用 PowerView 为特定用户枚举组,
PS C:\Users\sharingan> Get-NetGroup -UserName fawn.dora
ADLAB\accounting
PS C:\Users\sharingan> Get-NetGroup -UserName salome.carmela
ADLAB\Office Admin
使用 AD 模块枚举特定用户的组,
PS C:\Users\sharingan> Get-ADPrincipalGroupMembership -Identity fawn.dora | Select -ExpandProperty SamAccountName
Domain Users
accounting
PS C:\Users\sharingan> Get-ADPrincipalGroupMembership -Identity salome.carmela | Select -ExpandProperty SamAccountName
Domain Users
Office Admin
枚举组属性
使用 PowerView 枚举组的属性,
PS C:\Users\sharingan> Get-NetGroup -GroupName "Office Admin" -FullData
usncreated : 25196
grouptype : -2147483646
samaccounttype : 268435456
samaccountname : Office Admin
whenchanged : 12/12/2021 5:00:04 PM
objectsid : S-1-5-21-995680175-2722998285-2164436367-1212
objectclass : {top, group}
cn : Office Admin
usnchanged : 25349
dscorepropagationdata : {12/12/2021 5:00:04 PM, 12/12/2021 5:00:04 PM, 1/1/1601 12:00:00 AM}
name : Office Admin
adspath : LDAP://CN=Office Admin,CN=Users,DC=ADLab,DC=local
distinguishedname : CN=Office Admin,CN=Users,DC=ADLab,DC=local
member : {CN=Salome Carmela,CN=Users,DC=ADLab,DC=local, CN=Kynthia Elfreda,CN=Users,DC=ADLab,DC=local,
CN=Selene Kaela,CN=Users,DC=ADLab,DC=local, CN=Ddene Glenda,CN=Users,DC=ADLab,DC=local}
whencreated : 12/12/2021 5:00:03 PM
instancetype : 4
objectguid : 739fd7c7-f783-40d1-833d-d7b64475e8b9
objectcategory : CN=Group,CN=Schema,CN=Configuration,DC=ADLab,DC=local
我们可以通过枚举这些来获得 SID、GUID、LDAP ADs 路径甚至更多。
使用 AD 模块枚举组的属性,
PS C:\Users\sharingan> Get-ADGroup -Identity sales
GroupScope : Global
GroupCategory : Security
SamAccountName : sales
SID : S-1-5-21-995680175-2722998285-2164436367-1218
DistinguishedName : CN=sales,CN=Users,DC=ADLab,DC=local
Name : sales
ObjectClass : group
ObjectGuid : 84267fe7-dc67-49e6-a343-b0c768b03b2c
PropertyNames : {DistinguishedName, GroupCategory, GroupScope, Name...}
AddedProperties : {}
RemovedProperties : {}
ModifiedProperties : {}
PropertyCount : 8
目前,这将提供对受感染用户及其相关对象的良好理解。
还有更多的东西需要枚举,比如 OU、GPO、Trusts 等。我们将在后面的博客文章中讨论这些。
枚举越难,就越容易获得立足点和转向。
转载请注明出处及链接