安全科普:詳解Windows Hash與破解

考慮到網絡應用數(shù)據的安全性時际起,建立一個滲透測試方法變得越來越重要梁呈。我們越來越依賴于網絡通信與基于云的數(shù)據系統(tǒng)嘁锯,這些系統(tǒng)潛在的安全漏洞是我們所不知道的掂林。

設計和維護一個系統(tǒng)的安全已成為標準粘我,你怎么確定這些系統(tǒng)的安全性鼓蜒?答案在于如何通過滲透測試來保護你的信息資產安全。

概述

Hash涂滴,一般翻譯做“散列”友酱,也有直接音譯為“哈希”的柔纵,就是把任意長度的輸入(又叫做預映射缔杉, pre-image),通過散列算法搁料,變換成固定長度的輸出或详,該輸出就是散列值系羞。這種轉換是一種壓縮映射,也就是霸琴,散列值的空間通常遠小于輸入的空間椒振,不同的輸入可能會散列成相同的輸出,所以不可能從散列值來唯一的確定輸入值梧乘。簡單的說就是一種將任意長度的消息壓縮到某一固定長度的消息摘要的函數(shù)澎迎。

常用hash算法的介紹:

(1) MD4

MD4(RFC 1320)是 MIT 的Ronald L. Rivest在 1990 年設計的,MD 是 Message Digest(消息摘要) 的縮寫选调。它適用在32位字長的處理器上用高速軟件實現(xiàn)——它是基于 32位操作數(shù)的位操作來實現(xiàn)的夹供。

(2) MD5

MD5(RFC 1321)是 Rivest 于1991年對MD4的改進版本。它對輸入仍以512位分組仁堪,其輸出是4個32位字的級聯(lián)哮洽,與 MD4 相同。MD5比MD4來得復雜弦聂,并且速度較之要慢一點鸟辅,但更安全,在抗分析和抗差分方面表現(xiàn)更好莺葫。

(3) SHA-1及其他

SHA1是由NIST NSA設計為同DSA一起使用的匪凉,它對長度小于264的輸入,產生長度為160bit的散列值徙融,因此抗窮舉(brute-force)性更好洒缀。SHA-1設計時基于和MD4相同原理,并且模仿了該算法瑰谜。

Hash算法在信息安全方面的應用主要體現(xiàn)在以下的3個方面:

文件校驗

我們比較熟悉的校驗算法有奇偶校驗和CRC校驗欺冀,這2種校驗并沒有抗數(shù)據篡改的能力,它們一定程度上能檢測并糾正數(shù)據傳輸中的信道誤碼萨脑,但卻不能防止對數(shù)據的惡意破壞隐轩。

MD5 Hash算法的"數(shù)字指紋"特性,使它成為目前應用最廣泛的一種文件完整性校驗和(Checksum)算法渤早,不少Unix系統(tǒng)有提供計算md5 checksum的命令职车。

數(shù)字簽名

Hash 算法也是現(xiàn)代密碼體系中的一個重要組成部分。由于非對稱算法的運算速度較慢鹊杖,所以在數(shù)字簽名協(xié)議中悴灵,單向散列函數(shù)扮演了一個重要的角色。對 Hash 值骂蓖,又稱"數(shù)字摘要"進行數(shù)字簽名积瞒,在統(tǒng)計上可以認為與對文件本身進行數(shù)字簽名是等效的。而且這樣的協(xié)議還有其他的優(yōu)點登下。

鑒權協(xié)議

如下的鑒權協(xié)議又被稱作挑戰(zhàn)–認證模式:在傳輸信道是可被偵聽茫孔,但不可被篡改的情況下叮喳,這是一種簡單而安全的方法。以上就是一些關于hash以及其相關的一些基本預備知識缰贝。

windows hash

Windows hash由二部分組成馍悟,分別是LM HASH&NT HASH。Windows系統(tǒng)關于hash的組成如下:

用戶名稱:RID:LM-HASH值:NT-HASH值

1

Windows下LM HASH生成原理

LM HASH生成規(guī)則如下:

用戶的密碼被限制為最多14個字符剩晴。

用戶的密碼轉換為大寫锣咒。

系統(tǒng)中用戶的密碼編碼使用了OEM內碼頁

密碼不足14字節(jié)將會用0來補全。

固定長度的密碼被分成兩個7byte部分赞弥。每部分轉換成比特流宠哄,在分7bit為一組末尾加0,組成新的編碼

上步驟得到的8byte二組嗤攻,分別作為DES?key為“KGS!@#$%”進行加密毛嫉。

將二組DES加密后的編碼拼接,得到最終LM?HASH值妇菱。

實例演示:

假設明文口令是“admin”承粤,首先全部轉換成大寫“ADMIN”,

密碼字符串大寫后變換成十六進制串:41444D494E

轉換后的十六進制字符串按照二進制計算只有40bit闯团,為了滿足14字節(jié)的要求辛臊,所以需要補全72bit的二進制0,得最終補全后十六進制為:

41444D494E000000000000000000

將上述編碼(41444D494E000000000000000000)分成2組7byte的數(shù)據房交,分別為:

41444D494E0000

00000000000000

將每一組7byte的十六進制轉換為二進制彻舰,每7bit一組末尾加0,在轉換成十六進制組成得到2組8byte的編碼:

41444D494E0000—>40A212A894700000

00000000000000—>0000000000000000

利用上面計算出來的2組編碼候味,作為DES加密key分別對“KGS!@#$%”(換算成十六進制:4B47532140232425)字符刃唤,進行DES加密,如下:

40A212A894700000—-DES加密—-F0D412BD764FFE81

0000000000000000—-DES加密—-AAD3B435B51404EE

將二組值拼接白群,最終得到LM HASH值為:

F0D412BD764FFE81 AAD3B435B51404EE

驗證如下圖:

2

Windows下NTLM HASH生成原理

IBM設計的LM Hash算法存在幾個弱點尚胞,微軟在保持向后兼容性的同時提出了自己的挑戰(zhàn)響應機制,NTLM Hash便應運而生帜慢。假設明文口令是"123456"笼裳,首先轉換成Unicode字符串,與LM Hash算法不同粱玲,這次不需要添加0補足14字節(jié)"123456"->310032003300340035003600躬柬。

從ASCII串轉換成Unicode串時,使用little-endian序抽减,微軟在設計整個SMB協(xié)議時就沒考慮過big-endian 序允青,ntoh*()、hton*()函數(shù)不宜用在SMB報文解碼中胯甩。0×80之前的標準ASCII碼轉換成Unicode碼昧廷,就是簡單地從0x??變成 0×00??堪嫂。此類標準ASCII串按little-endian序轉換成Unicode串,就是簡單地在原有每個字節(jié)之后添加0×00木柬。對所獲取的 Unicode串進行標準MD4單向哈希皆串,無論數(shù)據源有多少字節(jié),MD4固定產生128-bit的哈希值眉枕,16字節(jié) 310032003300340035003600-進行標準MD4單向哈希->32ED87BDB5FDC5E9 CBA88547376818D4恶复,就得到了最后的NTLM Hash

NTLM Hash:32ED87BDB5FDC5E9CBA88547376818D4。

與LM Hash算法相比速挑,明文口令大小寫敏感谤牡,無法根據NTLM Hash判斷原始明文口令是否小于8字節(jié),擺脫了魔術字符串"KGS!@#$%"姥宝。MD4是真正的單向哈希函數(shù)翅萤,窮舉作為數(shù)據源出現(xiàn)的明文,難度較大腊满。

驗證如下:

開始破解

抓取Windows hash

在windows中分別用了LM HASH和NTLM HASH對密碼進行了加密套么,所以抓取任意一個HASH都可以破解密碼,只不過如果二個HASH都可以抓到碳蛋,密碼的破譯成功率會大大提升胚泌。經常使用抓windows hash的工具很多,像SAMInside肃弟,gethash等等玷室。個人比較傾向于使用SAMinside工具,該工具不僅可以在線抓取windows hash 還可以導入存儲windows hash的 sam等文件獲取hash值笤受。

文件位置:C:\windows\system32\config\SAM在windows xp穷缤,server2003之前包括xp&2003的系統(tǒng)都可以通過工具抓取到完整的LM HASH&NT HASH的。這樣就可以直接通過在線的破譯網站進行密碼破解感论。但是之后的系統(tǒng)可以改變一些設置讓操作系統(tǒng)存儲LM HASH值到SAM文件中方便我們的抓取绅项。

xp下hash抓取及破解(略)

win 7下hash抓取及破解

步驟:導入本地的用戶hash值

看不清圖片,用戶名為nic的NT HASH為:209C6174DA490CAEB422F3FA5A7AE634

可以看到只能抓取到NT HASH值比肄,我們也可以通過NT HASH去破解windows密碼的,因為LM HASH和NT HASH只是二種不同的加密方式囊陡,針對同一個密碼芳绩。

看到了吧,沒有LM HASH照樣可以破密碼的喲撞反,只是有了LM HASH破解成功率會多點妥色。

但是當通過NT HASH無法破譯密碼的時候,我們就要想辦法把LM HASH給搞出來遏片,通過更改本地安全策略設置嘹害,具體步驟如下:

但是這個法子有點局限就是撮竿,必須下一次更改密碼后才生效。唉~

改完密碼后再抓:

LMHASH:A0A9F8A5B5510FFDE72C57EF50F76A05

NT HASH: 6097374CDF87C142A7F98798EBF4B402

我們先針對每一個生成的HASH進行破解:

LM HASH破解:

只有LM笔呀,破解出來的是大寫幢踏。

NT HASH破解:(ps: 換個長一點的密碼就付費了)

雙劍合璧,LM HASH&NT HASH破解:

輸入格式, LM HASH:NT HASH许师,正確密碼就出來了


本文作者:小螺號(點融黑幫)房蝉,點融網高級安全工程師,網絡白帽子微渠。主要從事應用漏洞挖掘搭幻,入侵事件監(jiān)控及防御等工作。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末逞盆,一起剝皮案震驚了整個濱河市檀蹋,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌云芦,老刑警劉巖续扔,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異焕数,居然都是意外死亡纱昧,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門堡赔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來识脆,“玉大人,你說我怎么就攤上這事善已∽莆妫” “怎么了?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵换团,是天一觀的道長悉稠。 經常有香客問我,道長艘包,這世上最難降的妖魔是什么的猛? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮想虎,結果婚禮上卦尊,老公的妹妹穿的比我還像新娘。我一直安慰自己舌厨,他們只是感情好岂却,可當我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般躏哩。 火紅的嫁衣襯著肌膚如雪署浩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天扫尺,我揣著相機與錄音筋栋,去河邊找鬼。 笑死器联,一個胖子當著我的面吹牛二汛,可吹牛的內容都是我干的。 我是一名探鬼主播拨拓,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼肴颊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了渣磷?” 一聲冷哼從身側響起婿着,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎醋界,沒想到半個月后竟宋,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡形纺,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年丘侠,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片逐样。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡蜗字,死狀恐怖,靈堂內的尸體忽然破棺而出脂新,到底是詐尸還是另有隱情挪捕,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布争便,位于F島的核電站级零,受9級特大地震影響,放射性物質發(fā)生泄漏滞乙。R本人自食惡果不足惜奏纪,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望酷宵。 院中可真熱鬧亥贸,春花似錦、人聲如沸浇垦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽男韧。三九已至朴摊,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間此虑,已是汗流浹背甚纲。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留朦前,地道東北人介杆。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像韭寸,于是被迫代替她去往敵國和親春哨。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內容

  • (1)Windows系統(tǒng)下的Hash密碼格式 Windows系統(tǒng)下的Hash密碼格式為:用戶名稱:RID:LM-H...
    SaveNull閱讀 1,988評論 0 1
  • 簡介 用簡單的話來定義tcpdump恩伺,就是:dump the traffic on a network赴背,根據使用者...
    保川閱讀 5,961評論 1 13
  • 0x01 目錄 常見編碼: ASCII編碼 Base64/32/16編碼 shellcode編碼 Quoted-p...
    H0f_9閱讀 12,814評論 2 17
  • 要如何形容, 詩人筆下的尘客——菩提花凰荚? 或許是, 這是寄宿制高中的盛夏褒脯? 周五補課的傍晚便瑟, 兩排梧桐樹間, 女學...
    沈公子的北京話閱讀 455評論 0 0
  • 親愛的自己番川,不管怎么樣到涂,記得笑,記得看看窗外的風景爽彤,你會發(fā)現(xiàn)世界很美养盗。有不一樣的天空。不管自己有多差勁适篙,只要心懷希...
    艾曉義閱讀 206評論 0 0