侵權(quán)投訴
訂閱
糾錯(cuò)
加入自媒體

內(nèi)網(wǎng)滲透—獲取Windows內(nèi)Hash密碼方法總結(jié)

在內(nèi)網(wǎng)滲透中,當(dāng)攻擊者獲取到內(nèi)網(wǎng)某臺(tái)機(jī)器的控制權(quán)后,會(huì)議被攻陷的主機(jī)為跳板,通過(guò)收集域內(nèi)憑證等各種方法,訪問(wèn)域內(nèi)其他機(jī)器,進(jìn)一步擴(kuò)大資產(chǎn)范圍。通過(guò)此類(lèi)手段,攻擊者最終可能獲得域控制器的訪問(wèn)權(quán)限,甚至完全控制基于Windows操作系統(tǒng)的整個(gè)內(nèi)網(wǎng)環(huán)境,控制欲環(huán)境下的全部機(jī)器。

Windows下安全認(rèn)證機(jī)制

Windows下的安全認(rèn)證機(jī)制總共有兩種,一種是基于NTLM的認(rèn)證方式,主要用在早期的Windows工作組環(huán)境中;另一種是基于Kerberos的認(rèn)證方式,主要用在域環(huán)境中。

image.png

圖1:NTLM認(rèn)證流程圖

這里主要對(duì)NTLM的認(rèn)證流程做一下說(shuō)明:

1、首先在客戶端中輸入username,password和domain,然后客戶端會(huì)把密碼進(jìn)行Hash后的值先緩存到本地。

2、Client將username的明文發(fā)送給DC(域控)。

3、DC會(huì)生成一個(gè)16字節(jié)的隨機(jī)數(shù),也就是挑戰(zhàn)碼(Challenge),然后再傳回給Client。

4、當(dāng)Client收到挑戰(zhàn)碼以后,會(huì)先復(fù)制一份,然后和緩存中的密碼Hash再一同混合Hash一次,混合后的值稱為response,之后Client再將challenge,response以及username一并都傳給server。

5、Server端在收到client傳過(guò)來(lái)的這三個(gè)值以后會(huì)把它們都轉(zhuǎn)發(fā)給DC。

6、當(dāng)DC接到過(guò)來(lái)的這三個(gè)值的以后,會(huì)根據(jù)username到域控的賬號(hào)數(shù)據(jù)庫(kù)(ntds.dit)里面找到該username對(duì)應(yīng)的hash,然后把這個(gè)hash拿出來(lái)和傳過(guò)來(lái)的challenge值再混合hash。

7、將混合后的hash值跟傳來(lái)的response進(jìn)行比較,相同則認(rèn)證成功,反之,則失敗,當(dāng)然,如果是本地登錄,所有驗(yàn)證肯定也全部都直接在本地進(jìn)行了。

在Windows2000以后,Windows機(jī)器都用NTLM算法在本地保存用戶的密碼,密碼的NTLM哈希保存在%SystemRoot%System32configSAM文件中。Windows操作系統(tǒng)中的密碼一般由兩部分組成:一部分為L(zhǎng)M Hash,另一部分為NTLM Hash。在Windows中,Hash的結(jié)構(gòu)通常如下:

Username:RID:LM-Hash:NT-Hash

在windows2000以后的系統(tǒng)中,第一部分的 LM-h(huán)ash 都是空值,因?yàn)長(zhǎng)M-h(huán)ash可以很容易的破解,所以windows2000之后這個(gè)值默認(rèn)為空,所以第二部分的NTLM-h(huán)ash才真正是用戶密碼的哈希值。在滲透測(cè)試中,通常可從Windows系統(tǒng)中的SAM文件和域控?cái)?shù)據(jù)庫(kù)的NTDS.dit文件(在域環(huán)境中,用戶信息存儲(chǔ)在NTDS.dit中)中獲得所有用戶的Hash。

使用PwDump工具獲取密碼Hash

PwDump7可以在CMD下提取出系統(tǒng)中的用戶的密碼hash,使用管理員權(quán)限直接運(yùn)行該工具即可:

image.png

獲取到Hash后,我們可以用破解工具來(lái)破解得到明文密碼,也可以進(jìn)行哈希傳遞攻擊來(lái)橫向滲透。

使用Mimikatz工具抓取Windows密碼

Mimikatz是安全人員在內(nèi)網(wǎng)滲透過(guò)程中的利器,它是由法國(guó)的一位大神研發(fā)的。攻擊者可以通過(guò)Mimikatz提升進(jìn)程權(quán)限注入進(jìn)程讀取進(jìn)程內(nèi)存。

Mimikatz的最大功能是可以直接讀取Windows操作系統(tǒng)的明文密碼,原理是lsass.exe是Windows系統(tǒng)的安全機(jī)制,主要用于本地安全和登陸策略,通常在我們登陸系統(tǒng)時(shí)輸入密碼后,密碼便會(huì)存貯在lsass.exe內(nèi)存中,經(jīng)過(guò)wdigest和tspkg兩個(gè)模塊調(diào)用后,對(duì)其使用可逆的算法進(jìn)行加密并存儲(chǔ)在內(nèi)存中,而Mimikatz正是通過(guò)對(duì)lsass.exe逆算獲取到明文密碼。

需要注意的是當(dāng)目標(biāo)為win10或2012R2以上時(shí),默認(rèn)在內(nèi)存中禁止保存明文密碼,但是我們可以通過(guò)修改注冊(cè)表的方式抓取明文,輸入以下命令即可:

Reg add HKLMSYSTEMCurrentContro

lSetControlSecurityProvidersWDigest /vUseLogonCredential /t REG_DWORD /d 1 /f

1  2  3  下一頁(yè)>  
聲明: 本文由入駐維科號(hào)的作者撰寫(xiě),觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問(wèn)題,請(qǐng)聯(lián)系舉報(bào)。

發(fā)表評(píng)論

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

安防 獵頭職位 更多
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)