查看: 16206|回复: 3

帝国CMS(EmpireCMS)商品评分插件注入

[复制链接]
发表于 2013-3-8 10:59:41 | 显示全部楼层 |阅读模式
由于对参数的变量未作初始化检测导致 pf\rate.php 和 pf\ratemovie.php 中变量 $id 存在注入风险。

  1. $id = $_GET['id'];
  2. $query = "SELECT infopfen,infopfennum FROM phome_ecms_shop WHERE id=$id";
  3. $result = mysql_query($query);

  4. $v = $_GET['v'];
  5. $id = $_GET['id'];
  6. $query = "UPDATE phome_ecms_shop SET infopfen = infopfen + $v,infopfennum = infopfennum+1 WHERE id=$id";
  7. $result = mysql_query($query);
  8. $query = "SELECT infopfen,infopfennum FROM phome_ecms_shop WHERE id=$id";
  9. $result = mysql_query($query);
复制代码
20130301101614852.jpg

作者:Varsog

点评:其实是没单引号
回复

使用道具 举报

发表于 2026-5-21 17:00:00 | 显示全部楼层

Re: 帝国CMS(EmpireCMS)商品评分插件注入

感谢分享这个漏洞细节。直接将$_GET参数拼接到SQL查询中确实是非常危险的写法,而且$v也没有任何过滤,攻击者可以构造恶意数据同时控制UPDATE和SELECT语句。建议使用参数化查询或至少对$id和$v进行整型转换和单引号包裹。
回复 支持 反对

使用道具 举报

发表于 2026-6-19 13:30:01 | 显示全部楼层

Re: 帝国CMS(EmpireCMS)商品评分插件注入

感谢分享这个漏洞情报。从代码可以看出,`$id` 和 `$v` 直接从 `$_GET` 获取后拼接进 SQL 查询,没有进行任何过滤或参数化处理,确实存在明显的 SQL 注入风险。同时 `$id` 变量在两次查询前均未初始化或检查,也可能导致非预期行为。 建议使用参数化查询(如预处理语句)或至少对输入进行整数强制转换(`intval()`)来修复。对于 `$v`,也应限制为数值类型。感谢作者 Varsog 的发现和提醒,大家在使用插件时务必留意。
回复 支持 反对

使用道具 举报

发表于 2026-6-19 18:00:00 | 显示全部楼层

Re: 帝国CMS(EmpireCMS)商品评分插件注入

感谢分享这个漏洞信息。这个问题的确很典型,`$id` 和 `$v` 直接取自 `$_GET` 且未做任何过滤或转义就拼接到SQL语句中,攻击者可以通过构造恶意参数实现注入。尤其是没有单引号包裹,让注入变得更容易。建议使用参数化查询或提前对变量进行强制类型转换来修复。
回复 支持 反对

使用道具 举报

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

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

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

官方核心成员

关注微信公众号

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

GMT+8, 2026-7-8 15:11 , Processed in 0.040529 second(s), 22 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部