天天看點

攻防實戰:使用Ophcrack破解系統Hash密碼(一)查找資料(二)對下載下傳的工具進行試驗(三)彩虹表破解密碼防範政策

攻防實戰:使用Ophcrack破解系統Hash密碼

Simeon

   最近應antian365團隊的安全課題研究,我負責進行系統密碼攻防密碼破解子課題的研究,不研究還不知道,研究後感覺在安全的領域,越是深入,越是感覺自己了解的東西太少,在密碼破解上,平常用得最多的是LC5,關于使用LC5如何破解密碼,請看團隊撰寫的《系統密碼安全與審計》,LC5破解時間相對較長,一直以來俺都沾沾自喜,感覺自己密碼破解方面還是不錯的,可是通過本文的研究後,我徹底的無語了,一個不超過14位的系統密碼一般不超過5分鐘,絕大多數僅僅需要幾十秒中,這意味着當一個系統存在漏洞時,可以在很短時間内控制并滲透内部網絡!下面就将本人研究過程和研究方法跟讀者朋友一起分享,也歡迎緻力于網絡安全的朋友加入antian365研究團隊。

在課題研究過程中最重要的就是查找資料,查找資料的途徑主要是通過網絡搜尋引擎,去發現前輩們公布的研究結果。我首先通過Google在其搜尋款中輸入“Ophcrack”,然後選擇“中文網頁”,最後單擊“Google搜尋”,如圖1所示出來有294000多條記錄,看來“Ophcrack”還是比較流行的,威力巨大可見一斑!

圖1 查找Ophcrack資料

通過檢視他人的blog以及發表的文章我們對其進行分析和整理,最終擷取了以下一些資訊和資料:

(1)工具下載下傳:[url]http://sourceforge.net/project/showfiles.php?group_id=133599[/url]

(2)Ophcrack首頁:[url]http://ophcrack.sourceforge.net/[/url]

(3)英文維克關于彩虹表的定義和解釋:[url]http://en.wikipedia.org/wiki/Rainbow_table[/url]

(4)國内對彩虹表的研究:[url]http://www.antsight.com/zsl/rainbowcrack/[/url]

(5)目前有關研究Ophcrack與彩虹表的相關資料。

(1)XP free small (380MB)

辨別:SSTIC04-10k

破解成功率: 99.9%

字母數字表:

 123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

一句話該表有大小寫字母加數字生成,大小為388MB,包含所有字母數字混合密碼中99.9%的LanManager表。這些都是用大小寫字母和數字組成的密碼(大約800億組合)。

由于LanManager哈希表将密碼截成每份7個字元的兩份,我們就可以用該表破解長度在1到14之間的密碼。由于LanManager哈希表也是不區分大小寫的,該表中的800億的組合就相當于12*10的11次方(或者2的83次方)個密碼,是以也被稱為“字母數字表10K”。

(2)XP free fast (703MB)

辨別:SSTIC04-5k

成功率: 99.9%

0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

字母數字表5k大小為703MB 包含所有字母數字組合的密碼中99.9%的LanManager表。但是,由于表變成2倍大,如果你的計算機有1GB以上的RAM空間的話,它的破解速度是前一個的4倍。

(3)XP special (7.5GB)

辨別:WS-20k

成功率:96%

XP special擴充表 7.5GB,包含最長14個大小寫字母、數字以及下列33個特殊字元(!"#$%&'()*+,-./:;<=>?@[\]^_`{|} ~)組成的密碼中96%的LanManager表。該表中大約有7兆的組合,5*10的12次方(或者2的92次方)密碼,該表需要花錢購買。

(4)破解Vista的彩虹表

Vista free (461MB) 是免費用來破解Vista的hash密碼,而Vista special (8.0GB)需要購買。

<b>小知識:</b>

LM又叫LanManager,它是Windows古老而脆弱的密碼加密方式。任何大于7位的密碼都被分成以7為機關的幾個部分,最後不足7位的密碼以0補足7位,然後通過加密運算最終組合成一個hash。是以實際上通過破解軟體分解後,LM密碼破解的上限就是7位,這使得以今天的PC運算速度在短時間内暴力破解LM加密的密碼成為可能(上限是兩周),如果使用Rainbow tables,那麼這個時間數量級可能被下降到小時。

   Ophcrack軟體的安裝過程非常簡單,按照提示安裝即可,在安裝過程需要特别注意,不要選擇下載下傳彩虹表,安裝設定中會提供三個下載下傳選項,分别下載下傳WinXP (380MB)、Winxp (703MB)和Vista (461MB)彩虹表,如圖2所示,筆者在安裝過程中選擇它後下載下傳了數個小時,這個表可以在程式安裝完成後再下載下傳。否則安裝Ophcrack軟體要等彩虹表下載下傳完成後才能使用。

圖2 安裝時建議不下載下傳彩虹表

從程式菜單中直接運作Ophcrack軟體,如圖3所示,該軟體主要有“Load”、“Delete”、“Save”、“Table”、“Crack”、“Help”以及“Exit”七大主要子產品,“Load”主要負責裝載Hash或者sam檔案。“Delete”主要用來删除破解條目,“Save”主要儲存破解結果或者破解session,“Table”主要用來設定彩虹表,“Crack”是開始執行破解,“Help”是檢視幫助檔案,呵呵,“Exit”俺就不說了。

圖3 Ophcrack軟體主界面

在Ophcrack軟體主界面中單擊“Table”,接着就會出來如圖4所示的Table Selection界面,在預設狀态下,所有表都沒有安裝,通過該界面我們了解到一共有8個彩虹表,其中有三個是免費的。

圖4 選擇彩虹表

然後單擊并選中其中的一個條目,例如在本例中選擇“Xp free fast”,然後單擊“Install”按鈕,系統會自動到Ophcrack軟體的安裝目錄,不過本例是将三個壓縮檔案解壓到F盤,如圖5所示,選擇“Tables”即可,然後一次安裝所擷取的其它二個彩虹表。

圖5 選擇要安裝的彩虹表

注意:

(1)在Ophcrack軟體中其彩虹表的上級目錄名稱必須為“tables”,否則彩虹表安裝不會成功。

(2)彩虹表安裝成功後,其條目會變成綠色,且可以檢視一共有多少個表,如圖6所示。

圖6 彩虹表安裝成功

這裡的破解材料主要是指通過GetHashes、Pwdump等軟體擷取的系統Hash密碼值。如果沒有,就自己想辦法擷取一個吧。

   (1)加載sam檔案

單擊“Load”按鈕,選擇“PWDUMP file”,如圖7所示,一共有6個選項,第一個主要用于對單個Hash的破解,第二個是對擷取的Pwdump檔案進行破解,第三個是對加密的sam檔案進行破解,第四個和第五個主要用來審計或者破解本地和遠端Hash密碼。

圖7 選擇破解類型

(2)檢視HASH密碼值

在本例中選擇一個已經Pwdump的檔案,如果pwdump系統的hash密碼沒有錯誤,則會在Ophcrack軟體主界面中正确顯示,如圖8所示,在主界面中分别顯示“User”、“LM Hash”、“NT Hash”、“LM Pwd1 ”、“LM Pwd2”以及“NT pwd”等資訊。

圖 8顯示擷取的Hash密碼值

   (3)清理無用Hash值

   在本例中“IUSR_XFFZD-R1”、“TWWM_XFZD-SER1”和“TsInternetUser”這三個使用者是系統自身的,在密碼破解中基本沒有用處,除非有人對該賬号進行了克隆,是以可以分别選中需要删除的賬号,然後單擊主界面“Delete”按鈕,删除這三個無用的賬号以及我添加的“king$”賬号,僅僅留下并破解管理者賬号,清理完畢後如圖9所示。

圖9 清理無用使用者的Hash密碼值

  (4)執行破解

   單擊“Crack”案例開始破解,很快就破解出來了密碼為“www119”,其“LM Pwd1”值跟“NT pwd”相同,破解密碼的時間僅僅“37s”。

圖10 破解系統密碼成功

(5)檢視破解統計資訊

在主界面中單擊“statistics”,可以檢視關于破解hash密碼值的普通和詳細資訊,如圖11所示。

圖11檢視所破解密碼的有關統計資訊

(6)破解參數設定

    單擊“Preferences”打開破解參數設定視窗,如圖12所示,可以設定破解的線程,破解方式,是否隐藏使用者名等。

圖12 設定破解參數

通過彩虹表來破解密碼使得入侵者可以很友善的擷取系統的密碼,進而“正常”登入系統,讓管理者或者計算機的主人不太容易發現。通過研究,發現可以通過兩種方式來加強系統密碼的安全。

使用彩虹表破解14位以下的密碼相對容易,對于普通入侵者來說僅僅有三個免費表,是以破解的強度相對要弱一些,是以可以通過增加密碼設定的位數來加強系統密碼安全。筆者建議設定超過32位的密碼來加強系統的密碼安全。關于密碼的設定技巧有很多,在我們研究的專題中曾經提到過,在此為了照顧新朋友,可以再提一次密碼設定的技巧:

通過一句話來設定密碼,例如“2008-8月我國舉辦了奧運會,我去北京鳥巢觀看了比賽,感覺很爽!”。可以這樣設定“2008-8ywgjblayh,wqbjlcgklbs,gjhs!”,關于時間全取,标點符号全取,其他漢字取第一個字母,該密碼長度為33位,如果再想長一點,還可以增加。其本質就是選擇一句話或者詩詞中的某一段來設定,容易記住,且安全強度高。

LM這種脆弱的加密方式在Windows2003還在使用,可以通過更改加密方式為NTLM,進而提高系統密碼的安全,筆者在很多案例中也曾經發現通過pwdump以及GetHashes軟體擷取了hash值,但LC5以及Ophcrack軟體均不能破解。

可以通過設定系統資料庫參數禁用LM加密,代之以NTLM方式加密方法如下:

(1)打開系統資料庫編輯器;

(2)定位到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa;

(3)選擇菜單“編輯”,“添加數值”;

(4)數值名稱中輸入:LMCompatibilityLevel,數值類型為:DWORD,單擊“确定”;

(5)輕按兩下建立的資料,并根據具體情況設定以下值:

0 - 發送 LM 和 NTLM響應;

1 - 發送 LM 和 NTLM響應;

2 - 僅發送 NTLM響應;

3 - 僅發送 NTLMv2響應;(Windows 2000有效)

4 - 僅發送 NTLMv2響應,拒絕 LM;(Windows 2000有效)

5 - 僅發送 NTLMv2響應,拒絕 LM 和 NTLM;(Windows 2000有效)

(6)關閉系統資料庫編輯器;

(7)重新啟動機器

在Windows NT SP3引入了NTLM加密,在Windows 2000以後逐漸引入的NTLM 2.0加密。但是LM加密方式預設還是開啟的,除非通過上面的方法刻意關閉它。

最後為antian365.com打一個廣告,哈哈,歡迎愛好安全的朋友前來共同探讨和學習安全技術!

 本文轉自 simeon2005 51CTO部落格,原文連結:http://blog.51cto.com/simeon/122160

繼續閱讀