用户名覆盖
渗透测试中,某些不严谨的开发人员,对于注册时,当输入用户名时不会对之前数据库中存在的用户名进行检查,判断是否存在
登录查看时却获取到数据库中同名用户的其他用户信息,导致其他用户信息泄露,或者由于验证用户名存在时,从前端获取到的数据与从数据库获取到的数据不同,但是往数据库中写入的时候却写了相同的部分
而登陆时,当检测到是管理员用户名就给与管理权限。

在登陆的时候可以看到他只判断了username(但是实战中出现的几率还是偏少)
权限类逻辑漏洞
越权漏洞又分为平行越权,垂直越权和交叉越权。 平行越权:权限类型不变,权限ID改变垂直越权:权限 ID 不变,权限类型改变交叉越权:即改变 ID,也改变权限
平行权限跨越
水平越权指的是攻击者尝试访问与他拥有相同权限的用户的资源,怎么理解呢?
比如某系统中有个人资料这个功能,A账号和B账号都可以访问这个功能,但是A账号的个人信息和B账号的个人信息不同
可以理解为A账号和B账号个人资料这个功能上具备水平权限的划分。此时,A账号通过攻击手段访问了B账号的个人资料,这就是水平越权漏洞。
基于用户身份ID
在使用某个功能时通过用户提交的身份ID(用户ID、账号、手机号、证件号等用户唯一标识)来访问或操作对应的数据
某系统存在水平越权漏洞

抓取订单提交的数据包,发现有一个oid很可疑。
尝试进行测试发现,可遍历订单号,查看他人待付款订单信息。
基于文件名
在使用某个功能时通过文件名直接访问文件
某系统存在水平越权漏洞

遍历fileid可以下载到数十万的资质文件: http://**.**.**.**/sFile-image.action?fileid=9316
垂直权限跨越
垂直越权指的是一个低级别攻击者尝试访问高级别用户的资源。比如说某个系统分为普通用户和管理员,管理员有系统管理功能,而普通用户没有,那我们就可以理解管理功能具备垂直权限划分,如果普通用户能利用某种攻击手段访问到管理功能,那我们就称之为垂直越权。
某站点后台仅使用js跳转来限制未授权的用户访问。

去掉js可以成功访问后台,且可以进行操作
未经授权访问
使用default用户名和密码:useradmin / admin!@#$%^登录系统。

成功登录后台。
依次点击“对象管理——>用户管理——>编辑‘useradmin’——>得到URL:*.*.*.*/cgi-bin/webif/Objset-users.sh?edituser=edituser&id=5”

修改参数id为:id=4,成功垂直越权telecomadmin。
查看源码,可读取telecomadmin密码:telecomadmin34224223,至此已获得最高管理员权限