pikachu垂直越权(添加用户)

本文讨论了一种安全漏洞,即在同一浏览器上登录普通用户和管理员时,由于使用相同cookie导致的垂直越权问题。攻击者可以捕获表单数据包,利用普通用户的cookie执行管理员操作。为修复此问题,建议对特权操作不仅检查cookie,还要验证用户ID的权限,并引入token机制增强安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最终效果:普通用户向服务器提交添加用户的表单也可以实现用户添加;

过程:获取数据包--发送数据包--查看效果

1. 攻击者获得表单对应数据包

方法:本地搭建环境抓取数据包

本地登录admin账户后,进行添加用户操作,抓取对应表单数据包。

2. 攻击者发送数据包

攻击者先以普通用户身份登录获得cookie,然后将cookie字段用于第一步得到的数据包中

 tip:如果你只是又开了一个窗口登录了普通用户,或许会发现用户的cookie和admin的cookie是一样的。这和session的分发机制有关,不影响实验,你可以在抓到数据包之后就退出admin登录。

3. 查看效果

成功!

注意:

为什么同时登录了用户和管理员,当管理员退出登录后直接提交添加表单会添加失败?

原因在于:退出登录后当前cookie就失效了。刷新会发现需要你重新登录,然后使用新的cookie才会成功。

漏洞原因及修复方案:

我认为这里漏洞产生的原因就在于:在一个浏览器上同时登陆普通用户和管理员时使用的是相同的cookie,并且在进行添加操作时也单检查了cookie。这意味着即使不是管理员只要成功登录获得了cookie就拥有了管理员权限,获得了数据包后使用当前cookie就可以进行管理员操作。

针对这里垂直越权修复方案:

1. 对于特权操作:不单检查cookie,同时检查当前用户id是否具有相应权限

2. 使用token

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值