http網站中普通用戶賬號邏輯越權獲取管理員權限漏洞
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
想要挖掘一個漏洞我們首先就要知道這個漏洞是如何產生的。 1.漏洞產生原理 邏輯越權漏洞就是不同用戶之間操作權限的請求數據包沒有做驗證或驗證不完整,導致用戶A修改了身份驗證的標志后,就有了同權限或高權限的操作權限。 通常用戶訪問一個應用的大致流程是:登陸—驗證權限—數據庫查詢—數據返回,如果”驗證權限”這個階段出現驗證權限不足或沒有驗證,那么就會導致越權,用戶A可以操作其他用戶的內容。 邏輯越權有兩種類型,垂直和水平越權,可以理解為,在修改某個用作身份標識的參數后,用戶A擁有了用戶B對于應用的操作權限。 水平越權(同級別越權):也叫做訪問控制攻擊。web應用程序在接受用戶發(fā)送過來的操作請求時,沒有判斷這條請求的數據操作所屬人,攻擊者可修改某個ID之類的身份驗證,從而使A用戶具有操作B賬號的權力。 垂直越權(跨級別越權):也叫做權限提升攻擊。使用低權限的賬號,發(fā)送高權限賬號才能有的請求,獲得其高權限的操作。 2.漏洞利用 水平越權:修改對應身份驗證的參數,如userid=1修改成userid=2來判斷是否存在水平越權漏洞 垂直越權:獲取高權限賬號下的操作數據請求包,修改身份驗證參數(cookie)等來判斷是否存在垂直越權漏洞。 如何獲取高權限賬號請求數據包: 1,高權限賬號直接代理抓取或普通權限賬號獲?。ㄐ枰嬖诠δ埽?/span> 2,開源自行搭建,抓取數據包 3,根據普通賬號猜測 3.靶場案例講解——使用pikachu靶場 在這里給大家推薦:http://114.116.45.110/里面有各種靶場,不想自己搭建的小伙伴可以使用一下。 水平越權 點擊提示選擇lucy登錄,點擊查看個人信息 我們發(fā)現,lucy的信息是通過username參數以get請求方式提交的,我們這時候就可以修改username參數,修改成lili試試查看其信息,修改username參數的內容直接返回了lili的個人信息 當前是以用戶名為lucy登錄的,但我們通過修改username參數直接查詢到了lili的個人信息,而lili和lucy屬于同一級別用戶,所以存在水平越權漏洞。 垂直越權 點擊提示,用超級管理員登錄 添加用戶,并且使用Burp抓包 將抓到的包放入repeater中,放行包,發(fā)現生成了一個xiaoheizi用戶 退出登錄,使用普通用戶登錄,并使用Burp抓包獲取cookie值:ifs79568fb7t1inga7fl9dvfq2 進入repeater中,將超級管理員的cookie,換成普通用戶的cookie,并send發(fā)送 刷新普通用戶界面,發(fā)現我們使用普通用戶添加了一個xiaoheizi用戶 區(qū)別:水平越權只能獲得同級別權限,垂直越權能獲得更高級別的權限。 4.危害 越權漏洞的危害與影響主要是與對應業(yè)務的重要性相關,⽐如說某⼀頁⾯服務器端響應(不局限于頁⾯返回的信息,有時信息在響應包中,頁⾯不⼀定能看見)中返回登錄名、登錄密碼、⼿機號、⾝份證等敏感信息,如果存在平⾏越權,通過對⽤戶ID的遍歷,就可以查看所有⽤戶的敏感信息,這也是⼀種變相的脫褲,⽽且很難被防⽕墻發(fā)現,因為這和正常的訪問請求沒有什么區(qū)別,也不會包含特殊字符,具有⼗⾜的隱秘性 5.防護 1,前后端同時對用戶輸入信息進行校驗,雙重驗證機制 2,調用功能前先驗證用戶是否具備此功能的操作權限 3,直接對象引用的加密資源ID,防止攻擊者枚舉ID,敏感數據特殊化處理 4,永遠不要相信來自用戶的輸入,對可控參數進行過濾,驗證和編碼等 該文章在 2024/1/22 9:01:23 編輯過 |
關鍵字查詢
相關文章
正在查詢... |