参考借鉴
pikachu之越权漏洞_pikachu越权漏洞-CSDN博客
水平越权
需要输入username和password进行登录
查看提示,获取username和password
输入其中一组账号信息进行登录
可以查看到个人信息
在URL中更改username的值-->回车
成功越权,登录到其他账号
垂直越权
查看提示,获取username和password
登录pikachu看看,只有查看权限
登陆admin看看,除了查看还可以添加、删除用户
方法1
登录admin-->添加用户
复制当前网页的URL
http://127.0.0.1/vul/overpermission/op2/op2_admin_edit.php
退出admin,选择pikachu进行登录
在搜索框中粘贴刚刚复制的URL
普通账号也能添加用户
查看用户列表,发现创建成功
方法2
使用admin用户添加一个用户,并使用BP抓包(删除用户也行)
将抓到的包 右键-->发送给Repeater
退出admin,登录pikachu,使用BP抓包
将数据包中的Cookie复制
Cookie: PHPSESSID=geuki66l87jid5sk543arjk8sl
重发器-->将admin的Cookie换成pikachu的Cookie-->修改用户信息-->发送
查看用户列表,发现创建成功
防范措施
1、前后端同时对用户输入信息进行校验,双重验证机制
2、 执行关键操作前必须验证用户身份,验证用户是否具备操作数据的权限
3、特别敏感操作可以让用户再次输入密码或其他的验证信息。
4、可以从用户的加密认证 cookie 中获取当前用户 id,防止攻击者对其修改。或在 session、cookie 中加入不可 预测、不可猜解的 user 信息。
5、直接对象引用的加密资源ID,防止攻击者枚举ID,敏感数据特殊化处理
6、永远不要相信来自用户的输入,对于可控参数进行严格的检查与过滤