正在加载中……
阿落分享:Dedecms任意文件上传漏洞与注入漏洞(5.7起)
首页 > 建站教程 > 阿落Dedecms研究院 作者:阿落建站 2016年10月1日 热度:440 字号: 评论:0 条 百度已收录
时间:2016-10-1 15:56   热度:440°  评论:0 条 

今天要补的比较多,也比较重要,就老老实实的按照落哥教你的来吧。



1、任意文件上传漏洞修复包含一个文件:

/include/dialog/select_soft_post.php;


2、嘿嘿,SQL注入漏洞包含五个文件:

/include/filter.inc.php

/member/mtypes.php

/member/pm.php

/plus/guestbook/edit.inc.php

/plus/search.php。




      好,阿落带你们一个一个修复。

修复之前,记得将原来的文件做个备份!

我把重要的代码的重要部位用不同颜色都标注出来了了,如果你找不到,多看看彩色部分。

另外,我的主机是阿里云主机,可以直接远程登录的,我从来也不下载下来修改再往主机上面传,太麻烦,都是直接在主机上用notepad+软件打开修改然后保存的。你们如果是vps的主机,那么自己记得下载这些对应的文件,然后本地用notepad+修改好了,再上传回去就好了。记住:不要用记事本修改哦!切记切记!为什么?因为会出现一些不可预见的bug。比如前、后台登陆验证码不出现,你不闹心嘛?!

ps:搜索不到,看行数,找相近的,然后将我标记蓝色的部分复制到对应位置。


阿落带你先搞定:任意文件上传漏洞

  一、/include/dialog/select_soft_post.php文件,

搜索(大概在72行的样子)

$fullfilename = $cfg_basedir.$activepath.'/'.$filename;


修改为:

 if (preg_match('#\.(php|pl|cgi|asp|aspx|jsp|php5|php4|php3|shtm|shtml)[^a-zA-Z0-9]+$#i', trim($filename))) { ShowMsg("你指定的文件名被系统禁止!",'javascript:;'); exit(); }
$fullfilename = $cfg_basedir.$activepath.'/'.$filename;


嗯,就这么简单,搞定了。


阿落继续带你搞定:(SQL)注入漏洞修复 

  一、 /include/filter.inc.php文件,搜索(大概在46行的样子)
      

return $svar;

      修改为
      return addslashes($svar);



二、/member/mtypes.php文件,搜索(大概在71行的样子)
     

$query = "UPDATE `dede_mtypes` SET mtypename='$name' WHERE mtypeid='$id' AND mid='$cfg_ml->M_ID'";

      修改为
      $id = intval($id); $query = "UPDATE `dede_mtypes` SET mtypename='$name' WHERE mtypeid='$id' AND mid='$cfg_ml->M_ID'";





 三、 /member/pm.php文件,搜索(大概在65行的样子)
     

 $row = $dsql->GetOne("SELECT * FROM `dede_member_pms` WHERE id='$id' AND (fromid='{$cfg_ml->M_ID}' OR toid='{$cfg_ml->M_ID}')");

      修改为
      $id = intval($id); $row = $dsql->GetOne("SELECT * FROM `dede_member_pms` WHERE id='$id' AND (fromid='{$cfg_ml->M_ID}' OR toid='{$cfg_ml->M_ID}')");



  四、 /plus/guestbook/edit.inc.php文件,搜索(大概在55行的样子)

     

 $dsql->ExecuteNoneQuery("UPDATE `dede_guestbook` SET `msg`='$msg', `posttime`='".time()."' WHERE id='$id' ");

      修改为

      $msg = addslashes($msg); $dsql->ExecuteNoneQuery("UPDATE `dede_guestbook` SET `msg`='$msg', `posttime`='".time()."' WHERE id='$id' ");


五、 /plus/search.php文件,搜索(大概在109行的样子)

     

 $keyword = addslashes(cn_substr($keyword,30));

      修改为
      $typeid = intval($typeid); $keyword = addslashes(cn_substr($keyword,30));



好了,如果你搞定这几个文件,这些dedecms漏洞也就补上了。阿落得好好伸个懒腰,这点小玩意,补起来很容易,可以,给你们写这个教程,可以真的麻烦。我现在眼睛都晕了。
拜拜,今天到此为止,我去玩了。

 您阅读这篇文章共花了: 
正文到此结束
加入阿落:如果想加入阿落内部资源群,请“点击这里”进入!

热门推荐

二维码加载中...
版权声明:若无特殊注明,本文皆为《 阿落建站 》原创,转载请保留文章出处。
本文链接:阿落分享:Dedecms任意文件上传漏洞与注入漏洞(5.7起) http://blog.88w.me/dedecmsyjy/90.html

阿落|ALO 建站咨询TEL:18888849001

avatar

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻 大笑 可怜 吃惊 害羞 调皮 鄙视 示爱 大哭 开心 偷笑 嘘 奸笑 委屈 抱抱 愤怒 思考 日了狗


既然没有吐槽,那就赶紧抢沙发吧!
返回顶部    首页    手气不错    捐赠支持    我要订阅    云客资源网   夜色岛    关于我    手机版本   后花园   
版权所有:阿落博客    站长:        程序:emlog   黑ICP备14004031号-3     
sitemap