Web安全测试之越权测试案例
生活随笔
收集整理的這篇文章主要介紹了
Web安全测试之越权测试案例
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
平行越權
攻擊者請求操作(增、刪、查、改)某條數據時,Web 應用程序沒有判斷該數據的所屬人,或者在判斷數據所屬人時直接從用戶提交的表單參數中獲取(如用戶ID),導致攻擊者可以自行修改參數(用戶ID),操作不屬于自己的數據
案例1:某高校教務系統用戶可越權查看其他用戶個人信息
- (1) 以 "高某某" 學號為12Sxxxx0031為例,登錄教務系統,并查看該賬號的學籍信息。
- (2) 訪問學號為 12Sxxx0032 的學生的學籍信息
- (3) 訪問學號為 12Sxxx0033 的學生的學籍信息
案例2:某電商網站用戶可越權查看或修改其他用戶信息
- (1) 注冊賬號并登錄,當前用戶名為 april,UserID 為 460,添加收貨地址并查看 "我的地址簿"
- (2) 使用 BurpSuite 抓包,修改 cookie 中的 UserID 為360,提交后服務器返回地址信息
- (3) 在前臺下單并提交后,單擊查看 "我的訂單"
- (4) 同時使用 BurpSuite 抓包,修改cookie中的UserID 改為 360,提交后服務器返回的訂單信息
案例3:某手機APP普通用戶可越權查看其他用戶個人信息
- (1) 注冊用戶并登錄后點擊"系統設置->個人信息" 處查看個人信息
- (2) 使用 BurpSuite 抓包并修改 studentId 為188750,提交后服務器返回其他用戶信息
- (3) 修改 studentId 為 138850,提交后服務器返回其他用戶信息
?
縱向越權
案例1:某辦公系統普通用戶權限越權提升為系統權限
- (1) 使用普通權限賬號 a02 登錄辦公系統,嘗試修改權限。由于普通用戶無法訪問修改權限模塊,系統會跳轉到 NoPower 頁面提示用戶無操作權限
- (2) 使用 BurpSuite 修改 Cookie 中的 Tname 參數為 admin,欺騙服務器該請求為系統管理員發出的,成功提升賬號 a02 為系統管理員權限
- (3) 再次訪問權限修改 modifyuser 頁面 ,可成功訪問
案例2:某中學網站后臺可越權添加管理賬號
- (1) 訪問登錄頁面,嘗試登錄,由于不知道賬號密碼,所以登錄失敗。
可直接打開添加用戶頁面,添加賬號 test,密碼為123456,添加完用戶返回首頁登錄 - (2) 登錄成功后,提示沒有分配管理權限,然后會強制退出管理系統。但此時會生成一個 Cookie
- (3) 使用該 Cookie ,可直接打開分配權限的頁面。其中 test 用戶不能修改自己的權限,但可以修改其他用戶的權限。再添加一個新用戶 test2,兩者可以互相添加權限
- (4) 使用 test 賬號修改test2賬號的權限為管理員權限
- (5) 使用 test2 賬號重新登錄,成功進入管理后臺
案例3:某智能機頂盒低權限用戶可越權修改超級管理員配置信息
- (1) 使用超級管理員登錄,配置 user 密碼。智能機頂盒設備的超級管理員的賬號和密碼為??chinanet/123456,登錄后查看該機頂盒的設備信息。使用超級管理員登錄后,在 "管理" 模塊下的 "用戶管理" 中配置 user 用戶的密碼
- (2) 使用超級管理員配置 proxy 代理地址,通過超級管理員在 "應用" 模塊下的 "proxy代理" 中配置,使用抓包工具抓取提交的鏈接和參數
- (3) 退出超級管理員,清除瀏覽器的 Cookie 信息,使用 user 賬號登錄。與超級管理員相比,user 用戶在 "應用" 模塊中只有簡單的 "日常應用" 一項權限,并沒有其他的權限
- (4) 利用 user 用戶的權限來配置以前沒有權限配置的 proxy 代理,直接使用hackbar 工具通過 POST 方式提交數據。通過抓取的數據包可以看出,使用的是 user 用戶權限進行提交的。
- (5) 再次使用超級管理員chinanet 賬戶登錄,單擊進入 "proxy代理" 的配置,此時內容已發生改變了。
PS:其實這個案例說白了也就是使用普通賬號的cookie去成功調用了本該只屬于超級管理員的接口。
案例4:某Web防火墻通過修改用戶對應菜單類別可提升權限
- (1) 以 audit 用戶身份登錄系統,使用 BurpSuite 抓包 category 的值 system.audit 修改為 system.admin
- (2) category 的值修改后,單擊 Forward,進入管理員管理界面。
- (3) 將 audit 賬號的權限設置為最大
- (4) 再使用 audit 賬號登錄系統,audit 賬號擁有管理員權限。
防范越權訪問漏洞的相關手段
實現應用程序的完善的訪問控制不是件容易的事,越權漏洞防不勝防。
- (1) 執行關鍵操作前必須驗證用戶身份,多階段功能的每一步都要驗證用戶身份
- (2) 對于直接對象引用,加密資源ID,以防止攻擊者對ID進行枚舉
- (3) 在前端實現的驗證并不可靠,前端可以驗證用戶的輸入是否合規,要在服務端對請求的數據和當前用戶身份做校驗。檢查提交 CRUD 請求的操作者(Session)與目標對象的權限所有者(查數據庫)是否一致,如果不一致則阻斷
- (4) 在調用功能之前,驗證當前用戶身份是否有權限調用相關功能(推薦使用過濾器,進行統一權限驗證)
- (5) 把屬主、權限、對象、操作的場景抽象成一個統一的框架,在框架內統一實現權限的管理和檢查。
總結
以上是生活随笔為你收集整理的Web安全测试之越权测试案例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DPA华为备份一体机异机恢复达梦数据库
- 下一篇: 计算机项目化教学,计算机教学中项目化教学