请注意!Zabbix高危SQL注入漏洞分析

0x01 漏洞概述

zabbix是一个开源的企业级性能监控解决方案。近日,zabbix的jsrpc的profileIdx2参数存在insert方式的SQL注入漏洞,攻击者无需授权登陆即可登陆zabbix管理系统,也可通过script等功能轻易直接获取zabbix服务器的操作系统权限。 但是无需登录注入这里有个前提,就是zabbix开启了guest权限。而在zabbix中,guest的默认密码为空。需要有这个条件的支持才可以进行无权限注入。

详情:《漏洞预警:Zabbix高危SQL注入漏洞,可获取系统权限》

0x02 影响程度

  • 攻击成本:低
  • 危害程度:高
  • 是否登陆:不需要
  • 影响版本:2.2.x,3.0.0-3.0.3

0x03 漏洞测试

在zabbix的地址后面添加:

  • 利用方式一

如果出现下列代码则证明漏洞存在

  • 利用方式二

如果出现下列代码则证明漏洞存在

0x04 实战测试

测试的一个Japan站

可获得最高权限

0x05 代码分析

zabbix 2.2.14

  • 首先从poc中的jsrpc.php文件入手,找到profileIdx2参数

在看这段代码的时候各种跑偏,一度追着

这几句代码死磕,看到zabbix-2.2.14/frontends/php/include/classes/screens/CScreenBuilder.php,在public static function getScreen(array $options = array())函数中没有找到可以造成漏洞的交互点,太菜了!!!

然后去请教表哥,表哥提示问题出现在flush中 根据表哥的提示,在page_footer.php中发现CProfile类的flush方法

在profiles.inc.php中找到了flush函数

参数传入下面的insertDB函数,从而导致了注入的产生

0x06 漏洞修复

  • 版本升级
  • 打补丁
  • 关闭guest

0x07 后记

这里还有好多东西没有搞懂,毕竟太菜了

注:部分漏洞信息收集自网络

作者:secange

来源:http://www.secange.com/2017/10/zabbix%E9%AB%98%E5%8D%B1sql%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E%E5%88%86%E6%9E%90/


原文发布于微信公众号 - 马哥Linux运维(magedu-Linux)

原文发表时间:2017-10-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏高性能服务器开发

关于即时通信服务器架构的一些思考

对于一个即时通信服务器来说,在用户量少的时候,一台服务器就足以提供所有的服务。而这种架构也最简单,举个例子,用户A与用户B互为好友,A向B发消息,服务器接收到消...

30250
来自专栏同步博客

PHP将数据导出Excel表中(投机型)

  因为ms word和excel的文档都支持html文本格式,因此我们可以基于这个原理采用html文本格式进行数据的输出。

13330
来自专栏

即时通信服务器架构的一些思考

对于一个即时通信服务器来说,在用户量少的时候,一台服务器就足以提供所有的服务。而这种架构也最简单,举个例子,用户A与用户B互为好友,A向B发消息,服务器接收到消...

24550
来自专栏优启梦

使用Referer Meta标签控制referer 来源

本文描述了一个关于 http 协议中 referer 的 metadata 参数的提议,使用这个 metadata 参数,html 文档可以控制 http 请求...

30250
来自专栏Python爬虫与算法进阶

学习Git(一)起步

什么是Git 在Git官网上找到这样一段描述 Git is a free and open source distributed version control...

34660
来自专栏CSDN技术头条

Apollo 配置中心详解

Apollo 配置中心产生背景 大多情况下程序随着功能的复杂,程序的配置也会增多:包括各种功能的开关、参数的配置、服务器的地址配置等等,同时开发人员对程序配置的...

2.3K70
来自专栏编程微刊

[慕课笔记] node+mongodb建站攻略

25950
来自专栏GreenLeaves

Oracle PL/SQL编程之过程

1、简介 过程用于执行特定的操作,当建立过程时,既可以指定输入参数(in),也可以指定输出参数(out),通过在过程中使用输入参数,可以将数据传递到执行部分,通...

20760
来自专栏虚拟化云计算

一图看清nova中创建虚拟机的流程

用户的入口是nova_client或者是horizon,他们是RestAPI的http客户端。

32650
来自专栏互联网研发闲思录

实时监控系统设计

  随着系统业务复杂度的提升,系统复杂度提升,需要对整个系统的功能、性能、可用性,以及服务、 web、webservice、网页等等多个角度进行监控。     ...

85750

扫码关注云+社区

领取腾讯云代金券