【渗透测试专栏】1.2认证和授权类-越权访问(水平/垂直越权)

该系列专栏旨在让漏洞检测变得更简单,只用于学习用途

靶机环境请看专栏前言专栏前言-WooYun漏洞库环境搭建-CSDN博客

目录

该系列专栏旨在让漏洞检测变得更简单,只用于学习用途

一、漏洞描述

1、水平越权

2、垂直越权

二、漏洞级别

三、漏洞检测方法

漏洞修复


一、漏洞描述

偏业务漏洞

1、水平越权

水平越权指的是在同一权限级别下,用户可以访问其他用户的资源或执行其他用户的操作。例如,在一个在线购物系统中,用户 A 和用户 B 都是普通用户,他们应该只能访问自己的订单信息、个人资料等。但如果存在水平越权漏洞,用户 A 可能能够访问用户 B 的订单信息,或者修改用户 B 的个人资料。

产生水平越权的原因通常是系统在进行权限校验时不够严格,没有正确地识别用户的身份和权限范围。比如,仅仅依靠用户的 ID 来确定资源的访问权限,而没有对用户的角色或其他标识进行充分的验证。

2、垂直越权

垂直越权则是低权限的用户能够访问高权限用户的资源或执行高权限的操作。例如,在一个企业管理系统中,普通员工通常只能查看自己的工作任务和提交工作报告。而管理员则可以管理用户账号、审批重要文件等。如果存在垂直越权漏洞,普通员工可能能够执行管理员的操作,如删除用户账号或修改系统设置。

垂直越权的出现可能是由于系统在权限管理的层次划分上不清晰,或者在权限校验的过程中存在漏洞。比如,没有对用户的权限进行严格的分层管理,或者在某些关键操作的权限校验中没有考虑到用户的实际权限级别。

越权访问漏洞可能会导致严重的安全问题,如用户隐私泄露、数据被篡改、系统被恶意控制等。为了防止越权访问漏洞的出现,开发人员应该在系统设计和开发过程中,采用严格的权限管理机制,对用户的身份和权限进行充分的验证和授权,确保用户只能访问和操作自己有权限的资源。

二、漏洞级别

高危

三、漏洞检测方法

1、 以超管 admin(高权限用户) 身份登录系统

2、 找到一个只有超管(高权限)才有的功能的链接,比如说:"http://localhost/mywebappname/userManage/userList.do" , 显示出所有的user,并复制此链接.

3、 以普通用户登陆进系统,在地址栏输入: userManage/userList.do ,如果可以查看到其所有的user,则就造成了,普通用户的越权访问

漏洞修复

对用户操作进行权限校验,防止通过修改参数进入未授权页面及进行非法操作,建议在服务端对请求的数据和当前用户身份做一个校验检查。

流程描述:在服务器接收到用户发送的页面访问请求时,根据预设的识别策略,从用户的页面访问请求中提取该用户对应的用户唯一标识信息,同时提取所述页面访问请求对应的应答页面中的表单及该表单中不可修改参数,将所述表单及不可修改参数与所述用户唯一标识信息绑定后记录到参数列表中;检测到用户提交请求页面的表单时,将所述请求页面的表单及不可修改参数与该用户对应的所述参数列表中记录的表单及不可修改参数进行比对,控制该用户的访问。

例如:

登陆时将用户名存入session

session.setAttribute("username",username);

在相关页面判断

if((String)session.getAttribute("username")!=admin){

(response.sendRedirect("XXX.jsp")};

注意: xxx.jsp为自定义的错误页面。

相关推荐
Wang's Blog2 分钟前
Linux小课堂: SSH 免密登录原理与实现之基于公钥认证的安全连接机制
linux·安全·ssh
学编程的小程1 小时前
从被动防御到主动防护:雷池WAF+cpolar的安全实践
安全
测试开发Kevin4 小时前
EDR:现代网络安全的“哨兵”与“侦探”
网络·安全
华硕广东4 小时前
电脑卡在 “正在准备 Windows”?5 步解决:从等待到重装
科技·安全·技术美术
字节跳动安全中心4 小时前
打造可信AI Agent:如何让智能体不跑偏、不越界,安全又靠谱
人工智能·安全·agent
newxtc17 小时前
【浙江政务服务网-注册_登录安全分析报告】
运维·selenium·安全·政务
alex10019 小时前
API安全漏洞详解:Broken Function Level Authorization (BFLA) 的威胁与防御
网络·安全
leagsoft_10031 天前
上新!联软科技发布新一代LeagView平台,用微服务重塑终端安全
科技·安全·微服务
用户47949283569151 天前
什么是XSS攻击,怎么预防,一篇文章带你搞清楚
前端·javascript·安全