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

复现cacti的RCE(CVE-2022-46169)

一、环境配置

1.1安装Docker

Linux

使用便捷脚本安装Docker:

curl -fsSL https://get.docker.com | sh

验证安装

验证Docker是否正确安装:

docker version

还要验证Docker Compose是否可用:

docker compose version

1.2拉取镜像

在 GitHub 上复制链接地址 vulhub。

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

若没有设置代理则去掉proproxychains 拉取成功后,就能可以在本地看到 vulhub 文件夹: 

1.3启动容器 

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

 docker-compose up -d

 然后浏览器访问http://your-ip:8080会跳转到登录页面。使用admin/admin作为账号密码登录,并根据页面中的提示进行初始化。

 根据页面中的提示进行初始化。实际上初始化的过程就是不断点击“下一步”,直到安装成功:

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

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

1.4 配置断点调试

首先物理机的 VScode 要安装好以下插件: Remote-ssh、Docker、dev containers。 在使用 Vcode 远程连接虚拟机,连接容器的时候需要用到。

以上插件安装好之后的具体步骤如下:

创建容器:

docker run -it --name cacti_vuln -p 80:80 -p 443:443 php:7.4-apache bash

安装Xdebug

pecl install xdebug-3.1.6
docker-php-ext-enable xdebug

编辑 /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini:

vi /usr/local/etc/php/conf.d/docker-php-ext-xdebug.inizend_extension=xdebug
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_port=9003
xdebug.client_host=host.docker.internal
xdebug.log=/tmp/xdebug.log

安装Cacti

apt update && apt install -y wget unzip
wget https://www.cacti.net/downloads/cacti-1.2.22.zip
unzip cacti-1.2.22.zip -d /var/www/html/
chown -R www-data:www-data /var/www/html/cacti-1.2.22

重启容器 

exit
docker restart cacti_vuln

 使用 VScode 连接容器后,为容器安装 Xdebug 插件

 未出现容器

http://www.dtcms.com/a/304190.html

相关文章:

  • EM储能网关ZWS智慧储能云应用(17) — 动环监控
  • 鲸鱼小说分销系统v1.0.0公测版更新发布-完成了小说整体基础以及完整分销和数据看板
  • 应广MTP单片机在线烧录技巧
  • 嵌入式学习日志————TIM定时中断之定时器定时中断
  • git使用lfs解决大文件上传限制
  • 【PHP】Swoole:CentOS安装Composer+Hyperf
  • 【C++算法】76.优先级队列_前 K 个高频单词
  • 引领新一代 Web3 金融类应用开发,全景式探析 Injective 生态
  • 乳腺癌病理知识
  • 网络安全的变革:深入洞察 Web3 与传统网络模型
  • 黑客哲学之学习笔记系列(一)
  • 随机森林算法原理及优缺点
  • 华为光学设计面试题
  • 频谱周期性复制
  • 数据库管理-第352期 从需求看懂Oracle RAC多租户环境的Service(20250729)
  • C++ 1.面向对象编程(OOP)框架
  • SBB指令的“生活小剧场“
  • Excel工作簿合并工具,快速查找一键整合
  • 「源力觉醒 创作者计划」_DeepseekVS文心一言
  • JavaWeb 入门:CSS 基础与实战详解(Java 开发者视角)
  • 查询mac 安装所有python 版本
  • 服务器之光:Nginx--反向代理模块详解及演练
  • PHP性能优化与高并发处理:从基础到高级实践
  • Rust 实战三 | HTTP 服务开发及 Web 框架推荐
  • AI 数字人在处理音频时,如何确保声音的自然度?
  • 使用 Canvas 替代 <video> 标签加载并渲染视频
  • Vue 2.0响应式原理深度解析
  • 艾体宝方案 | 数据孤岛终结者:GWI + DOMO 联手打造一体化增长引擎
  • 系统调用追踪技术于VPS服务器性能分析的实施流程
  • linux系统的启动过程