昨天的文章中咱們說了在域滲透中白銀票據的利用,可是如何對其進行防護呢,若是沒有看過白銀票據利用的文章,請移步《域滲透 | 白銀票據利用》網絡
0x01 介紹session
0x02 防護方法性能
0x03 防護效果3d
對於白銀票據的利用,咱們昨天已經說的很明白了,就是由於server在接收到client發送的ticket時,server僅僅只知道本身的hash,也就是server hash,而對於其餘的server session key、end time等等內容都是能夠進行僞造的,因此防護的方向就是從兩個方面來下手了,一個是保護本身的hash不被獲取到,另外一個就是增長驗證方式,驗證ticket的正確性,對於域認證的流程還不熟悉的能夠移步《Windows認證 | 域認證》code
介紹中也說的很明白了,因此第一個防護方法就是儘可能保證憑證不被獲取到,這個就很少說了,咱們着重說一下第二種方法,增長驗證方式。server
咱們能夠經過開啓PAC(Privileged Attribute Certificate)特權屬性證書保護功能,開啓PAC後,PAC會將client發送的票據ticket發送給KDC,由KDC來進行驗證ticket是否有效,就可使所僞造的票據沒法進行利用。blog
開啓的方式是更改註冊表中的一個值,將ci
··· HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Kerberos\Parameters ···get
中的ValidateKdcPacSignature
設爲1
博客
可是我發現這個下面並無這個值,通過查詢官網,得知須要增長一個dword
值
有興趣的能夠去看看微軟是怎麼解釋Windows中的PAC驗證的
https://blogs.msdn.microsoft.com/openspecification/2009/04/24/understanding-microsoft-kerberos-pac-validation/
這裏手動增長一下,注意是在server端進行添加的
這裏須要明確一下,若是開啓PAC的話會增長一些網絡和性能上的消耗,並且看狀況可能還比較嚴重。
開啓PAC後,咱們再驗證一下白銀票據的利用是否還能夠奏效
能夠發現所僞造的ticket已經不起做用了
本文由博客一文多發平臺 OpenWrite 發佈!