2011-01-24 103 views
2

任何人都可以讓我知道術語「Account Lockout」嗎?以及如何在PHP上實現它。以下信息是我從一個名爲「ACUNETIX」的網站安全/審計工具中獲得的。ACUNETIX - 登錄頁面密碼猜測攻擊 - 蠻力攻擊和帳戶鎖定

說明

「的共同威脅,Web開發者面對的是被稱爲brute force attack密碼猜測攻擊。蠻力攻擊是通過系統地嘗試的字母每一個可能的組合,發現密碼的嘗試,數字和符號,直到你發現工作的一個正確的組合。

這個登錄頁面沒有對密碼猜測攻擊任何保護(強力攻擊)。有關解決此問題的更多信息,請Web引用。

影響

攻擊者可能會試圖通過系統地嘗試的字母,數字和符號的每一個可能的組合,直到它發現工作的一個正確的組合,發現一個星期的密碼。

建議

它的建議確定的不正確的密碼嘗試次數後實現某種類型的account lockout。」

回答

1

帳戶鎖定的密碼策略 可用於鎖定用戶帳戶 一旦一個賬戶被鎖定,該 用戶將不被允許通過 進行身份驗證。

你可以看一下這個PHP例子

http://www.weberdev.com/get_example-1380.html

你需要在數據庫保存用戶多少次嘗試和失敗的登錄,

3次後,你擋住用戶從進入您的網站

1

的OpenID

SHOULD不是自己創建登錄系統,而是使用OpenID(LightOpenID是一個非常好的用於php的openid庫)。良好的openid提供商已經有相應的措施。

CAPTCHA

但如果你真的想自己做,以保護自己免受這是一種驗證用戶(無自動腳本)提交您的形式使用CAPTCHA的最簡單的方法。在我看來,所有其他計劃都可能存在缺陷。但是你也可以使用一些方案,讓腳本在無效登錄時進入睡眠狀態(每次錯誤嘗試都會增加它)。