當廠商都說密碼該又臭又長,微軟卻告訴你:太亂的密碼根本沒用

作者 | 發布日期 2015 年 05 月 12 日 14:16 | 分類 Microsoft , 網路 , 資訊安全 follow us in feedly
Matthew Oliphant

從有網站開始,「密碼」這件事就一輩子困擾著我們。早期我們會用生日、電話號碼當成密碼,但之後很多專家告訴我們那樣的密碼並不安全,所以我們又改用一些單字、名字來當密碼,結果又有專家說採用暴力攻擊法可以在幾秒鐘就把我們的密碼破解,於是密碼越設越複雜,而我們也越來越記不住自己的密碼。



各個網站、軟體要求我們使用之前要先登入身分、驗證密碼。而且對於密碼都有一些基本的規則要求,以 Windows 為例,它的要求就是:

  • 密碼長度至少為 6 個字元
  • 至少包含三種下列字元的組合:大寫字母、小寫字母、數字、符號(標點符號)
  • 不要包含使用者的使用者名稱或畫面名稱

這些設定密碼的規則,都是針對想要入侵你的電腦的駭客而來的。不要包含使用者名稱、或是不要採用生日與電話號碼,都是因為這些是人們最常使用的密碼,也是駭客最先會猜測的密碼,幾乎不具備任何的密碼強度。這些的設定是有道理的。

Password_techbang 0511

沒有無法破解的密碼,只是時間的問題

不過,後來隨著電腦技術越來越進步,駭客開始使用「暴力攻擊法」。暴力攻擊法就是將所有密碼的可能組合一一嘗試,因此,只要時間夠,最終總能夠湊出你的密碼。

面臨暴力攻擊法的工具,一次可以猜測上百萬次甚至上億次的密碼組合,因此密碼就需要更高的強度才能抵抗(或是說拖延破解的時間),因此開始有各種理論,也有各種專家的建議,甚至有所謂的密碼產生器,用亂碼幫你設定出一組密碼,這種密碼你幾乎無法背下來。

不過,微軟的研究者發現,如果你使用這種高強度的密碼,所獲得的安全性,可能與中等強度的密碼是一樣的。

為什麼呢?

以暴力攻擊工具來說,駭客使用的工具有離線模式與線上模式兩種。線上模式,駭客則是使用與一般人要登入網站的相同入口,在那個網站上進行線上破解的動作。而這種線上模式,就會受到網站的登入次數以及其它防範攻擊的限制。

但是,另一種離線模式的做法是,駭客先竊取網站的密碼檔,然後就可以把這個密碼檔拿回來慢慢破解。對於這種模式的暴力攻擊,「時間」的問題就不存在了,對於駭客來說,百萬次暴力破解強度的密碼,與上千萬次暴力破解強度的密碼,破解難度的差別只在於幾個小時而已,最終密碼一樣會被破解。

舉例來說,以「tincan24」這個密碼來說,密碼強度為 106(1M),但是這組密碼至少使用者記得起來。但如果為了增加密碼強度,換了一個密碼「7Qr&2M」它的密碼強度為1014(100T),但是你完全背不起來,兩組密碼何者對你比較好?

事實上,兩者在線上模式的情況下,都足以應付線上模式的破解工具。而在離線模式下,兩者都會被破解。等於說,為了沒有多大意義的動作,你建立了一個根本記不起來的密碼。

 

保存密碼的責任不該是使用者

延續前面的問題,如果密碼檔洩露了,是不是你的密碼就洩漏了、機密就外流了呢?事實上也不是這樣。

如果密碼檔洩露了,網站及早發現、及早發出警告,甚至強迫使用者更換密碼,那麼你的機密依然是安全的,離線暴力攻擊法依然對你的資料沒有任何威脅。

甚至,如果密碼檔洩露了,假設網站方沒有及早發現,但是網站架構上有對密碼檔利用金鑰進行加密,駭客也不見得能破解金鑰。怕就怕網站並沒有對使用者的密碼檔本身有任何的保護,甚至直接以明文保存,這時如果密碼檔洩露了,駭客根本就不需要破解,直接就能得知所有使用者的密碼。

Password File_techbang 0511

這時你可以瞭解到,不管你密碼設得再強,如果網站方根本就對保存你的密碼這件事情不加重視的話,你就算真的設成「7Qr&2M」,也完全沒用。

這時就有一個問題了,那麼,為什麼廠商還要建議你設立「7Qr&2M」這一類的密碼?

事實上,這是網站或是廠商試圖把密碼保管的責任推卸到使用者的一種做法。要讓使用者透過設定一連串複雜而難記的密碼,去解決暴力攻擊法的問題是不切實際的。只有從網站的架構或是應用程式端,真正做到防止密碼檔洩露,並對密碼檔加密保護,才是根本的做法。

(本文由 T客邦 授權轉載;首圖來源:Flickr/Matthew Oliphant CC BY 2.0) 

發表迴響