題:
IT副總裁聲稱,他對所有16000名員工的PW都未加處理。他在騙我們嗎?
loneboat
2012-11-28 20:28:41 UTC
view on stackexchange narkive permalink

我在一家擁有16,000名員工的公司工作。我們的IT副總裁會定期發布帶有“技術提示”和其他IT內容的新聞通訊。本週新聞通訊的主題是“密碼安全性”。引言部分引起了我的注意:

我們只是解密了所有正在使用的用戶密碼,以查看員工是否使用了強密碼。我們使用了蠻力,rcracki,hashcat / oclHhashcat和john-the-ripper工具的組合來解密密碼。不要使用字典中的單詞;確保使用大小寫混合的符號;請勿將監視器的密碼寫在黃色的便籤紙上;等等...

現在,我不是密碼專家,但我對此表示懷疑,他聲稱他們已經“解密了所有用戶密碼”。我可以相信他們可能會通過他們的工具運行所有哈希並“解密”了大部分 ,但是他們擁有計算資源聲稱已經破解了它們的確是合理的嗎? >全部? (順便說一句,“解密”在這種情況下是否正確? 。但是他回答說,不是,他們確實已經解密了所有用戶密碼。

我很感激他在這裡嘗試教的安全課程,但是我的密碼是KeePass生成的8個隨機字符。我認為這非常好,它類似於 Q6&dt>w} (顯然不是,但與此類似)。

現代破解工具真的那麼強大嗎?還是這個傢伙可能只是以一次安全培訓的名義拉了我的腿?

P.S。我回復了他的電子郵件,詢問他是否可以告訴我密碼的最後兩個字符是什麼。尚無回复,但如果他設法完成,我將進行更新!


編輯: 一些答案正在討論我的特定密碼長度。請注意,他不僅聲稱他們破解了我的密碼(如果他們將我挑出來,這是可以相信的),而且他聲稱他們對所有用戶都這樣做了-我們擁有超過10,000名員工!我並不是很天真地認為這意味著10,000個安全的好密碼,但是即使哪怕1%的用戶都有一個安全的密碼,他們仍然聲稱自己已經破解了100個安全的密碼!

如果您的公司使用不帶鹽的MD5之類的弱算法而不是bcrypt之類的良好算法對密碼進行哈希處理,則可能是可行的。但是,在這種情況下,該人員無權提供有關密碼管理的建議。
如果他們解密了所有密碼,那麼問題就不在於密碼,而是密碼的加密和存儲方式(即他遇到了問題,而不是您)。
是的這是一個令人震驚的說法,最合理的解釋是,他實際上根本不是技術人員,並且自己沒有從事這項工作,並且誤報了他的技術基礎對他的影響。技術人員:是的,我們針對您的所有密碼運行了這些密碼,並且我們能夠檢索到一些密碼。 PHB:偉大的Scott!我必須在Twitter上發布!
我想問一下,為什麼以允許他們認為較弱的密碼的方式配置他們的系統。
@Blrfl很難消除所有真正的弱密碼,尤其是當您幾乎無法控制應用程序如何過濾它們時。例如,即使遵循Windows密碼策略的行業最佳做法(最少12個字符,3/4個字符類型等),“ Password1234”仍然有效。即使禁止在24次迭代中重複輸入密碼,您仍然可以將下一個密碼設為“ Password5678”。
我認為您對此要求的處理有些過分。誰在乎真正的答案是90%還是100%?如何以任何方式改變您的行為?如何改變外賣課程或信息?不是。聽起來您只是在麻煩您的副總裁,因為,好吧,“互聯網上的某人有問題”。那可能不是職業發展的舉動。我認為技術人員過分精確地解釋陳述是一個普遍的錯誤。了解如何與與您不一樣的其他人進行有效溝通非常重要。
@Iszi:好吧,當然,但這不是重點。 OP的VP IT部門陷入困境,因為他認為系統中100%的密碼是“弱”的。如果百分比很高,那意味著他甚至沒有做基礎就清除真正簡單的部分。
@Blrfl:需要明確的是,他並沒有聲稱100%的密碼是弱密碼,而是在他破解了“ 100%”的密碼以檢查其安全性之後聲稱其中許多密碼是弱密碼。
@loneboat:好點了。不過,如果有足夠的優點值得用手指對用戶搖晃,那麼他的安全性就不是很強。
@D.W。 :也許我對此有誤解。我沒有對此“工作”。我最初給他的電子郵件是出於誠實,真誠的好奇心。我很遺憾我只在學校上過一門加密課程,因為它確實讓我著迷。我只是被他說已經破解了“ 100%”的密碼而震驚。當他通過電子郵件重申“是的,的確是其中的100%”時,我並不是在“以過於精確的方式解釋聲明”,這就是他的真正意思(並確認!)。並不是說“互聯網上有人錯”-老實說,我想知道這是否合理,所以我將其帶到SE.com
@Blrfl:也許。為了公平起見,無論如何,這都是在他定期發送的定期通訊的背景下進行的,所以也許這不是“搖晃手指”,而是更多的是,“ Gee,我忘了為通訊。” :-)
如果他真正破解了100%的密碼,那麼我不會告訴任何人,因為那將意味著他的密碼也很弱,而且IT部門的所有密碼也很弱。因此,我不認為該公司確實存在問題,或者如果正確的話。
他可以解密所有密碼嗎?我想這可能是可行的,但還有一個更重要的問題:**如果副總裁撒謊,指出這一點你會得到什麼?他會被解僱嗎?還是只是讓一個比你年長的人生氣,讓他們丟面子並使你自己的事業變得神經病而煩惱?
他可能只是說“試圖解密”,因為他通過這些程序運行它們,而那些足夠弱的程序則被解密了。
+1安德魯。有人吹噓自己的應用程序存儲的16k密碼已被破解,應該為此感到羞恥,因為它使用了錯誤的哈希機制。除錯誤的密碼外,還存在技術問題。
您是否查看過Ars Technica的這篇文章:[為什麼密碼從未如此弱小,而破解者從未如此強大](http://arstechnica.com/security/2012/08/passwords-under-assault/)?
有了足夠的CUDA內核或幾個FPGA,這是可行的。但是可能性很小。如果他聲稱自己是在CPU上這樣做的,那他就是在說謊。即使使用普通的舊無鹽MD5。它只是台式機硬件,但是要在4.2GHz的8個內核上破解單個8個字符的MD5哈希可能要花費許多小時。
十三 答案:
Rory McCune
2012-11-28 20:59:26 UTC
view on stackexchange narkive permalink

100%破解密碼的唯一現實方法是在Windows上存儲LM哈希。 LM哈希分為2個七個字符的塊,使暴力破解/彩虹表攻擊切實可行(它們也不區分大小寫,從而更加容易)。彩虹表就是為此而存在的,並且很容易實現。

此外,任何不在詞典中(或可通過對詞典單詞進行變異來找到)具有10多個字符密碼的人都不會被破解。在任何合理的系統上,即使算法較弱(例如md5)且無鹽。 AFAIK彩虹表不能用於這麼長的密碼(作為參考,免費彩虹表具有2.8 TB的MD5哈希數據包,最高可提供約9個字符的密碼(不是完整的字符集)。

我要說的一點是,如果我是IT副總裁,我將專注於擺脫LM哈希,而不僅僅是因為可以100%檢索密碼的原因而告訴人們有關良好密碼的做法密碼:)

我認為對於他來說,他瀏覽了所有16,000個員工密碼並選擇假設公司中沒有一名員工足夠小心以提供一個強密碼就使他成為一名非常典型/糟糕的IT經理,這並不奇怪。
請注意,如果密碼為15個字符或更長,則LM兼容性將被禁用。因此,即使LM是默認設置,也無法保證100%。
Thomas Pornin
2012-11-28 21:22:36 UTC
view on stackexchange narkive permalink

“解密”不是正確的術語。也就是說,密碼可能被加密而不是被散列,但是知道加密密鑰(也就是解密密鑰)的人可以很容易地進行解密;因此,使用開膛手約翰之類的破解工具毫無意義。

因此,您的副總裁使用的是近似術語。因此,有可能他可能也使用了近似的語法和語法。他們很可能將10k +密碼提交給了破解工具,並破解了其中的一部分(相當大的比例要求執行VP干預,但並非全部)。可以說,他對“全部”的使用過於過分熱情。

現在,我準備相信他可以破壞一半的密碼。據記載,早在1988年的 Morris蠕蟲可以用少於一千個單詞的字典破解現有密碼的大約10%...

請注意,我已通過電子郵件向他發送了郵件,他回答說,他確實確實破解了所有這些文件。正是這種說法使我懷疑這是否是一個可疑的主張。
我仍然覺得這是一個可疑的說法。但是,要求他透露_your_密碼的最後兩個字符是測試它的正確方法。他遵守了嗎?
實際上,使用公開密鑰加密時,加密密鑰不是解密密鑰(長鹽很好,這樣可以保證安全)
不幸的是,@ratchetfreak:通常不會確定性地使用公鑰加密(例如RSA加密具有隨機填充),因此,如果沒有解密密鑰,則不能用於密碼_verification_ -除非鹽_is_是隨機填充,但這看起來像是在進行自製修改加密算法,這些事情需要格外小心。
RSA本身沒有填充,是標準添加了填充,RSA具有足夠大的n(例如2048位),您可以用鹽填充其餘位,本質上是2048位哈希
@ThomasPornin:不,他沒有回复我的第二封電子郵件。我看到3種可能性:(1)他有答案,但由於他是副總裁,所以我很幸運收到第一封答复,更不用說再等了,(2)我打電話給他虛張聲勢,他不想讓(3)他去租了幾個Amazon EC2實例,並且瘋狂地通過自己的工具運行我的密碼哈希,因此他不必承認自己撒了謊。 :-)
一旦我們假設他正在使用“近似術語”,就很可能是通過“破解”或“解密”來表示-“通過JtR運行”。也許“全部”的意思是“太多”。
@AviD-任何技術人員都不應使用“全部”來表示“太多”甚至“最多”。實際上,沒有人應該這樣做:這被稱為“說謊”。
@NathanLong當然可以,但是他顯然不是技術專家,他甚至可能不甚了解。所以,不要說謊,只是一無所知。也許說謊。
@AviD-他被聘為“ IT副總裁”,他剛剛發送了一封電子郵件,列出了密碼破解技術。如果他真的不是技術專家,那麼他就是一個專業的騙子。
@NathanLong參見之前的評論。根據經驗,他的措詞不准確-撒謊或誤解。
Iszi
2012-11-28 21:33:14 UTC
view on stackexchange narkive permalink

這裡有幾種可能性,其中有些已經被人們提及。無論採用哪種方式,無論您的VP(IT)都使用“解密的所有用戶密碼”,無論他使用的“解密的”定義是什麼,都是不重要的。

  1. 有問題的密碼是,
    • 您的VP可能是指內部Web應用程序的密碼,在該Web應用程序中,他們選擇使用加密而不是哈希。
    • 您的VP可能實際上是指的是Windows密碼,並且您公司的組策略允許使用可逆加密進行存儲。
  2. 您的VP所指的密碼是使用弱哈希算法存儲的,和/或
    • LM哈希是弱算法的一個示例,這是為實現向後兼容性而優化的Windows實施常見的算法。
    • 無法使用a每用戶鹽使字典&彩虹表攻擊變得更容易
  3. VP所指的密碼實際上可能是s用明文表示,他只是說他們被“解密”以掩蓋一個事實,即它們從來沒有被加密過/散列過。
  4. 您公司的員工實際上要做 非常弱密碼。
    • 無論您的密碼有多隨機,在相當長的一段時間內,8個字符都未被認為是“強”字符。
  5. ol>

    我認為該列表中的第4項不太可能,因此,除非其他三項中的任何一項都成立,否則您的副總裁很有可能只是誇大了一點。但是,除非您能聽到公司C級人員的聲音,否則我懷疑您可以做很多事情來改變,除了您自己的密碼的實際強度。為此:

  • 有人說“ 12是新的8”。我說去15。這不僅使密碼自然更強,而且還可以防止Windows將其存儲為弱LM哈希格式。 LM哈希只能處理最長14個字符的密碼。當您將密碼的長度更改為15個字符或更多時,Windows可能會發出警告消息,但是在大多數情況下,可以安全地忽略該密碼。
  • 請勿在多個應用程序中使用相同的密碼。至少,我建議保持您的工作密碼與用於個人帳戶的密碼不同。理想情況下,任何兩個應用程序都不應使用相同的密碼。
  • 請保留您正在執行的其他所有操作。從完整的ASCII字符集隨機生成密碼非常有用。只需確保最終產品包括所有四種字符類型,並且不包含真實單詞即可。
實際上,我認為#4是最有可能的罪魁禍首。過去,我們的IT部門一遍又一遍地告訴用戶,使用一串8位數的隨機字符代替單詞/名稱,而那是一個相當不錯的密碼。即使這些密碼的安全性已更改,該習慣仍然存在,即使在IT用戶中也是如此。
@Izkata是的,但是來自一個組織的16,000個用戶的密碼很難被弱到使用適當的哈希和鹽方法容易被破壞的密碼。
Polynomial
2012-11-28 20:41:39 UTC
view on stackexchange narkive permalink

解密不是正確的詞,但是他可能是出於可讀性而不是技術準確性。我也同意,他可能不會全部獲得它們,而是很大一部分。

現在,您的密碼有問題:如果輸入8個字符,則長度不會太長您的公司使用MD5或LM之類的快速哈希。一個不錯的基於GPU的破解程序可以實現大約50M MD5哈希/秒。如果您在QWERTY鍵盤上假定100個可打印字符,那麼對於八個字符的密碼,這是10,000,000,000,000,000的鍵空間,這是預計的〜3.15年的破解時間。

或者,他可能有一個巨大的8個字符的彩虹表來存放完整的字符集,這將立即捕獲您的密碼。

請注意,使用彩虹表並非完全_immediate_。如果該表包含_N_個密碼但具有_N / t_的存儲大小(因此是_t_倍的存儲優化),則應用該表意味著_t_查找(機械硬盤每秒可以進行100次查找)和_t²_計算量。節省空間的彩虹表(例如_t = 100000_)使用起來可能會有些昂貴。特別是要使用16000次...
@ThomasPornin當然可以,但是當您將其與蠻力進行比較時,它實際上是立竿見影的。
“一個不錯的基於GPU的破解程序可以實現大約5000萬次MD5哈希/秒”。在價格為100美元的GPU上可以輕鬆實現500M,而在高端硬件上則可以達到[50億哈希/秒](http://www.golubev.com/hashgpu.htm)。 [280億哈希/秒,價格為2700美元](http://blog.zorinaq.com/?e=42)
@FrankFarmer令人印象深刻。有趣。
Lucas Kauffman
2012-11-28 20:37:39 UTC
view on stackexchange narkive permalink

對於它們如何如此快速地破解它們,我可以考慮一下:

  • 他們在貴公司的Windows平台上使用LM Hashes(非常危險,因此,您面臨的問題不僅僅在於僅僅是弱密碼)
  • 他們使用了彩虹表攻擊,並且彩虹表很大(可以輸入8個字符)
  • 他們將密碼存儲為加密的,而不是散列的,用其密鑰解密它們

根據當前標準,無論如何,對於大多數普通用戶來說,8個字符已經足夠強大,但是我始終建議至少使用12個字符。對於某些關鍵系統,我總是建議16。有些人認為這是“過度殺傷力”,但我寧願使它們“太”強而不是太弱。如果您使用KeePass保護密碼,則實際上不必擔心密碼是什麼,因為無論如何您都無需記住。

Callum Wilson
2012-11-28 21:35:21 UTC
view on stackexchange narkive permalink

我在客戶端上進行了類似的練習(Windows LM哈希),並且使用原始海報中提到的類似工具獲得了超過75%的用戶密碼。這種類型的攻擊通常會獲取超過90%的8個字符(西方的&英語語言)派生密碼。密碼越長,字符集越寬-密碼越難,通過率越低。在我的客戶中,許多密碼不超過8個字符,這使我的生活很輕鬆。 25%的客戶是長客戶或不在彩虹表中的字符。寬字符集所有可用密碼的存儲庫(例如,大多數不包括£),並且如果密碼通常少於10個字符,則很有可能他的命中率接近100%。

JZeolla
2012-11-28 23:24:16 UTC
view on stackexchange narkive permalink

正如我將要提到的那樣,很多人對此進行了詳盡的闡述,其中許多人在技術上正確地選擇了所提供的選項(由於技術上合理且完整,因此請特別注意Iszi的響應)。但是,我只想給我兩分錢,說這可能是發生的兩件事之一。

  1. 他們使用可逆加密(AD組策略選項)存儲密碼,因此,它只是使用加密,而他確實“解密”了密碼。這是一個可怕的想法,但是人們這樣做是為了密碼審核或與舊應用程序兼容。

  2. 他在撒謊,他們破解了大多數(但不是全部)密碼。

  3. ol>

    也有可能他們存儲LM哈希;我不認為這是他們正在做的原因是因為在這種情況下,他們嚴重缺乏適當的安全性。

    我在工作中一直都在破解密碼,我不得不說,我從未破解過所有密碼。我為一家擁有約50,000名員工的公司工作,通常我們會花1個小時的時間來破解大約8,000個密碼,也就是一頭霧水。

    一旦您經過了1個小時的努力,破解密碼的難度就會成倍增加(因為它們通常是複雜的非字典性單詞,長度足夠長),因此我們通常會停在那裡,除非我們試圖證明一個觀點或破解一個特定的密碼。大多數安全團隊無法在大型公司中始終監控和審核每個員工的密碼,因此我們選擇每季度一次最容易破解和重新破解密碼的方式。

KeithS
2012-11-29 04:53:54 UTC
view on stackexchange narkive permalink

讓我說,如果您的IT VP實際上確實破解了100%的密碼,那麼除了用戶選擇的純文本密碼的相對弱點或強項之外,您還有一些明顯的安全漏洞。

一些可能性:

  • 您實際上並沒有使用哈希。許多“內置”安全庫(例如用於組策略或ASP.NET的安全庫)都選擇使用加密而不是哈希密碼。目的是允許管理員恢復密碼丟失的帳戶,而不會完全丟失該帳戶。但是,如果將其設計為有效可逆的,那麼它可以有效地被逆轉。如果有人可以使用這種方式合法地解密密碼,那就是CIO,但他可能使用了破解工具只是為了說明自己不需要管理權限。
  • 您使用的是受破壞的哈希。 MD5,LMHash等損壞,應從不用於密碼存儲。
  • 您使用的哈希技術上具有加密強度,但不適合密碼,例如SHA1 / 2。這通常是由於以下兩個原因之一:
    • 散列計算太快,使得併行攻擊(例如GPU或基於殭屍網絡的破解程序)變得可行。
    • 密碼,甚至是好的密碼與用於安全哈希的其他事物(例如消息摘要/校驗和)相比,具有相對較低的熵。除非使用隨機添加的鹽人工增加熵,否則與發現較大輸入大小的衝突消息相比,暴力破解者通常花費更少的時間來查找衝突密碼。

讓VP向您展示他為獲取明文密碼所做的工作以及密碼本身。它不應該那麼容易。如果您對所使用的哈希函數有任何控制權(意味著它不是內置的,例如用於組策略),我會考慮切換到專門為密碼哈希設計的哈希,例如bcrypt或scrypt。這兩個之所以能很好地起作用,是因為它們非常慢,而且不僅現在它們很慢,而且還可以通過使用鍵派生函數將它們配置為始終很慢,這些函數派生了salt並對其執行可變的指數複雜度運算以“溫暖”基於密碼的哈希。 BCrypt是一個完整的散列,內置了KDF和密碼。 scrypt只是KDF,可以與任何安全加密(例如AES)配對。

Phillip Schmidt
2012-11-29 00:09:32 UTC
view on stackexchange narkive permalink

高度懷疑他們這樣做是沒有大量(無法實現的)處理能力(對於蠻力部分而言,除非它只佔整個過程的一小部分)。高質量的哈希算法幾乎不可能破解,因此如果他“解密”了密碼,那麼他可能必須主要使用暴力手段。

此外,“解密”不是正確的術語,解密顯然意味著曾經對密碼進行過加密,並且加密意味著雙向功能。哈希只是一種單向功能,即,它不能進行逆向工程(嗯,有點,但這超出了此答案的範圍)。

Happy
2012-11-29 03:43:30 UTC
view on stackexchange narkive permalink

8個字符是不夠的!(允許我在下面解釋)

儘管我想補充一下,但出於所有正確性,可以使用16k密碼如果使用弱算法對它們進行散列,則所有算法都會破解。首先,有人會用字典攻擊破解有時甚至超過一半(取決於同事的平均智商和粗心大意)的東西,然後一個人會使用彩虹表對其餘的東西進行暴力破解(假設它是未加鹽的MD5)。這將需要一些時間,但不會花費數年,除非幾個人使用一個非常長的強密碼。暴力破解將花費大量時間,可能太長,但是奇怪的是,“知識多數”並不關心良好的密碼,例如,即使他們確實喜歡您,也使用8個字符。 ;)

-並返回密碼長度-

儘管這在很大程度上取決於管理員使用什麼來散列密碼

例如bcrypt,甚至可能是更好的scrypt,具有較高的迭代次數將大大提高任何(可接受的)密碼的安全性。

但是,當您談論一家擁有16k員工的公司時,公司間諜活動之類的可能性。從事這些工作的人大多數時候都是技術嫻熟的人,很可能會擁有一個不是很大但仍然很體面的殭屍網絡,而這些殭屍網絡是通過親自編寫和分發的小型病毒槽(例如放在海盜灣里的視頻遊戲)獲得的。 p>

我使用此示例說明了他們如何以此為目標的遊戲玩家,意味著他們將擁有大量可以在需要時偷取的gpu

通過這種方式,上面建議的多項式很快將“預期的破解時間約為3.15年”除以一千台具有非常不錯的gpu卡的計算機,這些卡可以在閒置時被竊取。

現在,您的MD5哈希密碼僅在〜1.149天之內被破解

(因此,假設1%的用戶隨機生成了8個字符的密碼,例如您, 那是160 x 1.149 = 221.37天,因此要花半年多的時間才能測試所有密碼。)

儘管上面的Lucas Kauffman正確地指出12甚至更好從技術上講,最適合使用16個字符的密碼,但我自己還是更喜歡密碼短語

該網站的創建者傑夫·阿特伍德(Jeff Atwood)長期以來一直主張使用這種密碼! strong>

所以開始使用一個!易於記憶,難以破解。

不過,這並未解決OP中的實際問題。 :-(
@loneboat哦,您是對的,我有點(錯誤),儘管該部分現在很明顯,而其他答案也包含不錯的解釋,沒有考慮,但現在我添加了自己的內容,基本上重複了xD
@Happy請閱讀[answer]-答案應該* answer *。 OP並沒有詢問如何使用強密碼,實際上[這裡有很多這樣的問題](http://security.stackexchange.com/questions/tagged/password-policy)。您有什麼要添加的與此問題相關的信息,或將此信息添加到提出該問題的問題之一嗎?
Eran Medan
2012-11-30 09:57:53 UTC
view on stackexchange narkive permalink

在這個故事中,沒有什麼令我感到困擾的事情使我相信他在虛張聲勢(或者我想相信)

  • 有一些工具可以在企業級別實施密碼策略,使用密碼要比破解所有用戶密碼更快,更便宜,只是為了教育他們使用更好/更安全的密碼

  • 他說他解密了密碼,這是這是一個非常糟糕的信號,它暗示他們正在使用雙向加密,而不是使用單次哈希+隨機,每用戶鹽(以及慢速哈希功能,例如bcrypt,scrypt或PBKDF2),修復它可能比去容易並破解所有16,000個密碼。表明缺乏對安全術語的關注並不能與破解16,000個密碼所需的搖滾明星黑客技能並駕齊驅。

  • 這些密碼保護的系統不能似乎有任何嘗試失敗的延遲機制(允許蠻力攻擊),因此他們要么可以訪問某些內部數據庫並繞過任何鎖定/延遲機制,要么他們的系統上沒有任何此類保護。

我真的希望您的公司不要管理人們的資金,執行敏感的醫療程序或任何與人們的生活有關的事情,因為這是黑客的天堂。確保您公司的名稱保持匿名,因為從這裡聽起來不太好。

對於IT副總裁,我真的希望他在開玩笑,但是如果他設法做的話,那將是22點。他做到了,這僅意味著他沒有正確地完成自己的工作,如果他做不到,那他就是不誠實,那也很糟糕。

GdD
2012-11-28 20:37:03 UTC
view on stackexchange narkive permalink

使用一組彩虹表,它們完全有可能破解了公司中的每個密碼。 Rainbow表是在密碼破解嘗試之前創建的一組預先計算的哈希值,用於破解密碼的速度遠快於暴力破解方法。 rcracki是您的問題中列出的工具之一。 hashcat和JtR是強力工具,儘管它們也可以用於創建Rainbow表。

因此,毫無疑問,他說的是完全可能的。

順便說一句,如今只有8個字符的密碼是不夠的,至少要使用9個。

除最後一句話外的所有內容均為+1,最後一句話為-1。長度不能很好地指示開始的安全性,而且9個可打印的ASCII字符並不是特別安全。如果要考慮任何一種安全餘量,我將最少選擇12個隨機字符。
@Polynomial,我同意9個字符不是理想的,但比8個字符複雜一個數量級,並且一直在爭取使用戶使用更長的密碼。 9不如> 12好,但有時它是可以實現的。
Nick
2012-11-28 20:38:30 UTC
view on stackexchange narkive permalink

我不是安全專家,但是我的理解是,密碼加密保存到數據庫時是一種方法,無法撤消。因此,密碼被散列並保存到數據庫中。

您所能做的就是當一個人想要登錄時,對新輸入的密碼進行哈希處理,並將其與數據庫中的哈希進行比較,如果匹配,則密碼正確。

您可以找到另一個加密為相同值的值-這就是他列出工具的原因-它們具有解密密碼的作用。
散列而不是加密確實是行業最佳實踐。但是,儘管如此,仍然編寫了許多應用程序來加密密碼。更糟糕的是,他們可能會將密碼保留為純文本格式。請訪問http://plaintextoffenders.com/,以獲取來自Internet的大量示例。
您可以散列所有想要的內容,但是如果您使用MD5 / SHA-1(快速算法)並且不執行密碼策略,則擁有字典的任何新手黑客都可以在幾分鐘內使用強力破解強力EC2實例來破解大多數密碼/小時/天(取決於平均密碼長度和用戶數量)都在100美元以下。或者,如果您不給它們加鹽,則使用彩虹表甚至更容易。 Linked-in使用一種無鹽哈希值,並且在數據庫洩漏時破解了大多數密碼。但是真正的問題不是密碼,您所需要做的就是CEO的助手單擊惡意軟件鏈接,您就可以進入了。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...