流量重定向实现端口复用
2021-06-16 21:43:09 Author: forum.90sec.com(查看原文) 阅读量:207 收藏

浅谈越权访问漏洞风险

01 越权漏洞

越权漏洞是Web应用程序中常见的安全漏洞。该漏洞是指应用在检查授权时存在纰漏,使得攻击者在获得低权限用户账户后,利用一些方式绕过权限检查(比如说修改数据包的值或者直接访问其他用户相应页面的链接),访问或者操作其他用户或者更高权限用户才能访问到的页面或数据。

越权漏洞的成因主要是因为开发人员在对数据进行增、删、改、查询时对客户端请求的数据过分相信而遗漏了权限的判定。

02 越权分类

水平越权:指攻击者尝试访问与他拥有相同权限的用户资源。

垂直越权:指低级别攻击者尝试访问高级别用户的资源。
image

03 越权出现的位置
水平越权

1、直接对象引用

这种通过修改一下参数就可以产生水平越权,例如查看用户信息页面URL后加上自己的id便可查看,当修改为他人的ID号时,会返回他人的信息,便产生了水平越权

2、多阶段功能

多阶段功能是一个功能有多个阶段的实现。例如修改密码,可能第一步是验证用户身份信息,号码验证码类的。当验证成功后,跳到第二步,输入新密码,很多程序会在这一步不在验证用户身份,导入而已攻击者抓包直接修改参数值,导致可修改任意用户的密码

3、静态文件

很多网站的下载功能,一些被下载的静态文件,例如pdf、word、xls等,可能只有付费用户或者会员才可以下载,但当这些文件url地址泄露后,便会导致任何人可以下载,如果指导URL命名规则,则会便利服务器的收费文档进行批量下载。

垂直越权

1、通过隐藏URL实现控制访问

有些程序的管理页面只有管理员才显示,普通用户看不到,利用URL实现访问控制,但URL泄露或被而已攻击者猜到后,会导致越权攻击。

2、多阶段功能

多阶段功能是一个功能有多个阶段的实现,例如修改密码,可能第一步是验证用户身份信息,号码验证码类的。当验证成功后,跳到第二步,输入新密码,很多程序会在这一步不在验证用户身份,导致恶意攻击者通过抓包直接修改参数值,导致可修改任意用户密码。

3、平台配置错误

一些程序会通过控件来限制用户的访问,例如后台地址,普通用户不属于管理员组,则不能访问。但当配置平台或者配置控件错误时,就会出现越权访问。

04 测试越权漏洞

水平越权

先注册普通账号test1、test2,修改参数,抓包
image
image
image

拦截Test1界面数据,test1的userid为13
image

拦截Test2界面数据,test2的userid为15
image

在test2数据包下修改userid值为test1的userid=13
image

结果发现:test2成功攻击,并将test1的信息修改为test2的内容
image

垂直越权
image
image

修改admin、shenfen为1

Cookie:ASPSESSIONIDSSTDRRRQ=KEBNJFHCOAODAHDGPIPIBLGE; BWSsoft%5F2010=phone=12345678901&admin=1&realname=test1&dlcs=1&username=test1&bumen=test1&loginname=test1&danwei=test1&shenfen=1&UserID=11
image

Forward后test1身份变成管理员
image

获得管理员权限可以进行“添加用户”操作
image

抓取数据包 继续修改Cookie中的admin、shenfen为1
image

放包,页面显示用户添加成功
image

查看用户管理可见成功添加test11账号
image

05 越权访问漏洞防范

1、不相信来自用户的输入,对于可控参数进行严格的检查与过滤;

2、执行关键操作前必须验证用户身份;

3、直接对象引用的加密资源id,防止攻击者枚举id;

4、前后端同时校验;

5、调用功能前验证用户是否有权限调用相关功能。


文章来源: https://forum.90sec.com/t/topic/1722/1
如有侵权请联系:admin#unsafe.sh