当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-063189

漏洞标题:phpdisk最新20140529版注入 无视防御

相关厂商:phpdisk.com

漏洞作者: 索马里的海贼

提交时间:2014-06-03 11:34

修复时间:2014-09-01 11:36

公开时间:2014-09-01 11:36

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-06-03: 细节已通知厂商并且等待厂商处理中
2014-06-03: 厂商已经确认,细节仅向厂商公开
2014-06-06: 细节向第三方安全合作伙伴开放
2014-07-28: 细节向核心白帽子及相关领域专家公开
2014-08-07: 细节向普通白帽子公开
2014-08-17: 细节向实习白帽子公开
2014-09-01: 细节向公众公开

简要描述:

我发的好像都是无视防御的。。这个也是,输入点的问题 绕过全局过滤

详细说明:

ajax.php行75

case 'uploadCloud':
$folder_id = (int)gpc('folder_id','P',0);
$folder_id = $folder_id ? $folder_id : -1;
$data = trim(gpc('data','P',''));
…………省略部分代码…………
if($data){
$file_key = random(8);
if(strpos($data,',')!==false){
$add_sql = $msg = '';
$arr = explode(',',$data);
for($i=0;$i<count($arr)-1;$i++){
$file = unserialize(base64_decode($arr[$i])); //base64_decode 无视防御
$file[file_id] = (int)$file[file_id]; //file_id 检查了
$file[file_size] = (int)$file[file_size]; //file_size检查了
$file[file_extension] = $db->escape(trim($file[file_extension])); //file_extension检查了
$file[file_name] = $db->escape(trim($file[file_name])); //file_name检查了
…………省略部分代码…………
//这里的$file[file_description]没过滤!
$add_sql .= "({$file[file_id]},'{$file[file_name]}','$file_key','{$file[file_extension]}','application/octet-stream','{$file[file_description]}','{$file[file_size]}','$timestamp','$is_checked','$in_share','$report_status','$pd_uid','$folder_id','$onlineip'),";
…………省略部分代码…………
//进查询了
$db->query_unbuffered("insert into {$tpf}files(yun_fid,file_name,file_key,file_extension,file_mime,file_description,file_size,file_time,is_checked,in_share,report_status,userid,folder_id,ip) values $add_sql ;");

漏洞证明:

1、先注册一个账号 然后去“我的网盘”新建一个文件夹 记住这个folder_id

123.jpg


2、生成payload

23.jpg


3、提交请求folder_id=刚才记住的id&data=刚才生成的payload

34.jpg


4、查看网盘中的文件就能看到注入结果了

45.jpg


修复方案:

别漏了

版权声明:转载请注明来源 索马里的海贼@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2014-06-03 11:44

厂商回复:

感谢反馈

最新状态:

暂无