在安全領域向來是先知道如何攻,其次才是防。
在介紹如何防範網站被黑客掃描撞庫之前,先簡單介紹一下什麼是撞庫:撞庫是黑客通過收集網際網路已洩露的使用者和密碼資訊,生成對於的字典表,嘗試批量登入其他網站後,得到一系列可以登入的使用者。因為很多使用者在不同網站使用的賬號密碼大多是相同的,因此黑客可以通過獲取使用者在A網站的賬戶從而嘗試登入B網站。
那麼碰見撞庫之後,我們如何防護呢?為此我們諮詢了網易雲易盾安全專家:劉慶。根據他的描述:撞庫一般有以下幾種形式,每種形式有一些不同的處置策略。但是實際情況是,被攻擊的網站可能會同時面臨幾種不同型別的撞庫,畢竟大家手裡拿到的社工庫非常多,撞庫的成本也非常低。
社工庫是社會工程學資料庫的簡稱,社工庫是黑客用來記錄攻擊手段和方法的資料庫,這個資料庫中有大量資訊,甚至可以找到每個人各種行為記錄(每個人在每個網站上的賬號、密碼、分享的照片、信用卡記錄、通話記錄、簡訊記錄、開房記錄等等)
最常見的三種撞庫方法:
第一種:用n個密碼字典撞m個賬號,這個的表象是,一個賬號在某個較短的時間內,可能會有多次密碼嘗試。所以,可以在賬號層加限制措施,比如:一天內,一個賬號,密碼錯誤次數超過5次時,1天之內禁止登陸(或者校驗手機簡訊/密保問題之後才能登陸)。
第二種:用幾個密碼撞n個賬號,這個的表象是,密碼出現的頻率會非常高,所以,可以統計一段時間內每個密碼的錯誤次數,超過一定閾值時,這個密碼在一段時間內禁止登入(或者校驗手機簡訊/密保問題之後才能登陸)。
第三種:用n組一一對應的賬號密碼來再撞庫,這種情況的撞庫單純從賬號、密碼的維度來看,不會有明顯的異常。所以,需要一些其他的應對措施。比如:
1)IP封禁,如果一段時間內,單個IP地址,密碼錯誤次數超過閾值,則禁止這個IP一段時間再登入(或者校驗手機簡訊/密保問題之後才能登陸)。不過,如大家所說,現在代理IP相當廉價,從IP層面來封禁基本上沒啥作用。
2)建立IP畫像庫,對代理IP、IDC IP等高危的IP直接禁止登陸(或者校驗手機簡訊/密保問題之後才能登陸)。自己建立IP畫像庫成本可能會有點高,可以考慮採購安全廠商的類似服務。
3)現在比較火的行為驗證碼,比如:拖條、點選、拼圖等各種花樣的驗證碼。只是說,如果之前登入不需要驗證碼,現在要加上一個驗證碼,估計要和產品撕逼。一般來說最後為了後期的運營,產品也會同意加上驗證碼。
4)從裝置層面來識別和封禁,通過在客戶端植入sdk,收集使用者端的裝置資訊,從裝置層面來做高頻策略,或者,直接識別出非正常的裝置,然後對裝置進行封殺。
5)從行為層面來識別和封禁,和上面一條一樣,通過客戶端植入sdk,收集使用者在登入頁面的互動行為,通過機器學習、大資料建模,訓練出正常使用者、異常使用者的行為模型,在互動行為層面,將撞庫的行為識別出來。這個需要有預先訓練好的行為模型,現在機器學習那麼好,不說大家也都知道,自己訓練一個模型肯定需要很多標註資料,這也就意味著成本。所以,還是建議尋找安全廠商還做,畢竟專業的人做專業的事,靠譜!
上面列舉的這些措施,沒有哪一個是一勞永逸的,都是需要不斷對抗升級,畢竟撞庫的手段也會不斷的進化,我們能做的是不斷優化策略,不斷提高撞庫的成本。所以,最好的方式是採購安全廠商的相關服務(比如:網易的登入保護、驗證碼服務等),把攻防對抗的事交給安全廠商來做,我們們專注做自己的業務,這樣價效比會更高。