实战CVE-2022-23131漏洞 | 身份认证绕过

2022-06-15 11:39:11 浏览数 (1)

前言:

Zabbix 是一个非常流行的开源监控平台,用于收集、集中和跟踪整个基础设施中的 CPU 负载和网络流量等指标。它与 Pandora FMS 和 Nagios 等解决方案非常相似。由于其受欢迎程度、功能和在大多数公司网络中的特权地位,Zabbix 是威胁参与者的高调目标。

Zabbix对客户端提交的Cookie会话存在不安全的存储方式,导致在启动SAML SSO认证模式的前提下,恶意用户可通过构造特殊请求绕过认证,获取管理员权限,进而可实现RCE。

Fofa语句:

代码语言:javascript复制
app="ZABBIX-监控系统" && body="saml"

适用版本:

zabbix 5.4.0 - 5.4.8

zabbix 6.0.0alpha1

正文:

这次没有靶场搭建,因为临时看到一篇文章所以想尝试复现的,这里我直接搜索,用的什么大家懂得都懂,不懂得这个洞也没必要看,这个在国内能搜索到的很少,基本都是国外的,修复的比例也比较大,找了二十几条数据也就一个有这个漏洞。所以也没有提交的必要。

国内的基本都修复了大家就不用尝试了,多去M国那边搞搞就行了

Ok,复现开始

我这里直接实战上手,页面如下

大致就是这个样子,原理我们不讲那么多,大致原理就是

该漏洞存在于index_sso.php文件中,由于index_sso.php文件未调用

CEncryptedCookieSession::checkSign()

方法对cookie进行校验,且客户端的cookie可被伪造。

具体的大家可以网上找,这里偏向小白向的复现

我们到了登录页面,打开burp进行抓包,开启拦截,我们刷新登录页面

对抓到的页面进行以下修改

一个是第一个箭头处那个位置改为index_sso.php

第二个就是cookie处修改,是我们构造的payload加密base64

Payload:

{"saml_data":{"username_attribute":"Admin"},"sessionid":"","sign":""}

加密后:

代码语言:javascript复制
eyJzYW1sX2RhdGEiOnsidXNlcm5hbWVfYXR0cmlidXRlIjoiQWRtaW4ifSwic2Vzc2lvbmlkIjoiIiwic2lnbiI6IiJ9

注,如果抓到的包cookie后面不是

“zbx_session=”这个开头基本就是不能利用

我们修改后发送到重发器中发送

这里有这个回显即为可用,同时返回302状态码

我们直接到proxy中将修改后的包提交上去即可

然后我们就来到了登录页面

到这里就复现成功了。

参考文章:

https://jishuin.proginn.com/p/763bfbd747db

https://blog.csdn.net/weixin_46944519/article/details/123131257

Exp:

https://github.com/jweny/zabbix-saml-bypass-exp

https://github.com/Mr-xn/cve-2022-23131

0 人点赞