1. 程式人生 > >淺談撞庫防禦策略

淺談撞庫防禦策略

2014,12306遭遇撞庫攻擊,13萬資料洩露;2015,烏雲網上爆出網易郵箱過億使用者資料由於撞庫洩露;資料洩露愈演愈烈,撞庫登入成為網站的一大安全威脅,今天小編就和大家探討一下如何才能夠有效的防止撞庫攻擊。俗語知己知彼,百戰不殆,小編在網上找了個撞庫教程整理給大家看看,瞭解黑客是如何撞庫的。

首先找到一個目標網站,隨便輸入一組使用者名稱和密碼,測試其驗證碼是否可以被繞過。

密碼是明文的,提交了正確的驗證碼,repeater一下

回顯是賬號和密碼錯誤,再repeater一下,還是顯示賬號和密碼錯誤。說明驗證碼不用再次請求,可以直接進行撞庫。

設定彩虹表。

開始撞庫,分分鐘1000+可用使用者名稱和密碼就到手了。

是的,我們就是這樣不知不覺就暴露了。

當然不是所有的網站都能夠如此輕鬆被撞庫,說明這個網站的安全性做的真的不好。

撞庫是什麼?

黑客通過收集網際網路已洩露的拖庫資訊,特別是註冊使用者的使用者名稱和密碼資訊,生成對應的字典表。通過惡意程式和字典表批量嘗試登入其他網站,得到一系列可用的真實使用者資訊。

撞庫成功的原因是什麼呢?

  1. 廣大網路使用者為了方便記憶,所有網站都使用同一套使用者名稱和密碼。

  1. 網站登入的安全措施不夠。

撞庫的危害是什麼呢?

  1. 就企業而言保護使用者的資訊保安是基本責任之一,洩露使用者資訊會缺失公信力,損毀公司品牌形象。

  1. 就個人而言小則騷擾電話天天有,大則個人財產不翼而飛。

撞庫這麼大的危害,作為企業和網站主應該如何防止撞庫攻擊呢?

通過上面的例子我們可以發現,阻止撞庫登入就是要讓黑客不能夠使用指令碼程式進行批量登入。常用的方法有以下幾種:

 限制同一個IP的請求次數和請求頻率

這是一種方法,但是由於IP代理的存在,作用也不是特別大。

使用cookie,flash cookie以及帆布指紋等方法

目前也是有許多網站在使用這種策略,有一定的作用,但是也是可以被清除掉的。

新增驗證碼

當然不能用上例網站中的驗證碼和驗證機制,像這樣,沒什麼用。

為什麼沒用呢?

  1. 驗證機制,請求一次之後可以直接繞過。

  1. 就算每一次登入都需要請求驗證碼,這種驗證碼的安全性也低,很容易被識別。

有別於上例中的驗證碼,極驗推出基於行為式驗證技術的驗證碼,從以下三點解決驗證碼被繞過的問題。

  1. 我們利用機器學習,深度學習對人的行為特徵進行了大量的分析。建立了安全模型去區分人與機器程式。

  • 通過模型分析,紅色是惡意程式,綠色是正常使用者,我們可以清晰的分辨出來,說明人與機器程式在網路世界的行為是具有很大的差距的。

  1. 動態更新,當網站出現可疑情況時我們能夠最快速的進行全網的驗證模型更新。

  1. 用深度學習構建的神經網路是可以不斷的自主學習的,在不斷的驗證過程中不斷的學習新的特徵分析,一直在進步的網路。

一般情況下網站都會採用以上三種策略組合的方式來抵禦撞庫攻擊,能不能夠防得住,驗證碼起了很關鍵的作用。

當然還有一些其他高階一些的防禦方式

進行生物特徵識別,也就是說不使用我們傳統的密碼了,當然這是任重而道遠的一件事情;

使用手機驗證碼,價效比不高,物理因素的影響會很大,還有就是接碼平臺的存在也嚴重威脅其安全性;

對使用者設定密碼進行限制和更高階的演算法加密,以及對使用者的登入環境進行監測等,但是這對很多的企業和網站來說,實現起來是有難度的。

所以使用驗證碼是目前防止網站被撞庫攻擊價效比最高的方法,簡單而容易實現,但是我們應該選擇安全性高的驗證碼,不然形同虛設,沒有實質性的作用。