你的密碼真的安全嗎?
Hi,問你一個小問題。你的圖靈社群登入密碼是什麼?
我猜,它是不是與你的郵箱、微博、QQ、微信、網銀等網路賬號的密碼一致?
是不是與你(或家人、朋友)的姓名、生日、手機號、車牌號、門牌號、紀念日有關?
是不是就是使用者名稱?
甚至是123456?!
OMG!我多麼希望我猜錯了。事實上,很多人都反覆使用相同的密碼,而且密碼還很容易猜測,完全不需要什麼技巧。
你的密碼並不安全
網路安全公司BitDefender曾進行過一項研究,分析了25萬多名使用者使用的密碼。研究結果令人震驚:75%的使用者郵箱和社交媒體賬號使用的是同一個密碼。完整的文章參見www.securityweek.com/study-reveals-75-percent-individuals-use-same-password-social-networking-and-email。
2009年,一名暱稱為Tonu的黑客做了一項有趣的研究。通過獲取某個流行社交網站近期棄用的URL,他偽造頁面,對試圖登入的人進行了記錄。不過他這樣做並沒有什麼惡意。
研究結果可見www.social-engineer.org/wiki/archives/BlogPosts/MenAndWomenPasswords.html。
其中的一些資訊甚至令資深的社會安全專家也難以置信。在734 000人中,有30 000人使用自己的名字作為密碼,約14 500人使用他們的姓氏作為密碼。更驚人的是下面的統計數字,最常使用的8個密碼如下表所示。
密碼 | 性別 | 使用者數 |
123456 | 男 | 17 601 |
password | 男 | 4545 |
12345 | 男 | 3480 |
1234 | 男 | 2911 |
123 | 男 | 2492 |
123456789 | 男 | 2225 |
123456 | 女 | 1885 |
qwerty | 男 | 1883 |
17 601位男性使用的密碼是123456!
真是令人大跌眼鏡啊。
如果這還不夠令人震驚,再看看Tonu公開的統計資料吧:66%以上的使用者都使用密碼長度為6~8個字元的弱口令。
弱口令通常非常短,只使用數字和字母字元,或者很容易被別人猜到的內容如生日、暱稱、住址、寵物或家人的名字。儘管如此,密碼破解在我們普通人看來也是件難事,但是黑客藉助密碼破解工具如Cain and Abel(如下圖所示,圖不是很清楚,請多多包涵),破解這些弱口令簡直易如反掌。
破解弱口令只需要3天
請注意上圖密碼破解工具中剩餘時間欄(Time Left)寫著3.03909天。對大多數黑客來說,3天就能獲得伺服器的訪問許可權算是短的了。
如何提高密碼安全係數
請再看下面這幅圖。如果同一個使用者使用14~16個字元的密碼,其中包含字母大小寫和非字母字元,破解密碼所需要的時間就不是一般地長了。
大家可以看到,剩餘時間欄已經變成幾萬億年了。
超過5萬億年夠長了吧?僅僅將密碼長度增加到14位,並使用一些非常用字元(即*、&、$、%和^),再加上大小寫,足以將我們的密碼安全係數大大提升啦。因為想通過暴力破解獲得密碼幾乎是不可能的。
密碼安全只是資訊保安中微不足道的一小步,想要真正的安全,我們需要360度全方位防範。欲瞭解更多有關資訊保安的資訊,請持續關注《社會工程:安全體系中的人性漏洞》。
相關文章
- 年底了,你的資料庫密碼安全嗎資料庫密碼
- 000.【Web安全】你所使用的隨機數真的安全嗎?Web隨機
- 你的網路安全投資真的行之有效嗎?
- Kotlin的空安全真的安全嗎?Kotlin
- 你的單例模式真的是執行緒安全的嗎?單例模式執行緒
- 你真的理解this嗎
- iPhone怎麼共享WiFi密碼安全嗎?iPhone共享WiFi密碼的方法教程iPhoneWiFi密碼
- 你真的使用過低程式碼產品嗎?
- 你真的理解setState嗎?
- WebView你真的熟悉嗎?WebView
- 你真的理解==和===嗎
- Kotlin刨根問底(一):你真的瞭解Kotlin中的空安全嗎?Kotlin
- 每天加班的你,真的會工作嗎?
- 你真的知道js的原型鏈嗎??JS原型
- Java執行緒安全面試題,你真的瞭解嗎?Java執行緒面試題
- 你真的理解 getLocationInWindow 了嗎?
- 你真的瞭解RPC嗎?RPC
- 你真的知道跨域嗎跨域
- 你真的懂 == 比較嗎
- 你真的懂函式嗎?函式
- 你真的瞭解@Async嗎?
- ViewStub你真的瞭解嗎View
- 你真的瞭解 Array 嗎?
- 你真的瞭解mongoose嗎?Go
- 你真的懂C++嗎?C++
- 你真的瞭解HTAP嗎
- 你真的懂Python命名嗎?Python
- TCP|你真的懂 HTTP 嗎?TCPHTTP
- 你真的瞭解URLEncode嗎?
- 你真的知道 == 和 equals 的區別嗎?
- 你真的理解JS的繼承了嗎?JS繼承
- JDBC API的那些事,你真的知道嗎?JDBCAPI
- 你真的懂 == 和 equals 的區別嗎?
- RabbitMQ的佇列模式你真的懂嗎MQ佇列模式
- AsyncTask你真的用對了嗎?
- 你真的會vue-router嗎?Vue
- 你真的瞭解前端路由嗎?前端路由
- 你真的熟悉 npm-scripts 嗎?NPM
- 設計模式你真的懂了嗎?設計模式