越權漏洞
原理
該漏洞是指應用在檢查授權時存在紕漏,使得攻擊者在獲得低許可權使用者賬戶後,利用一些方式繞過許可權檢查,訪問或者操作其他使用者或者更高許可權。越權漏洞的成因主要是因為開發人員在對資料進行增、刪、改、查詢時對客戶端請求的資料過分相信而遺漏了許可權的判定,一旦許可權驗證不充分,就易致越權漏洞。
分類
越權漏洞原理及防禦方案 - 知乎 (zhihu.com)
水平越權
水平越權:指攻擊者嘗試訪問與他擁有相同許可權的使用者資源。例如,使用者A和使用者B屬於同一角色,擁有相同的許可權等級,他們能獲取自己的私有資料(資料A和資料B),但如果系統只驗證了能訪問資料的角色,而沒有對資料做細分或者校驗,導致使用者A能訪問到使用者B的資料(資料B),那麼使用者A訪問資料B的這種行為就叫做水平越權訪問。
垂直越權
垂直越權:由於後臺應用沒有做許可權控制,或僅僅在選單、按鈕上做了許可權控制,導致惡意使用者只要猜測其他管理頁面的URL或者敏感的引數資訊,就可以訪問或控制其他角色擁有的資料或頁面,達到許可權提升的目的。
Pikachu
水平越權
開啟題目,一共三個同許可權的使用者
我們先登入一下,檢視個人資訊,發現url發生了變化
看到這個,我們可以猜測,去查詢資訊的時候,是把username這個引數代入到資料庫查詢,並沒有去判斷到底是不是這個使用者所發起的查詢,那我們就改一下引數,改成
username=kobe
的確拿到kobe的資訊,這就是水平越權
垂直越權
開啟題目,我們提示一下,一共兩個使用者
admin 超級使用者
pikachu 普通使用者
我們登入一下普通使用者,然後看看怎麼越權訪問超級大boss,發現我們只有檢視的許可權,搞不來
那我們登入一下admin,看一下都有什麼許可權,發現可以新增使用者
我們試著新增一個使用者,然後抓包一下,給資料傳送到repeater,過會有用,然後放包
發現是建立成功,我們刪掉這個,我們退出登入,然後去發一下剛才的包
在登陸admin,發現沒有建立成功,那我們退出,然後登陸一下pikachu,檢視一下cookie值
我們再去repeater發包(改成pikachu的cookie值)
發現我用pikachu這樣的普通使用者也是成功當超級boss了