如何預防及防止「撞庫」手段的攻擊

被撞庫攻擊,封IP是不起作用的,因為攻擊者使用的是代理IP,過程是模擬正常的用戶請求,所以IP地址一致更換。那麼如何預防及處理呢?

什麼是撞庫?(這裡不同於撞球的撞庫)

撞庫:以大量的用戶數據位基礎,利用用戶相同的註冊習慣(相同的用戶名和密碼),嘗試登陸其它的網站。

(參考「CSDN(微博)泄密門」引發的思考”
另一描述:

撞庫是一種針對資料庫的攻擊方式,方法是通過攻擊者所擁有的資料庫的數據通攻擊目標資料庫可以理解為用戶在A網站被盜的賬戶密碼來登陸B網站,因為很多用戶在不同網站使用的是相同的賬號密碼因此可以起到獲取用戶在B網站的用戶賬戶從而達到目的。

(參考「撞庫」是個什麼東東?如何去防止「撞庫」攻擊呢?

被撞庫攻擊,封IP是不起作用的,因為攻擊者使用的是代理IP,過程是模擬正常的用戶請求,所以IP地址一直更換。那麼如何預防及處理呢?

根據網上一些社區里的總結,最簡單最基本的方式是登陸的時候增加驗證碼。由於破解驗證碼的程序越來越厲害,若防止驗證碼破解可以適當增加驗證碼生成的強度。(網友認為業內做的比較好的驗證碼,有淘寶的、百度貼吧的中文驗證碼。)

設置錯誤登陸次數,同一IP連續錯誤登陸x次,那麼需設定一定時間之內不可再次登陸,對於頑固嘗試的(一定時間後又再次重試,可考慮自動啟用網站「保護模式」,直接封掉該IP,關於保護模式的設想,後方詳談。)

有的時候攻擊者能力比較高,可以搞到好多的IP,每個IP嘗試兩三次,屬於低頻度撞庫,用上方的設置錯誤登陸次數難以防止。那麼可以考慮使用「異地IP」功能,用戶的登陸IP如果由一個城市變更到另外一個城市,登陸的時候需增強內容。如登陸的時候需驗證手機號碼或者郵箱方可登陸。

延時登陸措施,用戶登陸成功後,不立馬返回成功通知,可以在y秒之後提示成功並跳轉入登陸後的頁面。

除了上述的方式,網站還可無間斷記錄並統計用戶的「登陸」操作。一般用戶登陸都會選擇瀏覽器記住用戶名及密碼,下次就可以不需登陸而直接是登陸的狀態,那麼每天網站整體登陸的用戶是一定的,如果遇到撞庫攻擊,突然有大量的用戶嘗試登陸,立馬自動採取「保護措施」。這個工作像是門衛老大爺,院子裡面來來往往的人他可能不一定都認識,但是平時每天進進出出的人流量是基本穩定的,如果某一天突然好多人來要進院子裡面,大爺得趕緊先把門關了,搞清楚是什麼情況。

這裡需要說一下我提出來的「保護模式」,保護模式下區別於正常的狀態,該模式下,可以增加用戶登陸的審核度,如需要驗證手機或者郵箱或者回答問題等,甚至是所有能用的全部用上。上方提到的放攻擊措施(無間斷記錄和統計登陸操作的措施不能停止,因為可以使用該措施來自動激活「保護模式」),也可在平常不用,放進保護模式的功能中,當監測到網站的登陸請求數量突增,自動啟用保護模式。也許有人沒搞明白,那為什麼不一開始就把所有招都用上呢?上面的措施大家也看到了,保護網站不被攻擊也許成功了,但是用戶的體驗度下降了,你想你在某個網站裡面,每次登陸的時候需要好多驗證,只是個登陸操作搞了半個多小時,你心情如何?所以,過分的保護,在平常,對網站來說,會造成用戶的流失。所以,「保護模式」也可以分出一級、二級、三級等內容。

上述的內容,是我根據網上的一些內容和自己的一些想法所整理成的應對「撞庫」攻擊的初步想法,在具體實施的時候,還需要完善的邏輯和縝密的代碼。希望這些內容,能夠對網路安全維護人員有所幫助。

作者: 椰林物語

博士,摩托車手。發布內容為:生活、站點、其他。

發表回復

您的郵箱地址不會被公開。 必填項已用 * 標註