凯力会员中心看代码,越权审计代码的作用是什么?

来源:爱酷猪责编:网络时间:2024-02-28 18:11:44

1.您看到的就是会员中心

看代码,它首先会检查是否存在值,如果不存在,就会重定向到登录页面。

// cms全局判断中的字段值是用来识别用户的,但并不能识别谁是谁,所以应该存在很多未授权访问的情况。

继续看下面的代码

现在

2. 越权行为

审计代码得知数据库执行查询语句后会包含另一个文件

整个过程直接通过其中存储的数据进行验证。 这是一个安全风险,并且可以通过伪造来获取数据。

而Zx.php文件会直接输出相关数据库字段值。

用打嗝测试

可以越权查看其他用户的数据

// 黑盒测试中,除了get post请求中携带的参数外,还有用户标识,如user等,可以尝试修改这些值,看看是否存在越权访问(可以自己注册两个账号,互相测试)

//你也可以看看其他文件

3.N越权

我们这里看到的是升级后的会员

.php文件的作用是返回页面上的会员类型,升级会员的动作需要返回.php文件。

简单描述一下这个过程,首先在数据库中查询用户信息(包括用户名、用户积分、会员有效期等)(通过post中的参数zh传递用户名)

然后根据查询到的用户积分判断用户是否可以升级会员(包月、包季、包年)。 如果用户可以升级,则继续执行代码。 如果没有,则执行该语句。

确认用户可以升级会员后,开始刷新会员有效期

最后更新数据库中的数据

通过POST传递zh参数值查询用户数据

如果会员积分小于POST传递的tcjf参数(即升级会员所需的积分),则积分不足将被退回。

// 如果if条件为真,我可以修改tcjf的值吗?

我们用burp来测试一下

当前用户没有积分

正常请求,显示积分不足

修改参数tcjf值为0,表示升级成功。

//可以看到当前用户已经是超级会员了,时限是一个月。

如果tcjf参数值修改为负数会发生什么情况?

反过来给我100分。 这是为什么?

// 负数变为正数

// 此时,您可以通过修改参数值来达到免费会员的目的。

继续看下面的代码

只有前面的if语句成立后才会继续执行,否则执行完该语句后就会停止执行。

修改tcts值

有效期增加100天

// 如果前面的方法无法免费使用yy积分什么时候更新,可以尝试正常支付积分,但修改限制天数,达到免费卖淫的目的。

根据上一篇文章,该系统中有一个用户,其积分为1000

如果我将 zh 参数值更改为其他用户会发生什么情况?

您可以使用他人的积分超越您的权限帮助他人升级会员资格。

如果数据库数据更新的话,是根据里面的用户来更新的,那么就有可能超越自己的权限使用别人的积分升级会员,继承别人的积分和有效期。

进行测试

猜你喜欢
最新游戏更多
热门专题更多
最新资讯更多