天天看点

Zabbix server被入侵了...

公司金山区云服务器对应的zabbix是2.2版本的,当时是直接使用yum install安装的。今天上班登陆zabbix的时候发现zabbix界面变成了中文版(我一直都是英文版界面),然后在主页的last 20 issues里右键点击具体的云服务器时会多了两个scripts,一个叫111,一个叫222。

在Administration---scripts里打开,就看到了这两个东西的真实面目:

<a href="https://s2.51cto.com/wyfs02/M00/8F/21/wKiom1jUfqCwS8G_AACC9McnTfI926.png" target="_blank"></a>

111是下载文件,222就是执行文件。117.21这个服务器是江西吉安的。这个手段就是利用中招人的好奇心,通过点击scripts然后往那些云服务器里注入不可描述的东西...

于是乎,我登陆zabbix-server服务器,检查进程发现没有异常,但是来到/tmp看到这样的情景:

<a href="https://s2.51cto.com/wyfs02/M00/8F/1F/wKioL1jUfwWzmInhAACPLHHrC6U469.png" target="_blank"></a>

嗯,昨晚动手的...好吧,这几个绿色文件都是二进制文件,就直接删除掉,然后更改一下zabbix-server的密码。

返回到zabbix里,由于添加scripts是需要登陆界面才能操作的,由此可知我们的zabbix在web的密码也已经泄露了,web端的密码也需要更改一下(其实这步没啥用,但是勤换密码是好习惯)。

更改zabbix用户密码的地方的具体方法如下:

<a href="https://s3.51cto.com/wyfs02/M01/8F/1F/wKioL1jUgOyxj-UxAACr-u1rC28682.png" target="_blank"></a>

那么更改完了,我们就要反思,这是一个什么漏洞呢?

后来在https://support.zabbix.com/browse/ZBX-11023 发现是sql查询“last data”的导火索,然后利用sql的漏洞进入到了 zabbix。

在这里各位看官不妨测试一下自己的zabbix也是否安全,首先在您的 zabbix 地址后面加上

1

<code>/jsrpc</code><code>.php?sid=0bcd4ade648214dc&amp;</code><code>type</code><code>=9&amp;method=</code><code>screen</code><code>.get&amp;timestamp=1471403798083&amp;mode=2&amp;screenid=&amp;groupid=&amp;hostid=0&amp;pageFile=</code><code>history</code><code>.php&amp;profileIdx=web.item.graph&amp;profileIdx2=2'3297&amp;updateProfile=</code><code>true</code><code>&amp;screenitemid=&amp;period=3600&amp;stime=20160817050632&amp;resourcetype=17&amp;itemids%5B23297%5D=23297&amp;action=showlatest&amp;filter=&amp;filter_task=&amp;mark_color=1</code>

这样一句话,看看效果,如果出现这样的情景,那么恭喜你,你中招了。

<a href="https://s2.51cto.com/wyfs02/M00/8F/22/wKiom1jUg63gzLY2AADgPHkIceY350.png" target="_blank"></a>

黑客可以直接通过获取admin的sessionid来根据结构算法构造sid,替换cookie直接以管理员身份登陆(怪不得还能更改我的英文界面)。

如果是这样的话,那么就证明您的zabbix目前是坚固的...

<a href="https://s4.51cto.com/wyfs02/M01/8F/59/wKioL1jblQOySxbFAAI5hkTrFEA435.png" target="_blank"></a>

这个漏洞恳请大家务必重视,并尽快通过升级zabbix 3.0.4修补此漏洞!

这里面有一点要注意,在执行#yum --disablerepo=epel --enablerepo=zabbix3.0 upgrade zabbix-server-mysql zabbix-agent zabbix-get zabbix-sender

出现下面的信息的时候:

2

3

4

<code>Package(s) zabbix-server-mysql available, but not installed.</code>

<code>Package(s) zabbix-agent available, but not installed.</code>

<code>Package(s) zabbix-get available, but not installed.</code>

<code>Package(s) zabbix-sender available, but not installed.</code>

把upgrade 换成 install。

如果提示你需要升级到glibc2.14 和2.17,注意!在这一步,千万不可以先删除libc.so.6 库文件,否则后果自负!!!

那么先#strings /lib64/libc.so.6 |grep GLIBC 通过这个查看当前环境里glibc的版本:

<a href="https://s3.51cto.com/wyfs02/M02/8F/26/wKiom1jUzZ6BX-nKAAA8qqek78A927.png" target="_blank"></a>

升级命令如下:

5

6

7

8

9

10

11

<code>wget http:</code><code>//mirror</code><code>.bjtu.edu.cn</code><code>/gnu/libc/glibc-2</code><code>.14.</code><code>tar</code><code>.xz</code>

<code>tar</code> <code>xvf glibc-2.14.</code><code>tar</code><code>.xz</code>

<code>cd</code> <code>glibc-2.14</code>

<code>mkdir</code> <code>build</code>

<code>cd</code> <code>build</code>

<code>..</code><code>/configure</code> <code>--prefix=</code><code>/usr/local/glibc-2</code><code>.14   </code><code>//</code> <code>配置glibc并设置当前glibc-2.14安装目录</code>

<code>make</code> <code>-j4</code>

<code>make</code> <code>install</code>

<code>cp</code> <code>/usr/local/glibc-2</code><code>.14</code><code>/lib/libc-2</code><code>.14.so </code><code>/lib64/libc-2</code><code>.14.so </code>

<code>mv</code> <code>/lib64/libc</code><code>.so.6 </code><code>/lib64/libc</code><code>.so.6.bak</code>

<code>LD_PRELOAD=</code><code>/lib64/libc-2</code><code>.14.so </code><code>ln</code> <code>-s </code><code>/lib64/libc-2</code><code>.14.so </code><code>/lib64/libc</code><code>.so.6</code>

如果最后一行命令执行出错,可通过 

<code>LD_PRELOAD=</code><code>/lib64/libc-2</code><code>.12.so </code><code>ln</code> <code>-s </code><code>/lib64/libc-2</code><code>.12.so </code><code>/lib64/libc</code><code>.so.6</code>

再改回去。

最后,执行#strings /lib64/libc.so.6 |grep GLIBC,查看glibc是否更新:

<a href="https://s1.51cto.com/wyfs02/M00/8F/24/wKioL1jUzezxrSmPAABo1Zv5VSE365.png" target="_blank"></a>

补充,安装zabbix-agent 3.0的方法

1)下载zabbix3.0-rpm到本地;

2)#cd zabbix3.0-rpm/RPMS,然后#yum localinstall zabbix-agent-3.0.0-1.el6.x86_64.rpm -y;

3)修改zabbix-agent.conf;

4)#service zabbix-agent start

 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1909923

继续阅读