逻辑漏洞——权限控制问题

一、权限控制

1、什么是权限控制

2、权限控制的方式

 (1)、ACL(访问控制列表)

 (2)、RBAC(角色型访问控制)

 3、权限控制的问题

权限控制有两个问题:一、未授权访问 二、越权访问

(1)、未授权访问

 

(2)、越权访问

越权访问又分为:水平越权、垂直越权

水平越权:同级别的角色越权访问,例如,不同部门的同级别的员工他们之间所访问的文件不一样,权限也不同,A部门越权访问了B部分的文件

垂直越权:简单来说,就是对上级权限的获取,例如普通用户到管理员用户

 


实例一、越权之水平越权

原理:

水平越权也叫横向越权,相同权限下不同的用户可以互相访问,比如A和B是相同权限下的用户,如果A能看到理论上只有B能看到的信息,或者A能执行理论上只有B能执行的操作,这就是水平越权。

1、打开浏览器,访问http://ip/pikachu/vul/overpermission/op1/op1_login.php

2、由于水平越权需要相同权限下不同的用户可以互相访问,所以需要先使用账户登录。点击“点一下提示”,找到给出的用户名密码。

3、先使用lucy账户登录,登录成功后发现有“点击查看个人信息”的地方

4、点击之后,查看lucy的个人信息

5、发现查看lucy的个人信息的URL中参数username的值是用户名lucy;由此猜测该参数值是哪个用户名就回显哪个用户的信息,因此将username的值由lucy替换为lili,发现lucy用户信息的页面已经切换为Lili的用户信息,成功实现水平越权。

实例二、权限控制之垂直越权

1、打开浏览器,访问http://ip/webug/pentest/test/3

2、输入用户名为:“tom”,密码为“123456”提交,登陆成功

3、点击更改密码,跳转到修改密码页面,用户名显示在URL

4、随便输入密码全部为:“test”

5、启动Burp Suite抓包工具,设置参数和浏览器代理

6、点击“更改密码”,提交输入的密码,Bp成功抓取数据包

7、将“username”更改为“admin”

8、点击“Forward”,转发数据包,切换到浏览器,密码更改成

9、点击“确定”,关闭浏览器代理,输入用户名为:“admin”,密码为:“test”,点击“submit”提交用户名和密码,登录成功

实例三、越权之垂直越权二

原理:

垂直越权也叫纵向越权,使用权限低的用户可以访问到权限较高的用户。比如A用户权限比B低,如果A可以访问理论上只有B才能访问的资源,或者执行理论上B才能执行的操作,这就是垂直越权。

1、打开浏览器,访问http://ip/pikachu/vul/overpermission/op2/op2_login.php#

 

2、由于垂直越权需要低权限用户访问高权限用户,所以需要先使用账户登录。点击“点一下提示”,找到给出的用户名密码。

 

3、提示中给了两个用户,一个是高权限的管理员用户,一个是普通用户。先使用高权限管理员admin登录

 

4、管理员admin用户可以查看用户列表、添加用户、删除用户等功能。点击“添加用户”,到添加用户界面,并填写添加用户的相关信息

 

 

5、启动Burp Suite抓包工具,设置参数和浏览器代理

 

6、点击“创建”,抓取数据包,并将其发送至“Repeater”重复发包模块,然后丢弃该数据包

 

7、关闭代理,在登录界面使用低权限用户pikachu登录,该用户只有查看权限,然后再次打开代理

 

 

8、刷新页面,抓取数据包

9、复制低权限pikachu用户Cookie字段的PHPSESSID值到Repeater模块抓取的高权限admin用户添加用户的数据包中

 

10、点击“Send”,发送数据包,然后切换至浏览器关闭代理

11、在低权限用户pikachu登录的状态下,刷新查看用户的页面,发现用户添加成功,使用只有查看用户功能的低权限的Cookie成功执行了高权限才有的添加用户功能,实现了垂直越权(因为我按了多次send)


 这篇文章就先写到这里了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值