rpcclient enumeration

从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS红队专家)

Try Hard Security Group


相对标识符(RID)和安全标识符(SID)概述

**相对标识符(RID)安全标识符(SID)**是Windows操作系统中用于唯一标识和管理网络域内对象(如用户和组)的关键组件。

  • SIDs 用作域的唯一标识符,确保每个域都是可区分的。

  • RIDs 附加到SIDs以创建这些域内对象的唯一标识符。此组合允许对对象权限和访问控制进行精确跟踪和管理。

例如,名为pepe的用户可能具有将域的SID与其特定RID结合在一起的唯一标识符,以十六进制(0x457)和十进制(1111)格式表示。这导致在域内pepe的完整且唯一标识符如下:S-1-5-21-1074507654-1937615267-42093643874-1111

使用rpcclient进行枚举

来自Samba的**rpcclient实用程序用于通过命名管道与RPC端点进行交互**。在建立SMB会话后,通常需要凭据才能发出以下命令到SAMR、LSARPC和LSARPC-DS接口。

服务器信息

  • 要获取服务器信息:使用srvinfo命令。

用户枚举

  • 使用以下命令可以列出用户querydispinfoenumdomusers

  • 通过以下方式获取用户的详细信息queryuser <0xrid>

  • 使用以下命令获取用户的组queryusergroups <0xrid>

  • 通过以下方式检索用户的SIDlookupnames <username>

  • 使用以下命令获取用户的别名queryuseraliases [builtin|domain] <sid>

# Users' RIDs-forced
for i in $(seq 500 1100); do
rpcclient -N -U "" [IP_ADDRESS] -c "queryuser 0x$(printf '%x\n' $i)" | grep "User Name\|user_rid\|group_rid" && echo "";
done

# samrdump.py can also serve this purpose

枚举组

  • 使用enumdomgroups来枚举

  • 使用querygroup <0xrid>来获取组的详细信息

  • 通过querygroupmem <0xrid>来查看组的成员

枚举别名组

  • 使用enumalsgroups <builtin|domain>来枚举别名组

  • 使用queryaliasmem builtin|domain <0xrid>来查看别名组的成员

枚举域

  • 使用enumdomains来枚举

  • 通过lsaquery来检索域的SID

  • 使用querydominfo来获取域信息

枚举共享

  • 使用netshareenumall来列出所有可用的共享

  • 使用netsharegetinfo <share>来获取特定共享的信息

使用SID的附加操作

  • 使用lookupnames <username>来根据名称查找SID

  • 通过lsaenumsid来获取更多SID

  • 使用lookupsids <sid>来执行RID循环以检查更多SID

额外命令

命令

接口

描述

queryuser

SAMR

检索用户信息

querygroup

检索组信息

querydominfo

检索域信息

enumdomusers

枚举域用户

enumdomgroups

枚举域组

createdomuser

创建域用户

deletedomuser

删除域用户

lookupnames

LSARPC

查找用户名到SID的值

lookupsids

查找SID到用户名(RID循环)

lsaaddacctrights

为用户帐户添加权限

lsaremoveacctrights

从用户帐户中删除权限

dsroledominfo

LSARPC-DS

获取主域信息

dsenumdomtrusts

枚举AD森林中的受信任域

要更好地了解工具samrdumprpcdump的工作原理,请阅读Pentesting MSRPC

Try Hard Security Group

从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS Red Team Expert)

最后更新于