彩虹表破譯 | Hashcat
彩虹表破譯 | Hashcat
問題概述
-
破譯如下8位小寫字母加數字的口令(SHA1(passwd)):
eb1d44e685e37f25e877d11f2c557ddc76ae9269(7h9eez0y)
bdba993c7b4b1f5f407f9e24483a407ed85cbc3a(qsqq1wz9) -
破譯如下3位數字salt,6位小寫字母的口令(SHA1(passwd+salt))
a65493b136d58e1051fe83d3d975c745ff9edda2(cdopyq912)
分析
原理(無salt)
-
SHA1演算法原理:對於長度小於2^64位的訊息,SHA1會產生一個160位的訊息摘要。當接收到訊息的時候,這個訊息摘要可以用來驗證資料的完整性。在傳輸過程中,資料很可能會發生變化,此時就會產生不同的訊息摘要。對於任意長度的明文,SHA1首先對其進行分組,使得每一組的長度為512位然後對這些明文分組重複處理。對於每個明文分組的摘要生成過程如下:
(1)將512位的明文分組劃分為16個子明文分組,每個子明文分組為32位。
(2) 申請5個32位的連結變數,記為A、B、C、D、E。
(3)16份子明文分組擴充套件為80份。
(4)80份子明文分組進行4輪運算。
(5) 連結變數與初始連結變數進行求和運算。
(6) 連結變數作為下一個明文分組的輸入重複進行以上操作。
(7) 最後,5個連結變數裡面的資料就是SHA1摘要。 -
破譯方法及原理:
利用hashcat進行爆破。Hashcat包含的破譯的密碼型別多,正確率很高,是一個實用的密碼破譯工具,且可將GPU利用起來,這也提高了運算的速度。破譯的原理主要是通過爆破進行碰撞比較,匹配出相應的明文。密碼破譯的成功率主要取決於字典和採取的攻擊模式組合。字典很重要,一個好的字典可以輕鬆破譯出幾十萬甚至上百萬密碼口令,但同時需要結合規則模式、掩碼模式等。
破譯過程(無salt)
(1)eb1d44e685e37f25e877d11f2c557ddc76ae9269破譯(無salt)
命令列指令如下圖,“-a 3”使用掩碼攻擊,“-m 100”sha1型別,定義字符集為小寫字母與數字的8位隨機組合。
破譯結果如下,口令為7h9eez0y,共計用時28分05秒。
(2)bdba993c7b4b1f5f407f9e24483a407ed85cbc3a破譯(無salt)
命令列指令如下圖。“-a 3”使用掩碼攻擊,“-m 100”sha1型別,定義字符集為小寫字母與數字的8位隨機組合。
破譯結果如下圖,解密得,qsqq1wz9。共計用時14分20秒。
原理(有salt)
加鹽的實現過程通常是在需要雜湊的欄位的特定位置增加特定的字元,打亂原始的字串,使其生成的雜湊結果產生變化。對於使用者使用的密碼經過SHA1雜湊後得出的結果,由於密碼位數不夠長,該結果很容易被彩虹表破解,因此要在使用者的密碼中新增特定的字串,從而改變雜湊結果。
Salt的作用:只需要salt是隨機的,那麼就可以使攻擊者無法事先知道salt是什麼,無法查表和彩虹表。不同系統的salt是不一樣的,甚至是動態的,那麼使攻擊者陷入只能窮舉的境地。
破譯方法及原理:
仍舊利用hashcat進行爆破。破譯的原理是通過爆破進行碰撞比較,匹配出相應的明文。
破譯過程(有salt)
破譯結果為cdopyq912,執行時間為40秒。
報錯處理
使用hashcat破譯sha1型別口令。過程中出現的問題如下:
-
錯誤資訊:Custom-charset 1 is undefined.
定義字符集之後仍提示未定義,檢查後發現命令列指令錯誤將“1”與“l”混淆。
-
錯誤資訊: Temperature limit on GPU #3 reached, aborting…
爆破過程中GPU溫度過熱,被迫中止,之後採取破解一段時間暫停一下,之後再繼續破解的方式來防止溫度過高。
相關文章
- GPU破解神器Hashcat使用簡介GPU
- 破譯替換密碼的方法密碼
- L2-032 彩虹瓶
- 彩虹貓病毒[學習版]
- 彩虹排序 | 荷蘭旗問題排序
- Apache ShardingSphere 遇上得物“彩虹橋”Apache
- 數字化轉型報告:破譯人工智慧人工智慧
- 微破譯-php原始碼混淆解密破解工具推薦PHP原始碼解密
- “‘物’創彩虹,馳‘測’華夏雄姿”
- 七彩虹顯示卡怎麼樣 七彩虹顯示卡能玩什麼遊戲遊戲
- 風雨過後見彩虹:救園成功
- 對彩虹貓樣本分析的復現
- 【譯】表單元件的屬性相容性表元件
- [譯] 離線友好的表單
- Touch Bar上的彩虹貓 - Touch Bar Nyan Cat
- 編譯器的符號表管理編譯符號
- 《Iris Fall 彩虹墜入》的幕後開發故事
- 《彩虹六號:圍攻》如何克服萬難走向成功?
- VScode外掛 Rainbow安裝(程式碼彩虹屁神器)VSCodeAI
- 匹馬搶三關:訊飛翻譯機3.0的破障之戰
- 湖南一網站遭黑客破譯釋出大量招嫖資訊被查處網站黑客
- 後疫情時代,如何破譯北京餐飲行業的“反轉密碼”?行業密碼
- 通達信彩虹低吸選股指標公式原始碼指標公式原始碼
- 育碧重申正與騰訊合作《彩虹六號》國服
- 七彩虹CVN B460M主機板怎麼樣?七彩虹CVN B460M主機板評測
- 【譯】用 React 和 D3 建立圖表React
- C#,Winform軟體防破譯-原始碼加密簡單方法之.NET REACTOR(一)C#ORM原始碼加密React
- 彩虹橋架構演進之路-效能篇|得物技術架構
- 得物彩虹橋架構演進之路-負載均衡篇架構負載
- 唯快不破!華為雲釋出分散式編譯構建系統CodeArts Build分散式編譯UI
- [譯]Flask教程–將表單資料傳送到模板Flask
- [譯] 別再對 Angular 表單的 ControlValueAccessor 感到迷惑Angular
- 這才是我想要的彩虹進度條-[vue-ins-progress-bar]Vue
- FTX申請破產,孫宇晨“三大表態”保衛加密行業加密行業
- 破大防
- 七彩虹主機板按f幾進入u盤啟動 七彩虹主機板按哪個鍵進入bios啟動刷機iOS
- Ansible 2.7.5 支援模組總表(中文翻譯施工中)
- 所以,《彩虹六號:圍攻》到底需要怎麼樣的測試服?