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