Windows的登陸密碼是儲(chǔ)存在系統(tǒng)本地的SAM文件中的技肩,在登陸Windows的時(shí)候浮声,系統(tǒng)會(huì)將用戶輸入的密碼與SAM文件中的密碼進(jìn)行對(duì)比泳挥,如果相同,則認(rèn)證成功屉符。
SAM文件是位于%SystemRoot%\system32\config\
目錄下的,用于儲(chǔ)存本地所有用戶的憑證信息唆香,但是這并不代表著你可以隨意去查看系統(tǒng)密碼。
Windows本身是不會(huì)存儲(chǔ)明文密碼的躬它,在SAM文件中所儲(chǔ)存的是密碼的hash值,在登陸對(duì)比的時(shí)候冯吓,也是先將用戶的輸入轉(zhuǎn)換為hash值疮跑,才進(jìn)行對(duì)比的。
目前在Windows中所使用的密碼hash被稱為NTLM hash祖娘,全稱為:NT LAN Manager,它是一個(gè)由數(shù)字和字母組成的32位的值贿条,是經(jīng)過(guò)hex、Unicode整以、MD4三層加密后得到的。
所以在登陸的時(shí)候邑商,他整體的流程是這樣的
注:winlogon是用來(lái)管理用戶登陸和登出的凡蚜,lsass是用于本地安全和登陸策略的
說(shuō)完了NTLM hash再說(shuō)一下LM hash,LM hash是NTLM hash的前身朝蜘,它本身是非常脆弱的,對(duì)于它的生成規(guī)則就不多說(shuō)了谱醇,用網(wǎng)上的一個(gè)解釋來(lái)讓大家看看。
通過(guò)這個(gè)大家也能很明確的看出來(lái)奈附,進(jìn)行LM hash加密的時(shí)候,其中的key值是一個(gè)固定值KGS!@#$%
煮剧,這就意味著它被暴力破解出來(lái)的可能性是非常大的将鸵,而且通過(guò)LM hash的生成機(jī)制顶掉,還能很清楚的看出來(lái)如果密碼是否大于等于7位挑胸,因?yàn)楫?dāng)位數(shù)不足時(shí),后面會(huì)用0來(lái)補(bǔ)全嗜暴,所以當(dāng)我們的密碼位數(shù)小于7時(shí),最終生成的LM hash的末尾字符是一個(gè)恒定不變的值:AA-D3-B4-35-B5-14-04-EE
闷沥。
目前大多數(shù)的Windows都是使用的NTLMhash的,在Windows Vista和WindowsServer 2008以前的系統(tǒng)還會(huì)使用LM hash
** 自WindowsVista和Windows Server 2008開(kāi)始,Windows取消LM hash蚂维。 **
也正是因?yàn)槊艽a都儲(chǔ)存在SAM文件中路狮,所以才會(huì)有了通過(guò)各種方法在線或者離線提取SAM文件中的hash值,當(dāng)然SAM文件也是不允許直接拷貝和訪問(wèn)的奄妨,需要通過(guò)一些其他的辦法來(lái)提取,最后通過(guò)彩虹表等其他的一些工具進(jìn)行破解即可得到明文密碼砸抛,或者通過(guò)Mimikatz讀取lsass.exe進(jìn)程能獲得已登錄用戶的NTLM hash,這部分內(nèi)容在網(wǎng)絡(luò)上也已經(jīng)有了相當(dāng)多的資料景东,想深入了解可以自己去網(wǎng)上查一查即可奔誓。
文章首發(fā)公眾號(hào):無(wú)心的夢(mèng)囈(wuxinmengyi)
這是一個(gè)記錄紅隊(duì)學(xué)習(xí)、信安筆記厨喂,個(gè)人成長(zhǎng)的公眾號(hào)
掃碼關(guān)注即可