若是使用A用戶的權限去操做B用戶的數據,A的權限小於B的權限,若是可以成功操做,則稱之爲越權操做。 越權漏洞造成的緣由是後臺使用了不合理的權限校驗規則致使的。前端
通常越權漏洞容易出如今權限頁面(須要登陸的頁面)增、刪、改、查的的地方,當用戶對權限頁面內的信息進行這些操做時,後臺須要對當前用戶的權限進行校驗,看其是否具有操做的權限,從而給出響應,而若是校驗的規則過於簡單則容易出現越權漏洞。數據庫
全部用戶信息查詢,修改,等頁面.cookie
如網上銀行的餘額信息,普通網站的我的資料查詢修改等頁面.session
只要涉及到要從數據庫中查詢或提交數據的地方,都有可能存在越權漏洞的產生.post
A用戶和B用戶屬於同一級別用戶,但各自不能操做對方我的信息,A用戶若是越權操做B用戶的我的信息的狀況稱爲平行越權操做。網站
即:不一樣帳號之間是同一權限,但抓包該用戶可以直接換號訪問3d
注:兩個帳號之間是相同的普通權限blog
A用戶權限高於B用戶,B用戶越權操做A用戶的權限的狀況稱爲垂直越權。接口
即:不一樣帳號名之間是不一樣權限,但抓包該用戶名可以直接執行不一樣權限的命令圖片
首先以root用戶登陸建立用戶同時抓取數據包:
抓取普通用戶登陸的cookie信息
將管理員頁面的cookie信息替換爲普通用戶的cookie,查看有沒有建立用戶(實現的是普通用戶越權進行了管理員建立用戶的操做)
當攻擊者知道建立post的地址以及referer信息就能直接構造數據傳遞。
源碼示例:
注意看源代碼處:源代碼處可能在登錄處作了校驗,可是登陸後的各類操做時並無對session、id參數等進行校驗,致使越權。
(嘗試遍歷id使用)
邏輯漏洞以思惟的方式進行探測,即發現開發中可能忽略的細枝末節或者說是考慮不周全的問題,經過這些問題達到利用漏洞的方式進行突破。
通常來講,邏輯漏洞都是在前端校驗,而未在服務端作校驗,纔會形成邏輯漏洞;同時邏輯漏洞並非泛指某一類的漏洞,而是指全部可能被忽視的地方都會產生邏輯漏洞。
肯定業務流程--->尋找流程中能夠被操控的環節--->分析可被操控環節中可能產生的邏輯問題--->嘗試修改參數觸發邏輯問題
通常來講,對重要的地方,如交易支付、密碼修改、密碼找回、越權修改、越權查詢、突破限制等各種重要的地方去探測邏輯漏洞。
一、交易支付中的邏輯問題:
• 加入購物車時是否能夠修改購買數量爲負數,商品價格是否能夠修改.
• 確認購物車信息時是否能夠修改商品數量爲負數,是否存在折扣限制突破問題,是否能夠修改商品總金額.
• 輸入物流信息時是否能夠控制運費,若是能夠,嘗試修改成負數.
• 確認訂單後跳轉支付接口時是否能夠修改支付金額,能否不支付直接跳轉到交易成功環節.
示例:
二、密碼修改邏輯漏洞
• 首先走一遍正常的密碼修改流程,把過程當中全部環節的數據包所有保存.
• 分析流程中哪些步驟使用了哪些身份認證信息,使用了哪些認證方法.
• 分析哪一個步驟是能夠跳過,或者能夠直接訪問某個步驟.
• 分析每一個認證方法是否存在缺陷,能否越權
• 首先嚐試正常密碼找回流程,選擇不一樣找回方式,如郵箱,手機,密碼提示問題等.
• 分析各類找回機制所採用的驗證手段,如驗證碼的有效期,有效次數,生成規律,是否與用戶信息相關聯等.
• 抓取修改密碼步驟的全部數據包,嘗試修改關鍵信息,如用戶名,用戶ID,郵箱地址,手機號碼等。
交易支付(修改金額爲負數或爲o)、密碼修改(是否有原密碼)、密碼找回
(
一、改數據包跳過步驟
二、用本身的用戶身份找回密碼,在最後修改密碼的時候抓包修改爲其它用戶
三、修改返回包,把0改爲1或false改爲true
四、手機號密碼找回看一下返回包裏面是否有手機驗證碼、
五、郵箱密碼找回的時候,試試修改郵箱,用別人的賬號找回,發郵件填寫本身的郵箱、
六、驗證碼長度短,純數字能夠直接burp暴破
七、同一驗證碼能夠登陸不一樣賬號
八、驗證碼純數字,無時間限制
九、密碼找回答案比較簡單 或參數判斷不嚴格
)
、越權修改、越權查詢、突破限制等各種邏輯漏洞
一、任意修改用戶資料
二、任意查詢用戶信息
三、任意重置用戶密碼
四、惡意註冊
五、惡意短信
六、佔用資源(時間)
七、其餘邏輯漏洞