向攻擊者學習?密碼保護,你需要這樣的反套路!

2019-09-11 06:08:45

作者 | Chris LaConte
譯者 | 大愚若智
提升密碼安全措施,斬斷盜取密碼的黑手,你需要這樣做。

只要你是人類,肯定不可避免反覆用過某一兩個密碼。實際上,大部分年齡介於 18-65 歲之間的網民都這樣做過,並且越是年輕的網民,越有可能為自己的所有帳戶使用同一個密碼。

大家都知道這種做法不好,而且大部分網民都知道怎樣建立足夠強的密碼:應該包含隨機字母、數字和字元,至少 16 位長,並且最重要的是:必須確保唯一性。

那麼為什麼大家不為自己的每個帳戶建立這樣不僅唯一,而且足夠安全的密碼?原因在於,按照美國國家標準與技術協會(NIST)去年釋出的新版標識管理指南的結論,對於密碼“複雜性”的強調,實際上忽略了需要持續管理大量密碼這一現實情況。

每個網民平均有大約 200 個線上帳戶,因此實際上很難去責怪使用者不保證自己大量密碼的唯一性。但同時我們更沒有理由去責怪那些為了遵守最佳實踐而要求使用者必須使用足夠複雜密碼,但對使用者的忽視又束手無策的公司。

不幸的是,雖然 NIST 的新版標識管理指南對於密碼安全機制的矯正提供了看似非常卓越的路線圖,但在密碼要求、安全檢查或使用者密碼使用習慣方面,實際上並不會產生多大的影響。

是時候了,企業必須停止抵抗變化,引導自己的員工和客戶養成更安全、更可管理的密碼使用習慣。瞭解威脅的具體實施方式,這有助於我們採取簡單的預防性措施斬斷伸向受保護帳戶的黑手。

別被人猜到了  

一如往常,網路漫畫網站 XKCD 通過簡潔風趣的漫畫描述了帳戶被接管的實際情況(其實真不需要太多攻擊手段) —— “這把鑰匙能開啟那個鎖嗎?”

我們可以非常合理地做出這樣的假設:位於某地的某人針對某個網站運行了帳戶檢查工具,輸入一系列已知的郵件地址和類似密碼,或包含網站名稱的密碼。例如使用“123456”、“abcd1234”或“password”,畢竟這些都是不安全密碼界的佼佼者。

密碼不應與使用者名稱相同,不應包含網站或相關服務的名稱,也不應是連續字母或數字,更不應是簡單的組合或普通單詞。我們都知道,攻擊者可以通過一些工具非常快速地檢查所有此類密碼,進而判斷自己能否開啟某個使用者帳戶的大門,這些工具還會試著使用密碼的各種變體,以此來應對使用者們在簡單密碼基礎上發揮的“小聰明”。

為避免使用者使用易於猜測的密碼,企業應建立或下載常用密碼列表,將使用者使用的密碼與這些列表進行對比。對於相符的,形式較為簡單的,或包含網站 / 服務名稱的密碼(或者其他類似的變體,例如為披薩外賣網站的帳戶使用“PapaJohn1”這樣的密碼),應該建議使用者不要使用。更好的做法則是檢查並確保使用者選擇的密碼並不在第三方已洩露密碼範圍之列。如上文所述,大部分使用者會在多個網站上使用相同的密碼,如果一個網站的密碼外洩,就會將你的公司(以及使用者帳戶)置於危險之中。

別被人輕鬆破解了  

簡單密碼還會造成另一個問題:手頭資源有限的攻擊者可以藉助這樣的密碼更快速地破解加密演算法。

一些全球最受歡迎的線上服務依然在使用過時、甚至不安全的加密技術來“保護”密碼,這一點著實令人感覺遺憾。這些加密演算法雖然可以阻止低水平攻擊者通過讀取使用者密碼訪問資料庫,但在技能更嫻熟的攻擊者看來,這只不過是一種有趣的“拼圖遊戲”而已。

除了使用字典防止使用者設定重複、簡單,或其他易於猜測的密碼,企業還需要了解自己所用雜湊演算法的侷限,並建議使用者設定更復雜的密碼,例如同時包含數字和字母,甚至通過易於記憶的短句來生成更復雜的密碼。

如上所述,當今攻擊者所用的工具可以通過常用密碼列表發起攻擊,甚至可以自動嘗試常用密碼的各種變體。實際上,這意味著類似 MD5 這種古老(但依然常用)的雜湊演算法甚至可以在幾秒鐘內被破解,哪怕使用者給密碼添加了一串數字或將字母“o”用數字“0”替代,也於事無補。

幫助使用者建立更長、更復雜的密碼,這是一種增加暴力密碼破解難度的好方法,使用諸如 bcrypt 這樣的強雜湊演算法才能讓密碼更難以被暴力破解。通過將 bcrypt 這樣的演算法與類似短句的長密碼(NIST 建議使用包含符號和空格,64 位長的密碼)配合使用,才能真正有效遏制暴力破解(這種情況下的暴力破解可能需要幾十年時間)。

不要直接交鑰匙  

保護帳戶不被進行此類攻擊的最佳方法是確保密碼沒有被“已經”攻陷。攻擊者可能已掌握了數十億個密碼,這些密碼可能是從明網(Clearnet,“暗網”的對應面)盜取而來,甚至被編譯為“組合列表”,其中包含各種使用者名稱以及對應的密碼,而這樣的東西正在黑市以非常低廉的價格出售。好在白帽子和安全專家們也在收集這些密碼,藉此追蹤已經不再安全的憑據。

NIST 在新版指南中明確提出,針對已知被攻陷憑據檢查使用者的密碼,是一種可有效測試密碼安全性的做法。更重要的是,企業通過這樣的檢查可以幫助客戶和員工更全面地瞭解自己所面對的安全態勢,而使用者安全性的提高也有助於大幅改善整個網路的安全性。

已知被攻陷憑據列表不僅可以免費獲取,甚至可以通過這樣的靜態列表,實現比以往單純提出密碼複雜度要求時更高程度的密碼安全保護。

然而靜態的列表會逐漸過時,因此 IT 團隊需要定期進行更新。從長遠的角度來看,具備一個持續更新的已知被盜密碼資料庫,這已經成為一種更好的策略。但企業也不需要用手工的方式對這樣的列表進行增補,IT 團隊可以放心地定期檢查新密碼和現有密碼,而這些服務通常會包含自動化的緩解工具,對需要更新密碼的員工或使用者發出提醒。

這一點為何重要  

很多人都會重複使用密碼,因此對企業來說,上文提到的檢查措施非常必要。尤其是對於員工每天都在用的應用程式,簡單的或重複使用的密碼最容易違背 IT 有關密碼安全的要求,而企業網路內部很可能已經有至少一個帳戶在使用重複的密碼。

更糟的是,員工們為了符合 IT 要求採取的“小聰明”做法也成了攻擊者設法潛入受保護網路內部的最便捷途徑。

針對企業郵件系統的帳戶目錄使用 NIST 密碼安全檢查機制有助於確保員工沒有重複使用已被攻陷的密碼,這樣可以更好地保護業務資料,同時也可以確保密碼不會太簡單,太易於猜測,或直接使用了已攻陷密碼的其他變體。

將這樣的措施與強雜湊演算法配合,這樣一種簡單、自動的機制不僅足以防止帳戶被接管,還有助於幫助使用者養成更好的密碼使用習慣,讓這樣的密碼在面對技能不那麼嫻熟的攻擊者時發揮出更大的保護作用。

原文連結:

https://threatpost.com/how-to-guide-users-to-better-passwords-by-learning-from-attackers


活動推薦

ArchSummit全球架構師峰會北京站2019不僅涵蓋了“提升效率的AIOps”、“反應式架構”、“質量保障體系建設”等火熱專題,更有“實時計算的平臺化實踐”、“大前端趨勢”等熱門專題。更多技術亮點請【掃碼】或點選【閱讀原文】瞭解詳細資訊。7折限時直降2640元!瞭解詳情請聯絡票務經理灰灰:15600537884 ,微信同號。

已同步到看一看



熱點新聞