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

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

缺陷编号:wooyun-2014-058575

漏洞标题:phpdisk V7 补丁过滤不严继续注入

相关厂商:phpdisk.com

漏洞作者: ′雨。

提交时间:2014-04-28 11:48

修复时间:2014-07-27 11:50

公开时间:2014-07-27 11:50

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

看到phpdisk 又更新了 再次上去看看。上面说的是
/*PHPDisk网盘系统 v7.0 20140422更新说明:
二次修正Cookie登录验证问题
修正获取文件链接权限问题
云上传造成sql注入问题*/
修复了注入问题。
我勒个擦, 下载下来一看。 你这补丁完全打偏了啊。
没修复到实处。。

详细说明:

在ajax.php中
上个漏洞地址: WooYun: phpdisk V7 sql注入2
看修改了哪些地方。

$ins = array(
'yun_fid' => (int)$file[file_id],//补丁后这里转整
'file_name' => $db->escape($file[file_name]),//补丁后 这里转义。
'file_key' => $file_key,
'file_extension' => $db->escape($file[file_extension]),//补丁后 这里转义。
'file_mime' => 'application/octet-stream',
'file_description' => $db->escape($file[file_description]),//补丁后这里转义
'file_size' => (int)$file['file_size'],
'file_time' => $timestamp,
'is_checked' => $is_checked,
'in_share' => $in_share,
'report_status' => $report_status,
'userid' => $pd_uid,
'folder_id' => $folder_id ? $folder_id : -1,
'ip' => $onlineip,
);
$sql = "insert into {$tpf}files set ".$db->sql_array($ins).";";
$db->query_unbuffered(is_utf8() ? $sql : iconv('utf-8','gbk',$sql));


怎么修复的是 insert 这里?

else{
$file = unserialize(base64_decode($data));
$num = @$db->result_first("select count(*) from {$tpf}files where yun_fid='{$file[file_id]}' and userid='$pd_uid'");


这里怎么不修复? 利用这里继续注入。
直接把语句输出来

p3.jpg


漏洞证明:

见上面。

修复方案:

过滤啊。
别又打偏了?

版权声明:转载请注明来源 ′雨。@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2014-04-28 13:20

厂商回复:

已收到,谢谢反馈

最新状态:

暂无


漏洞评价:

评论

  1. 2014-05-08 22:06 | 只发通用型 ( 实习白帽子 | Rank:93 漏洞数:14 | 刷通用型奖金小号)

    @phpdisk.com @′ 雨。 大神 我想知道你是怎么绕过这个过滤的$file[file_id] = (int)$file[file_id];$file[file_size] = (int)$file[file_size];$num = @$db->result_first("select count(*) from {$tpf}files where yun_fid='{$file[file_id]}' and userid='$pd_uid'");难道我的版本有问题 我看到的代码和你的不一样?

  2. 2014-05-08 22:39 | ′ 雨。 ( 普通白帽子 | Rank:1231 漏洞数:188 | Only Code Never Lie To Me.)

    @只发通用型 那应该是不一样的。

  3. 2014-05-08 23:18 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    @′ 雨。 源码包还有了么?

  4. 2014-05-08 23:38 | ′ 雨。 ( 普通白帽子 | Rank:1231 漏洞数:188 | Only Code Never Lie To Me.)

    @疯狗 嗯 我有422的源码,

  5. 2014-05-09 11:00 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    @′ 雨。 就是你提交这个版本的源码包

  6. 2014-05-09 11:59 | ′ 雨。 ( 普通白帽子 | Rank:1231 漏洞数:188 | Only Code Never Lie To Me.)

    @疯狗 恩 应该有的。

  7. 2014-08-04 00:01 | sf0l ( 路人 | Rank:17 漏洞数:2 | 2'xx00)

    @′ 雨 这个注入没回显,怎么搞啊