天天看點

登入接口防攻擊 01

如何防止登入接口被攻擊呢?

網頁調用登入接口a,登入接口a 實際上是調用接口b進行業務邏輯.

是以真正幹活的是接口b,接口a 隻是進行了轉發和包裝.

如果要攻擊,隻能攻擊接口a,因為接口b沒有暴露,也不公開.

那麼如何防止接口a 被攻擊呢?

比如不斷的通路接口a,每秒鐘通路10次? 這樣很容易導緻伺服器扛不住當機.

比如通路位址是 http://123.21.23.2/user/login?username=whuang&password=zxcvbnm

(1)使用者名相同的情況

規則:

(a)連續三次登入失敗,則增加圖形驗證碼

例如

登入接口防攻擊 01

 (b)連續6次失敗(包括無圖形驗證碼的情況),則無法馬上登入,必須等待5分鐘

5分鐘之後,就可登入,并且沒有驗證碼,然後重複規則(a)

(c)如果連續登入失敗24次,則禁止登入,并且提示聯系客服.

分析:

規則(b)為什麼要增加圖形驗證碼,是為了防止程式自動化攻擊.要求輸入圖形驗證碼,就能夠保證執行登入操作的是人(不考慮程式能夠讀取驗證碼的情況,若哪位大俠有這種程式,請發給我)

規則(c),連續登入失敗24次,就可以當做是程式自動化攻擊了,是以直接禁止登入,但是也可能是未知的原因(比如手機app本身的bug登入失敗就不斷嘗試登入)導緻真正使用者登入失敗,是以提示聯系客服.

我qq郵箱:[email protected]