《信息安全技術》實驗二 Windows口令破解

《信息安全技術》實驗二 Windows口令破解

實驗目的

  • 瞭解Windows口令破解原理
  • 對信息安全有直觀感性認識
  • 可以運用工具實現口令破解

實驗環境

  • 實驗機Windows Server 2003虛擬機

實驗工具

網絡信息安全教學實驗平臺中打開:算法

  • LC5
  • SuperDic

實驗原理

  1. 口令破解方法
    • 字典破解:經過破解者對管理員的瞭解,猜想其可能使用某些信息做爲密碼,例如其姓名、生日、電話號碼等,同時結合對密碼長度的猜想,利用工具來生成密碼破解字典。若是相關信息設置準確,字典破解的成功率很高,而且其速度快,所以字典破解是密碼破解的首選。
    • 暴力破解:對密碼可能使用的字符和長度進行設定後(例如限定爲全部英文字母和全部數字,長度不超過8),對全部可能的密碼組合逐個實驗。隨着可能字符和可能長度的增長,存在的密碼組合數量也會變得很是龐大,所以暴力破解每每須要花費很長的時間,尤爲是在密碼長度大於10,而且包含各類字符(英文字母、數字和標點符號)的狀況下。
  2. 口令破解方式
    • 離線破解:離線破解攻擊者獲得目標主機存放密碼的文件後,就能夠脫離目標主機,在其餘計算機上經過口令破解程序窮舉各類可能的口令,若是計算出的新密碼與密碼文件存放的密碼相同,則口令已被破解。能夠將口令破解程序的工做流程用下圖表示。
      dVM1H.png
      其中,候選口令產生器做用是不斷生成可能的口令。有幾種方法產生候選口令,一種是用枚舉法來構造候選口令(暴力破解),另外一種方法是從一個字典文件裏讀取候選口令(字典破解);口令加密過程就是用加密算法對從口令候選器送來的候選口令進行加密運算而獲得密碼。這要求加密算法要採用和目標主機一致的加密算法。加密算法有不少種,一般與操做系統的類型和版本相關;密碼比較就是口令比較,是將從候選口令計算獲得的新密碼和密碼文件中存放的密碼相比較。若是一致,那麼口令破解成功,可使用候選口令和對應的帳號登陸目標主機。若是不一致,則候選口令產生器計算下一個候選口令。
    • 在線破解:經過在線破解攻擊者可使用一個程序鏈接到目標主機,不斷地嘗試各類口令試圖登陸目標主機。目標主機系統中某些低等級的帳號的口令每每容易被嘗試成功,而後,攻擊者使用其帳號進入系統獲取密碼存放文件(Windows系統是SAM文件,Linux系統是passwd等文件),再使用離線破解方法破解高權限的口令(管理員口令等)。

實驗步驟

1、環境配置

  1. 打開實驗機,啓動VB中Windows Server 2003虛擬機;
  2. 雙擊「網絡信息安全教學實驗平臺」軟件,進入實驗平臺:dZk8g.png

2、字典破解

  1. 爲本機建立新用戶。爲了達到實驗效果,用戶口令不要設置得過於複雜,以下圖:dV3nI.png
  2. 進入實驗平臺,單擊工具欄「字典生成器」按鈕,啓動「字典生成器」。選擇「生日」標籤頁,輸入的年份與月份信息應儘可能包含步驟(1)中用到的生日日期,在「生成字典」標籤頁中肯定字典文件存放的路徑以及新用戶口令位數,最後生成字典文件。dV8Bt.png
  3. 單擊工具欄「LC5」按鈕,啓動LC5口令破解工具。選擇「Session」(會話)-->「Session Options…」(會話選項)菜單項,在彈出的「Auditing Options For This Session」對話框中選中「Dictionary Crack」項的「Enabled」,取消其它項的「Enabled」。單擊「Dictionary List」(字典列表)按鈕,導入步驟(2)中生成的字典文件。dV5uR.png
  4. 返回LC5主界面,選擇「Session」-->「Import…」(導入)菜單項,在彈出的「Import」對話框中導入本地用戶列表,選擇「Session」-->「Begin Audit」(開始審計)菜單項,開始字典破解用戶口令。dVID1.png
  5. 字典破解成功!以下圖:dVoHx.png

3、暴力破解

  1. 建立新用戶,建議用戶口令僅由英文字母和數字組成,長度不超過6位,如123abc。
  2. 選擇LC5的「File」-->「New Session…」(新會話)菜單項,新建會話。從新導入本地用戶列表。
  3. 在會話選項中僅選中「Brute Force Crack」(暴力破解)-->「Enabled」,並在「Character Set」(字符集)中選擇「alphabet+numbers」(字母表+數字), 開始暴力破解新建用戶口令。dVb4O.png
  4. 暴力破解成功!以下圖:dZP58.png
  5. 不一樣密碼強度的破解時間比較
    • 再次新建4個用戶,使用不一樣強度的用戶口令dZCUf.png
    • 新建LC5會話,在會話選項中選中暴力破解選項,字符設置選擇「Custom」(自定義)。爲了減小破解所需時間,請縮小自定義字符集。dZ9VP.png我選擇的自定義字符集爲26個字母(不分大小寫)+10個數字+_+兩個符號:dZFPS.png
    • 開始暴力破解,當破解完成後,查看LC5的破解信息,記錄各自的破解時間。破解ing...dZA2Q.png
    • 暴力破解成功!以下圖:dVljA.png根據實驗結果不難發現長密碼比短密碼破解要更多的時間,複雜密碼比簡單密碼須要更多的時間,這也就是設置複雜密碼可以提升系統安全性的緣由。

課後測試(部分)

  1. 對於口令破解軟件LC,下列描述錯誤的是( )。  數據庫

    【答案】A. LC不可以提供遠程登陸Windows系統的口令破解。windows

  2. 若是口令爲security123,在字典中存在組合security,不存在security123,那麼最好使用下列哪一種破解方式:()安全

    A. Dictionary attack網絡

    B. Hybrid dictionary attack函數

    C. Brute force attack工具

    D. Precomputed hash attack測試

    【錯選】C加密

    【答案】B操作系統

  3. 口令破解中,所謂詞典就是一個()。

    A. 配置破解方式屬性的文件

    B. 單詞或數字字符組合列表文件

    C. 批處理文件

    D. 可執行文件

    【答案】B

  4. 口令破解實驗中,密碼詞典的擴展名是( )。  

    【答案】C. dic

  5. 口令破解軟件的功能模塊不包括()。

    A. 候選口令產生器模塊

    B. 口令加密模塊

    C. 口令解密模塊

    D. 密碼比較模塊

    【錯選】B

    【答案】C

  6. 對於口令破解描述錯誤的是()。

    A. 理論上講,任何口令都是可破解的,只是時間問題。

    B. 口令破解器一般是對口令密文進行解密破解。

    C. 複雜口令的破解一般會更耗費時間。

    【答案】B

  7. Windows系統中,保護用戶帳戶及口令的文件是以下哪一個文件()。

    A. %systemroot%system32\config\SAM

    B. %systemroot%system32\config\SECURITY

    C. %systemroot%system32\driver\SAM

    D. %systemroot%system32\driver\SECURITY

    【錯選】B

    【答案】A

  8. 對於口令Sec16mASec16mA和Sec16mA來講,下列描述正確的是()。

    A. 在LM算法中,Sec16mASec16mA比Sec16mA安全性要好。

    B. 在LM算法中,Sec16mASec16mA和Sec16mA安全性同樣。

    【錯選】A

    【答案】B

  9. 下列對於LM算法與NTLM算法描述錯誤的是()。

    A. LM-Hash算法是在DES的基礎上實現的。

    B. LM-Hash不區分字母大小寫,長度最長是14個字符。

    C. NTLM-Hash不區分字母大小寫,長度可超過14個字符。

    D. NTLM-Hash基於MD4算法實現。

    【錯選】B

    【答案】C

  10. 關於彩虹表,下列描述錯誤的是()。

    A. 彩虹表技術以時空折中理論爲基礎,即增大存儲空間的開銷縮短密碼破解所須要的時間。

    B. 彩虹表是描述明文口令及其對應密文的一個大型數據庫,破解時經過密文直接反查明文。

    C. 彩虹表爲了節約空間,用哈希鏈的存儲方式進行存儲。

    D. 針對不一樣的HASH算法,有不一樣的彩虹表。

    【答案】B

思考題

  1. 分析口令破解軟件L0phtCrack(簡寫爲LC)的工做原理。
    • L0phtCrack是在NT平臺上使用的口令審計工具。它能經過保存在NT操做系統中cryptographic hashes列表來破解用戶口令的。一般爲了安全起見,用戶的口令都是在通過加密以後保存在hash列表中的。這些敏感的信息若是被攻擊者得到,他們不只可能會獲得用戶的權限,也可能會獲得系統管理員的權限。這後果將不堪設想。L0phtCrack可經過各類不一樣的破解方法對用戶的口令進行破解。
      • 最快也是最簡單的方法是字典攻擊。L0phtCrack將字典中的詞逐個與口令hash表中的詞做比較。當發現匹配的詞時,顯示結果,即用戶口令。L0phtCrack自帶一個小型詞庫。若是須要其它字典資源能夠從互聯網上得到。這種破解的方法,使用的字典的容量越大,破解的結果越好。
      • 另外一種方法名爲Hybrid。它是創建在字典破解的基礎上的。如今許多用戶選擇口令再也不單單只是由字母組成的,他們常會使用諸如」bogus11」或」Annaliza!!」等添加了符號和數字的字符串做爲口令。這類口令是複雜了一些,但經過口令過濾器和一些方法,破解它也不是很困難,Hybrid就能快速地對這類口令進行破解。
      • 最後一種也是最有效的一種破解方式「暴力破解」。按道理說真正複雜的口令,用如今的硬件設備是沒法破解的。但如今所謂複雜的口令通常都能被破解,只是時間長短的問題。且破解口令時間遠遠小於管理員設置的口令有效期。使用這種方法也能瞭解一個口令的安全使用期限。
  2. Windows 7的口令保護文件名稱及存儲位置是什麼?
    • SAM文件,保存在C:\windows\system32\config\下。
  3. Windows保護系統賬戶口令的算法有LM和NTLM,這兩種算法有什麼區別?
    • 早期SMB協議在網絡上傳輸明文口令。後來出現 LAN Manager Challenge/Response 驗證機制,簡稱LM,它是如此簡單以致很容易就被破解。
    • 微軟提出了WindowsNT挑戰/響應驗證機制,稱之爲NTLM。如今已經有了更新的NTLMv2以及Kerberos驗證體系。NTLM是windows早期安全協議,因向後兼容性而保留下來。NTLM是NT LAN Manager的縮寫,即NT LAN管理器。
  4. 爲了保護口令安全,設置口令應該遵循什麼樣的原則?
  5. Windows系統在什麼地方可設置賬戶密碼策略?賬戶密碼策略包括哪些內容?
  6. 在密碼破解中,常到彩虹表(Rainbow Table),彩虹表是什麼?
    • 彩虹表對我來講能夠算比較熟悉了,由於前不久的第三屆全國密碼技術競賽上,咱們小組就以彩虹表爲研究方向提交了題爲《基於彩虹表的動態口令程序分析及應用》的複賽做品,主要側重於新型彩虹表的設計實現和具體應用:dZKaV.pngdZM5T.png
      簡而言之,彩虹表是一個用於攻擊Hash函數的預先計算Hash鏈集。與常見的暴力攻擊和字典攻擊相比,彩虹表在時間複雜度和空間複雜度上有着更平衡的優點,並對動態口令破解有着顯著的效果。
  7. 你認爲口令破解的技術將如何發展?

參考資料

相關文章
相關標籤/搜索