目前較好的口令建議(注意:這不是NIST指南)
口令短因此容易被破解,但長的話太復雜且容易重復使用?口令設置標準到底應該怎樣才合適?
美國國家標準與技術研究院(National Institutes of Standards and Technology, NIST) 在其《數字身份指南》特刊800-63-3中發(fā)布的反向口令策略推薦引起了很多爭議。盡管其中包含了許多優(yōu)秀的,沒有爭議的身份驗證信息,但是很多人認為這些新的建議根本就是錯誤的。
在討論NIST口令策略的之前,我們先來回顧一下普遍認為的好的口令策略建議。
- 盡可能使用多因素身份驗證(Multi-Factor Authentication, MFA);
- 如果無法使用MFA,盡可能使用口令管理器,特別是當人們?yōu)槊總€安全領域創(chuàng)建僅有、長且隨機的口令的時候;
- 如果無法使用口令管理器,使用長且簡單的口令作為口令;
- 在所有情況下,不要使用通用口令(例如“password”或者“qwerty”),并且永遠不要在不同站點使用同樣的口令。
這些建議的總體問題是MFA和口令管理器不能適用于所有站點和設備。這意味你不得不使用一些口令。如果你的口令管理器選擇了隨機,長且復雜的口令,這些口令只適用于你的某些設備,而對其他設備無效,這意味著你需要記住或者記錄那些長而復雜的口令,以備不時之需。
為什么NIST改變了其口令策略
所以,無論如何你必須設置自己的口令。如果你使用了長口令,有一定的概率你會重復使用它們或者只是在不同站點做一些細微的變化。如果我們都開始使用長又簡單的口令,大部分人可能會使用簡單的英語單詞。就像我們今天遇到的口令復雜性問題一樣——復雜的口令實際上并不復雜(因為大多數人使用相同的32個字符),我們可能會創(chuàng)建黑客更容易猜到的口令。我們創(chuàng)建的口令從一個糟糕的口令,例如“Password”變成了“ThisIsMyPassword”,或者類似的口令。
NIST認為重復使用和不夠復雜的口令將帶來極大的風險,而這兩者也是其指南試圖所避免的。
引發(fā)爭議的NIST轉變
幾十年來,建立的口令策略要求使用長而復雜的口令,并定期更改口令。所以應該討論口令應該多長,多復雜,多久進行更改,而不是對基本原則進行討論。
這份在2017年6月發(fā)布的NIST口令策略最終版,顛覆了全球長期以來的口令原則?,F在,NIST表示使用更短且不復雜的口令是可以的,并且除非口令遭到泄露否則永遠不用更改口令。
NIST的新口令策略是根據以往大部分口令的泄露方式決定的。黑客活動的最初幾十年,大多數口令都是通過口令猜測或破解(例如將一個非明文形式轉換為口令明文形式)而泄露的。在這種威脅環(huán)境中,使用長而復雜的口令是有意義的。
如今,大多數口令都因底層口令存儲數據庫和社交工程遭到大量侵入而遭到泄露。互聯網上有數以億計的登錄名/口令組合,任何人都可以輕松訪問或購買。這種發(fā)起威脅的方式并不關心口令的長度或復雜程度。此外,長度和復雜性要求增加了用戶在其他站點上使用相同口令的概率。有一項研究表明,普通用戶有6到7個口令,會在100多個網站上重復使用。這是災難的根源。NIST表示考慮到不斷變化的戰(zhàn)場,遵循舊的建議將使你更有可能因為這些決定而受到損失。
這個變化如此之大,以至于近乎所有計算機專家都拒絕相信,因此也拒絕遵循新的指南。更重要的是,計算機安全法規(guī)或指導機構(PCI-DSS, HIPAA SOX等)也不例外,沒有一個機構計劃更新他們的口令策略。
關于這次口令爭論
許多人都是NIST忠實的支持者,因為討論和制定新NIST政策的是一群專注,有想法的,希望提高計算機安全的研究人員。NIST以前決策背后的數據通常是令人信服的。所以沒有理由只是因為每個人的直覺都不想接受新的建議,而去反對NIST。大家應該以數據為導向。
凱文·米特尼克用強有力的論據,證明使用短口令很容易被黑客攻陷。從那以后,他提出了更多證據和案例來支持自己的觀點,認為所有人不僅應該遵從舊的建議,還應該確??诹罡L(至少12到16個字符)。
不要遵循NIST的新口令建議
深入研究NIST新口令策略決策背后的數據,你會發(fā)現這些數據無法支持新的結論。有些數據能夠支持新策略,但不像過去認為的那樣令人信服。
比如,給你發(fā)送一個帶有惡意鏈接的郵件,如果點開了這個鏈接,將會泄露你的口令或口令散列。在某些案例中,只需在預覽模式下打開電子郵件就足夠了。微軟發(fā)布了相關補丁防止口令泄露,但幾乎沒有人使用它或使用其他任何能夠阻止口令泄露的防御措施。大多數公司都容易受到這類威脅。
以Adobe Acrobat漏洞為例,該漏洞在2月25日被修復。一個Adobe Acrobat文檔可能包含一個SMB鏈接,當用戶打開PDF文檔時,該鏈接將自動啟用。這個漏洞沒有觸發(fā)Acrobat的正常消息提醒,要求用戶批準URL讀取。就像前面討論的漏洞一樣,該漏洞可能會泄露用戶的NT散列。任何有理性的人都應該知道任何允許UNC路徑訪問的其他形式的文件都可能具有感染性,并泄露用戶的口令散列。
有多少的潛在受害者可能會點擊郵件中的惡意鏈接呢?相當多數量的人。多年來,社交工程和網絡釣魚是造成大量惡意數據泄露成功的原因,而且這種情況在短期內不太可能發(fā)生改變。大多數計算機安全報告表示,有70%到90%的惡意數據泄露是由社會工程和網絡釣魚造成。我們有理由認為除了使用長而復雜的口令之外,沒有人能推薦其他方法來抵擋這種風險。
八個字符是不夠的
NIST推廣的最短可接受口令長度(8個字符)已經不再適用了。隨著時間的推移,口令破解器的表現越來越快,越來越好。直到最近,一個包含8個字符的復雜口令被認為是非常不安全的,但是大部分組織機構確可以接受。
這個假設最近被打破。開源口令散列破解工具HashCat宣布,任何8個字符的NT口令散列,都可以在2.5個小時內被破解為明文。祝那些用8個字符的口令保護環(huán)境的企業(yè)好運。
Mitnick經常成功破解12到16個字符長的超復雜口令,而且他沒有世界上最快的口令破解設備。所以多長的口令才足夠長呢?
答案是越長越好,但是現實是對大多數企業(yè)網絡來說,僅憑口令無法保護那些含有你財務或個人信息的網站。使用口令,但是不要用于那些你真正需要保護或者關心的內容上。至少在我們找到更好、更強大、更流暢的身份驗證方法之前,使用MFA保護任何對你有真正有價值的東西。
什么時候更改你的口令?
NIST認為你只需要在你認為口令被泄露的時候更改口令,而不是定期更改口令,例如像以前的做法,每45到90天進行一次更改。這個建議存在的問題是你很有可能不知道你的口令已經被泄露或者何時被泄露。
如果一直在使用一個口令管理器,可以實時檢查用戶創(chuàng)建和使用的每個口令,對付已知的口令泄露和發(fā)現口令泄露。
不要完全忽視NIST
NIST有關口令的策略,但是其身份指南是可靠的。他們鼓勵管理員和用戶從簡單的登陸口令轉向使用更強大的身份驗證方法。他們不鼓勵使用SMS信息作為強驗證,而建議使用更復雜的方法。他們同時也為不同場景推薦了不同的身份驗證的方法,這是很有意義。
【本文是51CTO專欄作者“李少鵬”的原創(chuàng)文章,轉載請通過安全牛(微信公眾號id:gooann-sectv)獲取授權】