扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
帝国EmpireCMS7.5最新后台漏洞审计
创新互联作为成都网站建设公司,专注重庆网站建设、网站设计,有关成都企业网站定制方案、改版、费用等问题,行业涉及广告设计等多个领域,已为上千家企业服务,得到了客户的尊重与认可。
1概述
最近在做审计和WAF规则的编写,在CNVD和CNNVD等漏洞平台寻找各类CMS漏洞研究编写规则时顺便抽空对国内一些小的CMS进行了审计,另外也由于代码审计接触时间不是太常,最近一段时间也跟着公司审计项目再次重新的学习代码审计知识,对于入行已久的各位审计大佬来说,自己算是新手了。对于审计也正在不断的学习和积累中。于是抽空在CNVD上选取了一个国内小型CMS进行审计,此次审计的CMS为EmpireCMS_V7.5版本。从官方下载EmpireCMS_V7.5后进行审计,审计过程中主要发现有三处漏洞(应该还有其他漏洞暂未审计):配置文件写入、后台代码执行及后台getshell,造成这几处漏洞的原因几乎是由于对输入输出参数未作过滤和验证所导致。
2前言
帝国网站管理英文译为”EmpireCMS”,它是基于B/S结构,安全、稳定、强大、灵活的网站管理系统.帝国CMS 7.5采用了系统模型功能:用户通过此功能可直接在后台扩展与实现各种系统,如产品、房产、供求…等等系统,因此特性,帝国CMS系统又被誉为“万能建站工具”;大容量数据结构设计;高安全严谨设计;采用了模板分离功能:把内容与界面完全分离,灵活的标签+用户自定义标签,使之能实现各式各样的网站页面与风格;栏目无限级分类;前台全部静态:可承受强大的访问量;强大的信息采集功能;超强广告管理功能……
3代码审计部分
拿到该CMS后先把握大局按照往常一样先熟悉该CMS网站基本结构、入口文件、配置文件及过滤,常见的审计方法一般是:通读全文发(针对一些小型CMS)、敏感函数回溯法以及定向功能分析法,自己平常做审计过程中这几个方法用的也比较多。在把握其大局熟悉结构后,再通过本地安装去了解该CMS的一些逻辑业务功能并结合黑盒进行审计,有时候黑盒测试会做到事半功倍。
常见的漏洞个人总结有:
1)程序初始化安装
2)站点信息泄漏
3)文件上传
4)文件管理
5)登陆认证
6)数据库备份
7)找回密码
8)验证码
若各位大佬在审计过程中还有发现其他漏洞可补充交流。
第一步:安装时要修改数据表前戳
因为帝国cms也是国内知名的开源程序,很多人都对帝国CMS很熟悉,所以对安全也就成了威胁,特别是数据库,帝国CMS默认的数据表都是相同的,所以我们为了数据库的安全,我们要修改帝国安装时的数据库前缀表。(更改需要修改配置,大家自己百度下相关的修改方法)
数据库表
第二步:修改后台文件夹名称
一般帝国CMS都是 域名/e/admin 我们要将 admin修改为更复杂的文件名,不容易被别人轻易猜中后台,否则就会增加被攻击的机率。
帝国后台目录
第三步:禁用admin账户
一般我们使用帝国cms只是修改一下密码而已,其实这并不安全,最好自己新建立一个账号,禁用admin账号。才会让我们更加的安全一些。
禁用账户
第四步:设置登录认证码和登录问题
我们退一步来讲解,就算黑客暴力破解出了你的账号密码。你的后台开启了认证码和登录问题,黑客也是登陆不上你后台的,这对你的网站后台安全起到了非常重要的作用。
登录验证码
第五步:启用网站安全防火墙。
帝国CMS网站安全防火墙是针对整站防护的,开启后会让网站数据得到更加高的保障。
防火墙
配置“网站防火墙”有下面两种方法:
1、后台“系统设置”“网站防火墙”。
2、修改e/class/config.php文件配置。
下面讲解一下相关设置的作用和使用:
1、防火墙加密密钥:
此项必须设置,填写10~50个任意字符,最好多种字符组合。
并且建议每星期或每个月变更一次。
2、允许后台登陆的域名:
设置只允许访问后台的域名,域名绑定到网站根目录,只有通过这个域名访问e/admin后台才是被允许的。域名一般用网站的二级域名即可,如果为了更保险也可绑定一个全新域名的二级域名。比如:网站域名:,而访问后台域名则用
并且绑定的域名还支持增加端口,比如:,前提是服务器支持使用这个端口访问网站。绑定域名()后的访问后台地址是:,而通过其他域名访问后台都是空白。
3、允许登陆后台的时间点、允许登陆后台的星期:
方便工作时间工作的单位设置,使网站安全维护更容易把控,不让用户在工作时间外进入后台。如果紧急事件例外可以手动修改e/class/config.php文件配置。
4、防火墙后台预登陆验证变量名和防火墙后台预登陆认证码
这两项必须设置。预登陆验证变量名:可由英文字母+数字组成(必须是字母开头),5~20个字符组成。
预登陆认证码:填写10~50个任意字符,最好多种字符组合。并且建议每星期或每个月变更一次。
5、屏蔽提交敏感字符:
此功能是安全防火墙的核心,可对前台用户所有录入的信息进行安全过滤。通常设置php、mysql等攻击的相关字符。比如:sql注入通常会用到的字符:select,outfile,union,delete,insert,update,replace,sleep,benchmark,load_file,create。
帝国防火墙
第六步:网站服务器安装防御软件
我们之前也讲解过,可以安装云锁、网站安全狗这类的软件,第一可以防止暴力破解,第二可以防止恶意篡改页面,第三可以防止dos、cc等流量攻击。
云锁防护
帝国CMS删除不需要的功能
如果我们的网站不需要帝国CMS的某项功能我们可以进行删除,不单单可以提高运行速度,减少占用空间,还可以避免黑客利用这些文件进行上传木马,具体怎么做那,如下:
首先:后台-系统-系统参数设置-关闭相应的模块 “先关闭对应的模块”
1、不使用下载系统模型
(1)、删除e/DownSys目录;
(2)、修改e/class/DownSysFun.php文件,文件第二行加exit();
修改后保存文件即可。
2、不使用商城系统模型
(1)、删除e/ShopSys目录;
(2)、修改e/class/ShopSysFun.php文件,文件第二行加 exit();
修改后保存文件即可。
3、不使用评论功能
(1)、删除e/pl目录;
(2)、修改e/enews/plfun.php文件,文件第二行加 exit();
修改后保存文件即可。
4、不使用留言板功能
(1)、删除e/tool/gbook目录;
(2)、修改e/enews/gbookfun.php文件,文件第二行加 exit();
修改后保存文件即可。
5、不使用投票功能
(1)、删除e/tool/vote和e/public/vote目录;
(2)、修改e/enews/votefun.php文件,文件第二行加 exit();
修改后保存文件即可。
6、不使用会员取回密码和激活帐号功能
(1)、删除e/member/GetPassword目录;
(2)、修改e/class/qmemberfun.php文件,文件第二行加 exit();
修改后保存文件即可。
7、除了admin、class、data、enews、message目录外,不使用的功能可以直接删除。
不使用前台动态信息页面:直接删除e/action目录
不使用前台投稿功能:直接删除e/DoInfo目录
不使用前台打印功能:直接删除e/DoPrint目录
不使用在线支付接口功能:直接删除e/payapi目录
不使用全站全文搜索功能:直接删除e/sch目录
不使用搜索功能:直接删除e/search目录
不使用会员空间功能:直接删除e/space目录
不使用tags列表功能:直接删除e/tags目录
不使用wap功能:直接删除e/wap目录
不使用RSS功能:直接删除e/web目录
帝国CMS安全防护就讲解到这里,对于帝国CMS来说,已经非常安全,我们删除下方插件代码的意思为:代码越少,越精简,漏洞也就越少,我们不需要的功能可以直接删除掉,一面给我们带来不必要的安全隐患。
整体来说织梦cms对于大多数来说,会比帝国cms好用一些,更容易用来建站。
织梦cms比帝国cms免费模板更多。dedecms的免费模板还是比较多的,这个得益于广大的dede用户共享。
织梦cms更受欢迎。论坛的人气,帝国CMS和dedecms的人气还都可以,热心程度感觉帝国CMS比dedecms高些。
织梦cms版本的更新更快,帝国以大版本形式更新,dedecms以小版本形式更新,总体来说dede版本快于帝国。
安全性方面帝国cms更佳:dedecms关注的人比较多,市场占有率相当的高,因而成为黑客的挂马对象,入侵率比较高,容易被黑,而帝国CMS而言安全方面则比较好。
综上所述,更多人倾向于织梦cms,而且网站模板素材也有很多的源码程序可以下载。可能也有技术博客没有说到的,不过对于个人来讲,适合的才是最好的,如果你喜欢追求完美,那么只能自己去写一个了。没有最好的cms,只有最合适自己的CMS。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流