失效的身份認證和會話管理漏洞是指,應用程序的權限管理和會話管理模塊在處理用戶登入登出、密碼管理和用戶登錄信息本地存儲等方面,存在認證被繞過或者身份信息被截獲破解的可能。簡單來說就是應用程序中與身份驗證或者會話相關的功能未正確實現,導致攻擊者可以破壞密碼、密鑰、會話令牌或者利用其他缺陷來假冒用戶的身份,達到攻擊的目的。常見的利用方式有憑證填充、弱密碼、密碼破解、不安全的密碼存儲、越權訪問等。
預防失效的身份認證與會話管理漏洞措施有以下這些:
始終生成新的會話。如用戶登錄成功生成新ID,登錄失敗后嘗試再次登錄時原有的ID失效,重新給與一個新ID,防止ID重用,
不應使用簡單或可預期的密碼恢復問題,登錄出錯時不應提供太多的提示,應使用統一的出錯提示。
登錄驗證成功后更換Session ID,并且最好使用128位以上具備隨機性的Session ID,不應在URL中顯示Session ID。
第一次登錄時強制修改密碼,對多次登錄失敗的賬號進行短時鎖定,設置會話閑置超時,超時后強制刷新頁面否則無法登陸。
提供用戶注銷退出功能,用戶關閉瀏覽器或者注銷時,刪除用戶Session;
保護Cookie,如在應用程序中為Cookie設置安全屬性為Secure flag和HttpOnly flag。
強制使用一定復雜度的密碼且加密存儲,登錄驗證使用用戶名、密碼、后臺驗證碼三者結合,驗證碼具有時效性,登錄失敗后的提示信息模糊化,不得提示具體是用戶名錯誤還是密碼錯誤。
登錄后的接口均需要攜帶認證后的token方可正確訪問,token具有時效性,超時將會失效,時效時長設置合理。
不需要認證的接口,也需要采用公司內部制定的token生成方法,前端工程師調用接口時攜帶,且前端代碼必須被混淆。
回答所涉及的環境:聯想天逸510S、Windows 10。
失效的身份認證和會話管理漏洞是指,應用程序的權限管理和會話管理模塊在處理用戶登入登出、密碼管理和用戶登錄信息本地存儲等方面,存在認證被繞過或者身份信息被截獲破解的可能。簡單來說就是應用程序中與身份驗證或者會話相關的功能未正確實現,導致攻擊者可以破壞密碼、密鑰、會話令牌或者利用其他缺陷來假冒用戶的身份,達到攻擊的目的。常見的利用方式有憑證填充、弱密碼、密碼破解、不安全的密碼存儲、越權訪問等。
預防失效的身份認證與會話管理漏洞措施有以下這些:
始終生成新的會話。如用戶登錄成功生成新ID,登錄失敗后嘗試再次登錄時原有的ID失效,重新給與一個新ID,防止ID重用,
不應使用簡單或可預期的密碼恢復問題,登錄出錯時不應提供太多的提示,應使用統一的出錯提示。
登錄驗證成功后更換Session ID,并且最好使用128位以上具備隨機性的Session ID,不應在URL中顯示Session ID。
第一次登錄時強制修改密碼,對多次登錄失敗的賬號進行短時鎖定,設置會話閑置超時,超時后強制刷新頁面否則無法登陸。
提供用戶注銷退出功能,用戶關閉瀏覽器或者注銷時,刪除用戶Session;
保護Cookie,如在應用程序中為Cookie設置安全屬性為Secure flag和HttpOnly flag。
強制使用一定復雜度的密碼且加密存儲,登錄驗證使用用戶名、密碼、后臺驗證碼三者結合,驗證碼具有時效性,登錄失敗后的提示信息模糊化,不得提示具體是用戶名錯誤還是密碼錯誤。
登錄后的接口均需要攜帶認證后的token方可正確訪問,token具有時效性,超時將會失效,時效時長設置合理。
不需要認證的接口,也需要采用公司內部制定的token生成方法,前端工程師調用接口時攜帶,且前端代碼必須被混淆。
回答所涉及的環境:聯想天逸510S、Windows 10。