近期丁老师在对OJS期刊系统进行等保工作时,发现OJS一个安全漏洞,即任意文件上传漏洞,具体内容如下。
漏洞描述
任意文件上传漏洞(Unrestricted File Upload),是一种常见的Web安全漏洞,由于Web应用程序在实现文件上传功能时对上传的文件缺少必要的检查,使得攻击者可上传任意文件。利用该漏洞,攻击者可以直接上传Webshell(WebShell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称之为一种网页后门)、病毒、恶意脚本等各种危险文件,可能导致服务器权限被直接获取,从而危及整个系统的安全运行。
测试过程
点击投稿系统,选择文件上传,可以上传任意文件,但是脚本文件会被替换成txt.但是可以上传html文件,造成xss,Url如下:
index.php/is/api/v1/submissions/202/files关键特征

解决方案
1、对用户上传的文件类型采用白名单进行限制,且重命名文件名。
2、限定文件上传目录,且该目录不允许解析动态脚本文件。
3、更新Web服务器版本并进行正确配置,防止解析漏洞。
针对上述解决方案,如需专业技术修复,可以联系丁老师咨询。
越来越多做的客户找丁老师安装搭建Open Journal Systems(OJS)期刊管理系统了,每天忙的顾不过来!这些做出版社期刊运营的客户,问的比较多的一个问题就是,安装搭建OJS系统,要买什么样的服务器呢?今天丁老师就这个问题做一...
昨天有一位出版社的客户咨询,Open Journal Systems期刊管理系统(OJS)支持微信支付吗?怎么样才可以让OJS使用微信支付呢?这位客户是专门做期刊运营的,业务模式是可以让高校师生、公职人员、科研、医学机构等作者进行期刊投...
有同学在我们的期刊管理运营群里提问,在对OJS(open journal systems)二次开发的过程中,报了个500错误,打开错误日志后显示Uncaught Error: Class "pkp\controllers\jo...
Open Journal System期刊管理系统(OJS),是使用PHP语言开发的程序系统。OJS的网址url构成结构由“http://网址/inde.php/期刊缩写”构成,在日常使用时,有一些做期刊运营的朋友,觉得网址中间一直有那...