推56论坛

 找回密码
 立即注册(限中文)

QQ登录

只需一步,快速开始

查看: 1165|回复: 0

[WordPress教程] wordpress漏洞修复方案之第三方插件漏洞

[复制链接]
发表于 2019-9-19 15:08:25 | 显示全部楼层 |阅读模式
wordpress系统本身代码,很少出现sql注入漏洞,反倒是第三方的插件出现太多太多的漏洞,我们SINE安全发现,仅仅2019年9月份就出现8个插件漏洞,因为第三方开发的插件,技术都参差不齐,对安全方面也不是太懂导致写代码过程中没有对sql注入,以及xss跨站进行前端安全过滤,才导致发生sql注入漏洞。
目前发现的wordpress漏洞插件,AdRotate广告插件,NextGEN Gallery图片管理插件,Give赞赏插件,这些插件使用的网站数量较多,因为开源,免费,功能强大,使用简单,深受众多站长们的喜欢,关于该网站漏洞的详情我们SINE安全来详细的给大家分析一下:看下图的代码
在前端进行输入的时候,可以插入恶意的sql注入代码,如果后端没有对前端输入进来的参数值进行安全过滤拦截,那么就会导致sql注入漏洞的发生,我们来看上面的一段代码。该代码在写的时候,会将get中的ID,传入后数据库中进行查询,没有做任何的安全过滤导致sql注入,在wordpress最新版中以及将get、post、cookies、提交的方式进行了安全拦截,对一些非法的字符与sql注入攻击语句加强过滤,但是还是被绕过,导致sql注入的发生,就拿adrotate插件来说,在dashboard目录下的publisher文件夹下的adverts-edit.php代码中第46行:
对前端来的get_ad变量只是做了简单的html字符转换操作,并没有实质性的对sql语句进行拦截,导致可以执行SQL注入代码,获取管理员账户密码。截图如下:
give插件,也存在漏洞,漏洞产生的原因是includes目录下的donors文件夹里的class-give-donors-query.php代码,在获取订单的函数中,没有对其order by字符进行拦截,导致sql代码可以到后端进行查询数据库,导致sql盲注。代码如下:
关于wordpress漏洞修复办法,建议插件的开发公司在对代码编写过程中,对用户的输入,以及提交,get,post等请求进行全面的安全过滤与安全效验,及时的更新wordpress的版本以及插件版本升级,定期对网站代码进行安全检测,检查是否存在网站木马后门,以及webshell文件,对插件目录可以设置安全权限部署,防止恶意篡改,对wordpress的后台登录做安全验证,仅仅使用账户密码还不行,还要使用另外一种方式进行验证,短信验证以及google身份验证器。

本版积分规则

站长QQ
在线咨询
咨询热线
QQ:405327411

QQ|免责声明|站长论坛 ( 豫ICP备11018337号-5 )

GMT+8, 2020-8-11 20:41

Powered by Discuz! X3.4 Licensed

©2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表