我认为,无论是学习安全还是从事安全的人,多多少少都有些许的情怀和使命感!!!
越权漏洞
是一种很常见的逻辑安全漏洞
。可以这样理解:服务器
端对客户提出的数据操作请求过分信任,忽略
了对该用户操作权限的判定
,导致攻击账号拥有了其他账户的增删改查功能。
就是相同级别/权限
的用户或者同一角色/用户组不同的用户之间,可以越权访问、修改或者删除的非法操作。【相同用户权限之间的越权就做水平越权】
垂直越权是不同级别/权限
之间或不同角色/用户组之间的越权。【一般是低权限向高权限越权】
账号 | qwsn1 | qwsn2 |
---|---|---|
密码 | 123456 | asdfghjkl |
qwsn1的订单
商品订单页面 | 商品订单详情页面 |
---|---|
http://www.rbac.com/www/index.php/order-browse.html | http://www.rbac.com/www/index.php/order-view-阿拉伯数字.html |
如下图所示,是普通用户qwsn1的一个商品订单:
如下图所示,是普通用户qwsn1的商品订单的详情,我们通过火狐浏览器的开发者工具发现了该详情框是调用了一个order-view-7.html
的静态页面:
如下图所示,是普通用户qwsn1的商品订单的详情页面order-view-7.html
:
如下图所示,经过测试商品订单的详情页面order-vew-7.html
中的数字可以改变,比如查看order-view-8.html
从而查看到其他人的商品订单详情:【这就是一个水平越权漏洞】
qwsn2的订单
如下图所示,我们这里登录qwsn2的账号,发现确实是存在两个商品订单!!!与上面发现的漏洞相互照应!!!
【相同用户权限之间的越权就做水平越权】
一般水平越权,都是用一个普通账号去测试与之相比权限相同的用户的一些操作比如增删该查。
账号 | admin | qwsn1 | qwsn2 |
---|---|---|---|
密码 | admin | 123456 | asdfghjkl |
如下图所示,用admin登录系统,对qwsn1发布的帖子转义的时候进行抓包,注意此时还没有进行真正的抓包,需要设置好移动到哪个栏目后才进行抓包哦!!!
如下图所示,点击上图中的转移后弹出的框框,此时是转移前的栏目建议反馈:
如下图所示,我们可以选择转移到技术支持栏目:
如下图所示,我们选择了要转移到技术支持栏目,注意此时要开启拦截,再点击保存的时候,抓取数据包:
如下图所示,我们点击保存后,成功拦截到数据包,然后把包发送到repeater模块:
POST /www/index.php/thread-transfer-10.html HTTP/1.1
Host: www.rbac.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 13
Origin: http://www.rbac.com
Connection: close
Referer: http://www.rbac.com/www/index.php/thread/10.html
Cookie: cart=%5B%5D; t=%2C10%2C; theme=default; frontsid=rth8a1kok65tg5p11o764i9nt0; frontLang=zh-cn; productViewType=card
targetBoard=6
如下图所示,我们最后不能真的把他转移了,我们需要把拦截的包drop掉,或者等一会就会操作超时!!!
如下图所示,我们用qwsn2用户登录系统,然后刷新页面,抓取数据包,记录下当前的cookie值【Cookie: cart=%5B%5D; t=%2C10%2C; theme=default; frontsid=rth8a1kok65tg5p11o764i9nt0; frontLang=zh-cn; productViewType=card
】
如下图所示,我们转到BurpSuite的Repeater模块,此时还保存着admin用户转移帖子的数据包,这里把admin的cookie值替换为qwsn2的cookie值,就可以以qwsn2的身份利用admin的权限转移qwsn1的帖子了:
如下图所示,我们转移到论坛的技术支持栏目,发现成功转移,注意以下图中说明了不是真正的转移,而是复制粘贴效果是不准确的,这里又经过了测试,发现其实就是转移,此时再去点击原来栏目的内容会发现点击失败,当前栏目下删除一个后,其他的也不能够访问了,这明显就是转移操作嘛!!!
【普通用户的cookie+管理员用户的数据包】
一般垂直越权,都是用一个普通账号去测试与其相比较权限高的用户的一些操作比如增删该查。测试的方法就是cookie之间的替换。
增
加删
除改
查
询