我正在爲用戶創建登錄並希望確保登錄用戶足夠友好,但也將符合我們正在使用的大型企業客戶的安全標準。是否有關於用戶在被鎖定之前應該具有的登錄嘗試次數指南,並且必須重置密碼?用戶必須重置密碼之前,應該有多少次拒絕登錄?
回答
不要將用戶鎖定在網絡應用程序之外。否則黑帽將在每次鎖定期後都會追查管理員帳戶。那麼你永遠不會登錄。
請參閱Block request for multiple unsuccessful logins for a period of time以獲得更好的想法。
但是,如果你不想這樣做,PCI-DSS說:< = 6
有處理這幾個不同的方式。
根據應用程序的安全級別,鎖定可能有效。如果有人可以嘗試登錄賬戶3次然後將其鎖定,它也可能是拒絕服務。這真的取決於你的網站是什麼。如果是銀行,它可能需要比在線遊戲更好的鎖定政策。
有兩種選擇,通常會導致更好的結果。一個是登錄失敗時的指數退避。每次有人無法登錄時,您都會以指數速度延長退款時間。這很好,因爲它並不會真正影響用戶輸入用戶名/密碼的方式,但它會阻止攻擊者用數百萬用戶名/密碼組合試圖暴力破解。
另一個結果是在多次失敗登錄後執行驗證碼。這也允許用戶如果能證明他們是人類的話,仍然可以訪問他們的賬戶。
實際上有一些關於「基於表單的網站身份驗證的權威指南」解決方案。例如,查看[this](http://spectrum.library.concordia.ca/976807/1/mannan2012.pdf)和[this](https://www.covata.com/blog/defending-password-沒有驗證碼的攻擊/)(假設你有用戶的電子郵件地址)以及這些想法的任意數量的混合。 – TheGreatContini
- 1. asp.net授權 - 拒絕所有登錄頁面之前登錄
- 2. java.sql.SQLException:ORA-01017:無效的用戶名/密碼;登錄被拒絕
- 3. java.sql.SQLException:ORA-01017:無效的用戶名/密碼;登錄被拒絕
- 4. 必須登錄兩次plone
- 5. 我必須登錄兩次
- 6. Shell腳本拒絕用戶登錄多次
- 7. Spring Security登錄變形:用戶在登錄之前必須先激活賬號
- 8. 在禁止之前,可以拒絕多少次Android應用更新?
- 9. 成功登錄前必須登錄兩次
- 10. PowerShell的 - 用戶下次登錄時須更改密碼
- 11. 重置Meteor帳戶密碼後禁用登錄 - 密碼
- 12. 如何區分「用戶下次登錄時必須更改密碼」和「密碼錯誤」用例?
- 13. MySQL錯誤1820必須重置密碼
- 14. 我想設置「密碼必須在下次登錄時更改」標誌
- 15. Facebook登錄重置密碼
- 16. 檢測用戶是否必須重置密碼在Active Directory中
- 17. 如何爲本地Windows用戶啓用用戶標誌'用戶必須在下次登錄時更改密碼'?
- 18. curl_multi_exec必須被調用多少次?
- 19. 您必須在使用Bugzilla的這部分代碼之前登錄,代碼:410
- 20. 權限被拒絕(公鑰,密碼)。同時使用SSH登錄
- 21. ORA-01017:無效的用戶名/密碼;登錄被拒絕時使用wss4j
- 22. ora-1017無效的用戶名/密碼;登錄被拒絕使用occi連接
- 23. 每次使用Cucumber&Devise Gems測試登錄用戶時,是否必須登錄?
- 24. 使用Facebook SDK登錄PHP - 用戶必須單擊登錄兩次
- 25. 多用戶和密碼javascript登錄
- 26. 多登錄用戶和密碼Java
- 27. 多應該必須查詢
- 28. twitter oauth必須授權用戶每次登錄
- 29. Android - Windows Live API,用戶每次都必須登錄?
- 30. adLDAP用戶必須更改密碼
想像一個攻擊者。如果您將人員鎖定並迫使他們更改密碼,那麼攻擊者可以做什麼?安全包括入侵和拒絕(或煩人)訪問他人。 – TheGreatContini
[基於表單的網站身份驗證的權威性指南]的可能重複 –