程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> 【Java】系統漏洞:關於用戶登錄後操作的注意事項,java用戶登錄

【Java】系統漏洞:關於用戶登錄後操作的注意事項,java用戶登錄

編輯:JAVA綜合教程

【Java】系統漏洞:關於用戶登錄後操作的注意事項,java用戶登錄


項目背景:

SpringMVC + Mybatis  + MySql數據庫(javaWeb項目開發)

相關模塊:登錄,個人詳細信息修改,訂單詳情查詢

相關漏洞介紹:

  1.登錄的驗證碼:登錄的驗證碼一定要在後台做驗證,如果只是前台驗證驗證碼後,後台未驗證,可能會發生第一次驗證驗證碼後,通過工具繞過驗證碼進行暴力破解;

  2.攔截器:要對登錄後的如個人信息操作的接口名稱要使用/user或者/admin進行攔截,如用戶未登錄,將自動跳轉至登錄頁面;

  3.個人詳細信息修改:用戶的信息要存放在session裡面,如用戶的id,這樣進行個人信息修改的時候,如果是免密接口(即修改信息不需要密碼),修改賬號信息的時候,一定不要直接傳用戶的id來做唯一的標識,使用用戶的關鍵性信息的時候,可以從session獲取當前登錄用戶的信息,防止如賬戶為3000001的用戶登錄後修改賬戶3000002的用戶的個人信息;

  4.訂單詳情接口:如果是查詢用戶的訂單詳情,只通過訂單id進行查詢的話,即使接口名加了/user,攔截了未登錄的用戶,也有可能發生其他用戶登錄後可以查詢到非本人訂單的詳情信息。對於此種情況,一定要在查詢訂單詳情前,驗證此訂單是當前登錄用戶的個人訂單,即驗證session中的id與此訂單的創建人的id一致;防止信息的洩露;

(備注:以上漏洞真實發生過,發出來希望其他新人引以為戒,也希望能和更多的人一起交流開發中遇到的問題)

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved