密碼管理:你的密碼安全嗎?

2020-11-28 51cto

網際網路時代,密碼與我們的生活息息相關。如何提高密碼安全係數成為用戶個人以及公司的關注重點。

雖然現在身份驗證技術已經更加成熟,但是密碼仍然是保護我們最敏感信息的主要途徑。密碼是防禦潛在入侵者試圖模仿另一個用戶的第一道防線,但這樣的防護往往比較弱。用戶通常想創建易於記憶的密碼,使用出生日期或紀念日,甚至寫下來。開發人員則想儘可能少地投入密碼管理策略中。畢竟,研發新功能比密碼管理和存儲更令人興奮、更有趣。

許多密碼本身安全性非常弱,很容易猜得到,攻擊者就會有機可乘。最糟糕的是,我們信任的密碼存儲系統和其它關鍵信息的系統也面臨著許多安全挑戰。黑客會反覆嘗試密碼資料庫進行盜竊,攻擊者同夥經常會破壞那些保護數據的模式。

我們探討一下公司在密碼管理策略方面做出的一些常見錯誤。讓在下面的討論中,我們將提到「在線攻擊」和「離線攻擊」。在線攻擊是對應用程式登錄頁面的攻擊,攻擊者試圖猜測用戶的密碼;離線攻擊是攻擊者獲取密碼資料庫副本,並嘗試計算存儲在其中的用戶密碼的攻擊。

您已限制用戶可以使用的字符數量或種類

推理

安全人員反覆告訴開發人員驗證所有輸入以防止各種攻擊(例如,注入攻擊)。因此,根據某些規則來制定驗證密碼的規則必然是一個好主意,對吧?

攻擊:

限制密碼中字符數量或種類的問題是減少了可能的密碼總數。這使得在線和離線攻擊更容易。如果我知道只允許在密碼中使用特殊字符!和@,那也就是我知道用戶密碼都沒有包含#,$,%,<和>等字符。此外,如果我知道只允許長度為8到12個字符的密碼,我也就知道所有用戶都沒有使用13個字符或更長的密碼。如果我想猜測用戶的密碼,這些規則可以讓我的工作變得更輕鬆。

但是SQL注入、跨站點腳本,命令注入和其它形式的注入攻擊呢?如果遵循密碼存儲最佳做法,您將在收到密碼後立即計算密碼的哈希值。然後,您將只處理哈希密碼,不必擔心注入攻擊。

防禦:

允許用戶選擇包含任意字符的密碼。指定最小密碼長度為8個字符,但在可行的情況下允許任意長度的密碼(例如,將它們限制為256個字符)。

您在使用密碼組合規則

推理:

大多數用戶選擇容易猜到的密碼。我們可以通過讓用戶選擇包含幾種不同類型字符的密碼,以強制用戶選擇難以猜測的密碼。

攻擊:

安全專業人員曾經認為,讓用戶選擇包含各種字符類型的密碼會增強密碼的安全性。不幸的是,研究表明這通常沒有幫助。 「Password1!」和「P @ ssw0rd」可能遵循了許多密碼組合規則,但這些密碼並不比「password」更強。密碼組合規則只會讓用戶難以記住密碼;它們不會讓攻擊者的工作變得更加困難。

防禦:

擺脫密碼組成規則。在應用程式中添加密碼複雜性檢查功能,告訴用戶他們的密碼選擇是否明顯強度偏弱。但是,不要強制用戶在其密碼中添加數字、特殊字符等。稍後,我們將討論如何使應用程式更安全,以防止安全性弱的用戶密碼。

您沒有安全地存儲密碼

推理:

加密哈希函數是單向函數。因此,存儲哈希密碼應該可以防止攻擊者計算出它們。

攻擊:

與前面討論過的兩個問題不同,這個問題通常只與離線攻擊有關。許多企業和組織的密碼資料庫都被盜了。當掌握了被盜密碼庫和強大的計算能力,攻擊者通常可以計算出許多用戶的密碼。

存儲密碼的常用方法是使用加密哈希函數,對密碼進行哈希處理。如果最終用戶選擇完全隨機的20+字符密碼,這種方法將是完美的。例如密碼設成:/K`x}x4%(_.C5S^7gMw)。不幸的是,人們很難記住這些密碼。如果簡單地對密碼進行哈希處理,則使用彩虹表攻擊就很容易猜到用戶選擇的典型密碼。

阻止彩虹表攻擊通常需要在對每個密碼進行散列之前添加隨機「鹽」。「鹽」可以與密碼一起存儲在清除中。不幸的是,加鹽的哈希並沒有多大幫助。 GPU非常擅長快速計算加鹽哈希值。能夠訪問大量加鹽哈希和GPU的攻擊者將能夠使用暴力破解和字典攻擊等攻擊合理且快速地猜測到密碼。

有太多不安全的密碼存儲機制,值得專門寫篇文章去探討。不過,我們先來看看您應該如何存儲密碼。

防禦:

有兩種主要機制可以防止攻擊者:一種是使哈希計算更加昂貴,另一種是向哈希添加一些不可估測的東西。

為了使哈希計算更加昂貴,請使用自適應哈希函數或單向密鑰派生函數,而不是密碼哈希函數來進行密碼存儲。加密哈希函數的一個特性是它們可以被計算出來;這個屬性導致它們不適合用於密碼存儲。攻擊者可以簡單地猜測密碼並快速散列以查看生成的哈希值是否與密碼資料庫中的任何內容匹配。

另一方面,自適應哈希函數和單向密鑰導出函數具有可配置的參數,這些參數可用於使哈希計算更加資源密集。如果使用得當,它們可以有助於充分減緩離線攻擊,以確保您有時間對正在受到攻擊的密碼資料庫做出反應。

這種方法的問題在於,每次要對用戶進行身份驗證時,都必須自己計算這些哈希值。這會給伺服器帶來額外負擔,並可能使應用程式更容易受到DoS(拒絕服務)攻擊。

或者,您可以添加一些不可猜測的密碼哈希值。例如,如果要生成一個長隨機密鑰,將其添加到密碼哈希值以及唯一的隨機鹽,並且穩妥地保護密鑰,那麼被盜密碼資料庫對攻擊者來說將毫無用處。攻擊者需要竊取密碼資料庫以及能夠使用離線攻擊計算出用戶密碼的密鑰。當然,這也產生了一個需要解決的非常重要的密鑰管理問題。

您完全依賴密碼

推理

密碼必須是驗證用戶身份的好方法。其他人都在使用它們!

攻擊:

即使用戶執行上述所有操作,以使在線和離線攻擊更加困難,也無法阻止其它應用程式/網站執行不恰當的操作。用戶經常在許多站點上重複使用相同的密碼。攻擊者經常會在某平臺嘗試從其它平臺盜取密碼。

此外,用戶成為網絡釣魚攻擊的受害者,因為一些用戶無論密碼要求如何都會選擇安全性弱的密碼,等等。

防禦:

要求用戶使用多因素身份驗證登錄。請記住多因素身份驗證的含義:使用至少兩種不同因素進行身份驗證(典型因素是您知道的事情、擁有的物品、以及生物識別等等)。使用兩種不同的密碼(例如,密碼+安全問題的答案)不是多因素身份驗證。同時使用密碼和動態口令屬於多因素驗證的一種。此外,請記住,某些多因素身份驗證機制比其它多因素身份驗證機制更安全(例如,加密設備比基於SMS的一次性密碼更安全)。無論如何,使用某種形式的多因素身份驗證總是比僅依靠密碼更安全。

如果必須僅使用密碼進行身份驗證,用戶則還必須採取某種類型的設備身份驗證。這可能涉及設備/瀏覽器指紋識別,檢測用戶是否從不尋常的IP位址登錄,或類似的方式。

結論

如您所見,處理用戶密碼時需要考慮很多事項。我們還沒有談到密碼輪換策略、帳戶鎖定、帳戶恢復、速率限制,防止反向暴力攻擊等等。

有一個很重要的問題需要考慮:您是否可以將用戶身份驗證轉給其他人?如果你是一家金融機構,答案可能是否定的;如果您要把最新的貓咪寵物視頻給別人看,在此之前需要驗證,那這種情況下答案應該是可以的;如果您正在開發面向企業員工內部使用的應用程式,請考慮基於SAML的身份驗證或LDAP集成;如果您正在開發面向公眾的應用程式,請考慮使用社交登錄(即使用Google,Facebook等登錄)。許多社交網站已經投入大量精力來保護其身份驗證機制,並為用戶提供各種身份驗證選項。您不需要全盤重來。

在不必要的情況下實施用戶身份驗證會給企業和用戶都帶來麻煩,甚至有潛在危險。創建安全的用戶驗證機制困難且耗時。可您是真的想要處理被盜用的密碼資料庫,還是攻擊者在身份驗證機制中發現漏洞?而且用戶有更重要的事情要做,而不是記住另一個密碼!

作者:新思科技軟體質量與安全部門管理顧問Olli Jarva

【編輯推薦】

【責任編輯:

未麗燕

TEL:(010)68476606】

點讚 0

相關焦點

  • 你設置的密碼安全嗎?「密碼攻防與網絡空間安全」論壇談論了什麼?
    大河網記者 莫韶華提起網絡安全,大眾網友首先會想到設置密碼,而在註冊登錄各大平臺時,網絡經常會提醒你設置的密碼級別過低,那麼,密碼究竟怎樣設置才安全?論壇上,來自國家密碼管理部門,密碼行業院士、學者以及行業專業人士,探討密碼研究與實際應用的結合,推動密碼與數字經濟融合,解讀今年正式施行的《密碼法》,介紹密碼前沿科技,了解攻防體系建設,分享密碼在金融、電力、物聯網、軌道交通等重要領域及複雜信息網絡環境下的成功經驗和發展思路。密碼技術在數字經濟時代有何作用?
  • 帳戶密碼被猜中?教你一份密碼設置指南丨大東話安全
    一、某國領導人推特密碼被猜中 小白:大東東~看新聞了嗎?某國領導人的密碼被破解了! 大東:嗯,準確地說是密碼被猜中了!
  • 為何對密碼分類管理?國家密碼管理局負責人回應
    問:請您介紹一下密碼法立法的目的。答:密碼是國家重要戰略資源,是保障網絡與信息安全的核心技術和基礎支撐。密碼工作是黨和國家的一項特殊重要工作,直接關係國家政治安全、經濟安全、國防安全和信息安全。新時代密碼工作面臨許多新的機遇和挑戰,擔負更加繁重的保障和管理任務。
  • 密碼工作的基本原則中「依法管理、保障安全」是指什麼?
    問:密碼工作的基本原則中「依法管理、保障安全」是指什麼?答:黨的十九大把堅持全面依法治國確立為習近平新時代中國特色社會主義思想和新時代堅持和發展中國特色社會主義的基本方略的重要內容,提出「必須堅持厲行法治,推進科學立法、嚴格執法、公正司法、全民守法」。
  • 為什麼對密碼實行分類管理
    為什麼對密碼實行分類管理 作者: 2020-01-04 00:58   來源:遼寧日報   對密碼實行分類管理,是黨中央確定的密碼管理根本原則,保障密碼安全的基本策略,也是長期以來密碼工作經驗的科學總結。核心密碼、普通密碼用於保護國家秘密信息和涉密信息系統,有力地保障了中央政令軍令安全,為維護國家網絡空間主權、安全和發展利益構築起牢不可破的密碼屏障。
  • 《密碼法》解讀:密碼的主要功能、管理對象以及密碼分類
    《密碼法》解讀:密碼的主要功能、管理對象以及密碼分類問:密碼有哪些主要功能?答:密碼的主要功能有兩個,一個是加密保護,另一個是安全認證。安全認證是指採用特定變換的方法,確認信息是否完整、是否被篡改、是否可靠以及行為是否真實。簡單地說,安全認證就是確認主體和信息的真實可靠性。例如,增值稅防偽稅控系統採用商用密碼技術保護涉稅信息,增值稅發票信息經密碼算法進行加解密處理,確定該發票的明文信息是否真實,從而遏制增值稅犯罪,減少稅款流失。
  • 在瀏覽器內保存密碼真的安全嗎?其實第三方外掛正在偷你的密碼!
    導語:近日,據外媒報導稱,安全研究人員發現,已經有市場營銷公司開始利用瀏覽器內置的密碼管理器中一個存在長達11年的安全漏洞,偷偷地竊取你的電子郵件地址,以便在不同的瀏覽器和設備上進行有針對性的廣告投放。
  • 你引以為傲的密碼,是否真的安全?
    」,但有一些「不正經」平臺卻是為了盜取的你的身份證信息,以及,你的密碼, 千萬不要小看這個安全隱患。否則以後很有可能會造成你,人在家中坐,鍋從天上來的後果。這裡就是告訴大家一件事情, 重要的密碼:比如,你放置財產的銀行卡密碼,你真的確定要與其他密碼相同嗎?
  • 教你設置一個安全的密碼
    教你設置一個安全的密碼 2020-11-26 14:35 來源:澎湃新聞·澎湃號·政務
  • 密碼到底怎麼設置才能更安全?
    網絡安全問題,可能比你想像中的要嚴重的多。其實想要安全地上網,有幾個點必須要注意:1.自己家的路由器,不要使用默認密碼;5. 自己的網絡帳號,使用更強的密碼。下面我就聊一下如何設置更強的密碼。更強的密碼,才能有更好的保護您的密碼安全才能保證您的私人信息安全。密碼可以保護帳號中的所有個人信息。
  • 為何銀行卡的密碼為6位數,安全嗎?
    要說錢存在哪裡最安全?很多人的第一反應就是銀行,的確,放置在銀行中的錢不僅能夠享受到《存款保險條例》的保障,也能夠給儲戶帶來一些利息,從而受到眾多儲戶的青睞。不過,在科技不斷進步的情況下,不少儲戶都擔心起了這問題,銀行卡的密碼只能設置為6位數,這樣真的安全嗎?
  • 國家要為密碼專門立法!擬對3大類密碼實行分類管理
    聽到這個消息,你是不是暗自竊喜:媽媽再也不用擔心我的QQ密碼被盜了!其實,我們日常接觸的計算機或手機開機「密碼」、電子郵箱登錄「密碼」、微信「密碼」、QQ「密碼」、銀行卡支付「密碼」等,實際上是口令。口令是進入個人計算機、手機、電子郵箱或者個人銀行帳戶的「通行證」,它是一種簡單、初級的身份認證手段,是最簡易的密碼。
  • 瀏覽器自動填充密碼並不安全
    360瀏覽器密碼管理功能藏得比較深,小黑在設置、用戶中心裡都沒找到,最後在右上角管理按鈕中發現,登錄管家與截圖、翻譯等功能並列,屬於瀏覽器附加功能。瀏覽器記住密碼機制與表單自動填充一樣,攻擊者可以在自己的域放一個頁面,你的瀏覽器訪問後,會自動填充這個頁面的表單,比如Email、家庭地址、手機號等等,然後這個頁面的JavaScript就可以獲取到這些值了。」
  • 河間網絡安全宣傳周:密碼小常識
    網絡時代,密碼無處不在,小小密碼不僅守護著我們的隱私,還守護著我們的權益。那你的密碼安全嗎?又該怎麼設置呢?一起來看看。由此可見簡單的密碼勢必會造成極大的安全隱患那麼你的密碼靠譜嗎?安全密碼該怎麼設置呢?快來看吧!
  • 密碼將依法實行分類管理
    受國務院委託,國家密碼管理局局長李兆宗向會議作了說明。提到「密碼」,人們通常以為是我們每天接觸的計算機或手機開機「密碼」、銀行卡支付「密碼」等。生活中的這些「密碼」實際上是口令,是一種簡單、初級的身份認證手段,是最簡易的密碼。而密碼法草案中的密碼,是指使用特定變換對信息等進行加密保護或者安全認證的產品、技術和服務。
  • 中國通過密碼法 對密碼實行分類管理
    通過立法,中國對密碼實行分類管理,推進國家密碼法治建設。  該法所稱的密碼,是指採用特定變換的方法對信息等進行加密保護、安全認證的技術、產品和服務,分為核心密碼、普通密碼和商用密碼。10月26日,十三屆全國人大常委會第十四次會議在北京人民大會堂舉行第三次全體會議。表決各項議案之後,十三屆全國人大常委會第十四次會議閉幕。會議表決通過密碼法。
  • 2016年最常用密碼出爐:123456居首 密碼怎麼設才安全?(2)
    每年都會發生許多網站遭入侵、密碼被洩露的事情,除了網站本身安全措施做得不夠,很多時候,用戶密碼取得太簡單、太作死、太糟糕,也減少了黑客的工作量……據美國知名的科技博客BusinessInsider報導,近日,安全公司Keeper在對1000萬個洩露的密碼進行分析後,得出了2016年最常用的密碼。
  • 無線路由器的無線安全密碼忘記了怎麼辦
    無線路由器的無線網密碼修改需要知道無線路由器登錄管理密碼,只要登錄無線路由器界面修改無線安全密碼就很簡單了。 4、通過重置無線路由密碼,登錄無線路由器界面重新設置無線路由器登錄密碼,無線安全密碼,wan口寬帶連接帳號和密碼 每個路由器都會有一個RESET
  • 瀏覽器保存密碼自動登錄安全嗎 可能被黑客記下來了
    ­  安全研究人員發現,營銷公司已經開始利用瀏覽器內置密碼管理器中已存在 11 年的一個漏洞,來偷偷竊取你的電子郵件地址,以便在不同的瀏覽器和設備上投放有針對性的廣告。­  除了竊取電子郵件信息外,該漏洞還可能允許惡意用戶直接從瀏覽器內偷偷保存你的用戶名和密碼,在不需要和你交互的情況下。
  • 2019年最糟糕的密碼曝光,果然還是那些!教你一招設置最安全的密碼
    近日,通過搜集2019年數據洩露中暴漏的5億個密碼,網絡安全公司NordPass公布了一份年度最差密碼列表,一起來看看你有沒有中招呢其實,除此之外還有很多常見"密碼套路",也極容易被破解。比如有人會用紀念日、自己的生日、父母的生日做密碼;也有人用自己的車票號碼,還有的人喜歡用自己家裡面住址門牌號碼,這都是不安全的。安全專家稱,使用弱密碼或同一套密碼用於多個網站,會讓用戶面臨被黑客攻擊的重大風險。而密碼不夠安全一方面是因為太簡單,另一方面是因為"撞庫"的泛濫。