心情墙插件SQL注入及XSS漏洞分析和修复
创始人
2024-07-13 10:20:56
0

本文主要介绍了,由于心情墙插件变量初始化和过滤不严所导致的SQL注入式攻击及跨站脚本漏洞。虽然心情墙插件所导致的SQL注入攻击在现在来看比较鸡肋,因为SQL注入攻击所要求的GPC为off的情况已经很少出现了,但是由于xss是持久型的,只要管理员打开此应用就会立即出发。

详细说明:

由Discuz!认证的(http://addons.discuz.com/workroom.php)第三方开发团队“潮流少年工作室 Teen Studio”出品的心情墙插件(http://www.discuz.net/forum.php?mod=viewthread&tid=1632898),因变量未初始化及过滤不严导致SQL注入及跨站脚本漏洞。

moodwall.inc.php

SQL注入,除下面代码这一处外,本文件还有很多处这样的或是$_POST得到后直接用的情况。惨不忍睹。

elseif($action == 'edit_mood' && moodid) {

//moodid未初始化,直接代入sql查询

$check = $db->result_first("SELECT * FROM {$tablepre}moodwall WHERE id='$moodid' AND uid='$discuz_uid'");

if(!$check || !$moodid) {

showmessage('moodwall:moodwall_inc_php_2', 'plugin.php?id=moodwall&action=user_mood');

}

$sql = "SELECT * FROM {$tablepre}moodwall WHERE id='$moodid'";

$query = $db->query($sql);

$moodlist_edit = array();

while($mood_edit = $db->fetch_array($query)) {

$moodlist_edit[] = $mood_edit;

}

XSS

$uid=$_POST[uid];

$username=$_POST[username];

$bgpic=$_POST[bgpic];

$mood=$_POST[mood];

$message=$_POST[message];

$dateline=time();

//$_POST得到数据直接入库,前端出库代码也没有做过滤,这里就不贴了。

$db->query("INSERT INTO {$tablepre}moodwall (uid,username, bgpic, mood, message, dateline) VALUES ('$uid', '$username', '$bgpic', '$mood', '$message', '$dateline')");

漏洞证明:

随意找一个安装心情墙插件应用的网站:

/plugin.php?id=moodwall&action=edit_mood&moodid=2'

发表心情处直接插入html代码

">

修复方案:

只能够反复的过滤和初始化,没有什么好的修复方案。

强烈建议Discuz!团队对第三方的应用做严格的审查后再在自己的官方论坛上发布。Discuz!败在插件上也不是一次两次了

【编辑推荐】

  1. 黑客不爱软件漏洞 更喜欢利用错误配置
  2. “90后”黑客攻击南京房管局网站
  3. Black Hat和Defcon黑客大会的五大看点
  4. 路由器漏洞:黑客展示如何攻陷百万台
  5. 揭秘黑客手中DDoS攻击利器——黑色能量2代

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
规避非法攻击 用好路由器远程管... 单位在市区不同位置设立了科技服务点,每一个服务点的员工都通过宽带路由器进行共享上网,和单位网络保持联...
范例解读VB.NET获取环境变... VB.NET编程语言的使用范围非常广泛,可以帮助开发人员处理各种程序中的需求,而且还能对移动设备进行...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...