开发者社区> 网站安全者> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PublicCMS 网站漏洞 任意文件写入并可提权服务器权限

简介: PublicCMS是目前网站系统中第一个采用JAVA架构 TOMCAT+Apcche+Mysql数据库架构的CMS网站,开源,数据承载量大,可以承载到上千万的数据量,以及用户的网站并发可达到上千万的PV,PublicCMS静态全站html,访问速度极快,模板样式多,可自己设计,第三方的API接口也很多,深受网站运营者的喜欢。
+关注继续查看
福利推荐:阿里云、腾讯云、华为云等大品牌云产品全线2折优惠活动来袭,4核8G云服务器899元/3年,新老用户共享优惠,点击这里立即抢购>>>

PublicCMS是目前网站系统中第一个采用JAVA架构 TOMCAT+Apcche+Mysql数据库架构的CMS网站,开源,数据承载量大,可以承载到上千万的数据量,以及用户的网站并发可达到上千万的PV,PublicCMS静态全站html,访问速度极快,模板样式多,可自己设计,第三方的API接口也很多,深受网站运营者的喜欢。最重要的是开源,免费升级,支持动静分离,数据库及时备份等功能。

?

?

SINE安全于最近对该PublicCMS的系统进行全面代码安全检测,发现该PublicCMS系统存在网站漏洞,该漏洞可以对网站的任意目录下上传任意格式的文件,比如jar格式,JSP格式,war格式的脚本木马。下面针对于PublicCMS,我们进行详细的分析以及漏洞的如何利用。我们首先来搭建该系统的网站环境,使用Apache +Tomcat+Mysql数据库的一键安装环境包进行搭建,可以使用phpstudy来搭建,快捷,方便,稳定,可以随时切换服务器的环境版本,以及架构搭建好后,我们先登录下网站的后台,如下图:

?

?

我们首先来搭建该系统的网站环境,使用Apache +Tomcat+Mysql数据库的一键安装环境包进行搭建,可以使用phpstudy来搭建,快捷,方便,稳定,可以随时切换服务器的环境版本,以及架构。搭建好后,我们先登录下网站的后台,如下图:

?

?

那么怎样才能上传到任意文件夹下呢? 比如我要上传到网站的根目录下该怎么弄呢?因为PublicCMS存在可以构造zip文件,并指定解压到任意目录。我们来构造一下ZIP,创建一个文件,名称为:../../../../../../../../apache-tomcat-7.0.81/webapps/publiccms/safe.jsp,然后通过后台上传上去即可。上传后我们访问网站根目录下safe.jsp 直接执行命令如下图:

?

?

PublicCMS网站漏洞是如何产生的呢?

controller目录下\admin\cms\CmsWebFileAdminController.java代码里的uzip调用方式上出现了漏洞,该系统采用的是dounzip的方式去调用,dounzip是解压缩常用到的,所以上传ZIP文件的时候,自动解压缩了。导致我们可以构造特殊的文件名,来将我们的脚本木马上传到网站任意目录下。

?

?

该代码通过获取targetPath的上传路径值与压缩文件里的名字进行自动拼接,在拼接的这个过程当中,../ 可以对目录进行跨站。网站漏洞产生最根本的原因就是在处理这个压缩文件的时候并没有对压缩里的文件名进行判断与过滤,导致可以使用特殊的文件名进行定义,并传入到服务器后端执行代码,通过上传JSP木马后门,可以直接对服务器进行控制,危害性较高。

关于PublicCMS网站漏洞修复

已讲该漏洞报告给PublicCMS官方(天津黑核科技有限公司),并告知漏洞产生的具体细节,官方已对该漏洞进行了修复,请使用该PublicCMS网站的客户,尽快升级到最新版本即可。

专注于安全领域 解决网站安全 解决网站被黑 网站被挂马 网站被篡改 网站安全、服务器安全提供商-www.sinesafe.com --专门解决其他人解决不了的网站安全问题.

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
两台服务器间传输文件【scp命令】
两台服务器间传输文件【scp命令】
34 0
JS判断服务器端文件是否存在(三)
在前端JS操作时,有时候需要判断一下文件是否存在,如图片。 数据库中存在了这个值,然后直接在前端显示这个图片。 这是不正确的。例如,在数据库中存放的是 /image/user.jpg ; 而实际上这张图片被存放在GWML/image/user.jpg, 这个时候设置图片target.attr(src,path); 是不正确的,是取不出来的。 应该先判断一下这个path路径是不是有这张图片。 如果没有的话,显示错误图片或者默认图片,如果有的话,则显示正确的图片。
203 0
SAP附件UI里选择的文件是如何传到ABAP服务器的
SAP附件UI里选择的文件是如何传到ABAP服务器的
47 0
使用ECS服务器搭建javaweb项目
在领取了阿里云的学生服务器试用后,使用宝塔面板进行javaweb项目的搭建
251 0
杨老师课堂之JavaWeb项目架构之NFS文件服务器
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/kese7952/article/details/81013750 NFS简介 NFS(Network File System)即网络文件系统。
899 0
libcurl 上传文件至 web服务器
测试环境搭建, 使用 wamp server (windows下的 apache+MySQL+php)? ? libcurl vc6 工程代码 ?下载地址: ?http://download.csdn.
945 0
+关注
网站安全者
Sinesafe专注于网站安全,服务器安全,解决各类网络安全问题防入侵防篡改,对代码审计以及漏洞修补安全加固有专业的十年实战经验.
64
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载


http://www.vxiaotou.com