淺析爆庫和社工庫掃描
背景
最近有關國內外互聯網企業的密碼安全問題受到了嚴峻的挑戰和社區的廣泛關注。騰訊安全團隊的技術專家介紹了有關暴庫和社工庫掃描的內容。
常見密碼存儲方式對于用戶來講,用戶密碼信息顯然是非常重要的,我們當然有必要了解社區管理者是如果保存我們的機密信息的。目前網站中主流存放用戶名和密碼的方式有三種:
- 明文存放。這種網站的用戶數據特別危險,網站被黑客拿下,用戶數據直接那走。
- 可逆加密存放。你的密碼會被加密一次存放在網站的數據庫中,可逆加密也是非常危險的。
- 不可逆加密。密碼通過MD5等不可逆加密算法加密后存放在網站數據庫中,比上述2種密碼加密方式安全。(如果md5加密后的密碼泄漏,明文密碼仍有通過查找表的方式反查出來的可能)
從目前的情況看,有些網站過去是采用明文的方式存儲密碼的,那么對于一個賬戶信息未泄漏的網站,我們如何判斷一個網站是采用什么樣的密碼存儲方式呢?
一個很簡單的方法,你通過密碼找回功能操作,如果讓你重設密碼的,基本上是不可逆加密的,直接給你密碼的,都是明文或可逆加密的,這種都非常危險。
攻擊手法
下面我們了解一下,黑客針對后臺數據庫的入侵手法:
爆庫
爆庫,在黑客的圈子叫做“拖庫”,是指將網站的數據庫被黑客下載到本地。按照安全技術圈的說法,國內有點影響力的網站,2/3都被爆過庫(未證實),不要認為大的網站安全萬無一失,防爆庫是安全架構里非常重要的一點。
防爆庫不僅僅是防止別人拿到你的庫,還要做到讓別人拿去也沒用。
密碼明文存儲的,一定是死路,可逆加密的,只要黑客用點心,基本也不安全;不可逆的,類似md5 加密(Md5加密方式雖然被我國專家證明可逆,但是逆向的成本很高,基本無人使用)應該很多人認為比較安全,但是遇到碰撞也很無奈。類似于 cmd5.com這樣的碰撞庫,其規模已經非常巨大,常規的密碼的破解幾率大于95%,至少,我常用的密碼,我斷定都在碰撞庫里,原因很簡單,不在碰撞庫 里的密碼,就我的記憶力是沒戲了。從下圖是從一個md5加密過的庫中隨機挑了一個加密后的密碼,可以看出,md5單次加密是很容易破解的。
Md5加密的庫
Md5.com上查詢結果
那么如何規避這樣的行為呢?
一般的做法是兩次md5或多次md5等加密保存方法,這種方法很好的避免了加密后的密碼在類似cmd5.com這樣龐大的碰撞庫中出現。但是如果黑 客拿到的數據庫夠大時,比如1千萬的用戶數據。有心的黑客會發現加密邏輯,再用一天跑一個幾千萬乃至過億常用密碼的碰撞庫,專門來對付你的數據庫,對于黑 客來說不是什么難事。只要字典夠好,破解率可以在60%以上。
Discuz就在使用一種低成本的安全密碼保護策略,他們使用隨機salt二次加密。這種方法會使黑客破解密碼的成本大大提高。黑客如果像破解這樣 的密碼,需要為每一個用戶(對應的隨機salt)建立一個碰撞庫,時間成本很高。對于大量用戶的破解,黑客一般是選擇放棄,投入產出比太低;但是對與單個 明確目標的話,他們還是會樂于嘗試的。
不過得明確一點,爆庫不等于密碼泄漏。因為被爆庫后,密碼未必會被黑客破解。爆庫+不正確的加密方式才叫密碼泄露。
社工庫
在現在爆庫泛濫的年代,加之密碼破解率很高,社工庫掃描也紅火起來。簡單來說,你可能會在很多網站使用同樣的郵箱和密碼,社工庫掃描就是利用這點,知道你一個賬戶后,就可以得到其他更有價值的帳號。哪怕密碼不相同,這個密碼作為暴力破解中的關鍵字,也能大大提高破解率。
有些網站泄露的密碼經過測試,可以使用一個賬戶成功登陸其他網站,并且提示:“支付密碼和登錄密碼一致,請更改…….” 這就是社工庫的威力所在!
有人認為黑客這樣做收效太小,沒有意義,這點就搞錯了。黑客并不是像我朋友那樣逐一手工嘗試的,而是用非常海量的數據批量掃描的,這樣成本是非常低的,規模化的操作,甚至很多中招的人只是黑客意外收獲,完全是沒有成本的戰利品。
對于社工庫掃描,網站通常的做法就是驗證碼(防暴力破解也是這種方法)。但是簡單的驗證碼是很容易識別的,網上流傳很多驗證碼的識別源碼。類似下面這些驗證碼都是可以識別的,源碼和dll網上可以找到的。
然而BT的驗證碼卻會傷害用戶體驗,目前黑客也有應對BT驗證碼的方法。他們會將驗證碼集中傳回到一個集中的地方,在網上請廉價的網絡打工者填寫。雖然這種方法成本有所提高,但是對于收益還是很低廉的。
如何規避風險
我們能做什么來保護自己不被社工庫掃描?或將損失降到最低?
推薦做法是:重要賬戶和普通賬戶分離。具體操作如下:
- 將帳號分類,公司帳號、有錢的帳號(支付寶等)、關系鏈帳號(朋友、人人等)和普通帳號。前2個為重要賬戶,關系鏈帳號較為重要。
- 每種賬戶至少對應一套密碼,而且密碼之間毫無關系。
- 每種賬戶對應的郵箱最好也能不通,因為密碼找回往往依賴與注冊郵箱。
展望
被泄密的網站越來越多,下一個也許就是你最常用的網站。趕緊去修改關鍵賬戶的密碼吧,要不下一個受傷的可能就是你!
注:本文轉自騰訊大講堂,原文地址為http://djt.open.qq.com/thread-623-1-1.html。