KindEditor 作为一款开源 HTML 可视化编辑器,在 Web 开发领域广为人知。它为用户提供所见即所得的在线编辑体验,兼容 IE、Firefox、Chrome、Safari、Opera 等主流浏览器,基于 Ja vaScript 开发,能够与 Ja va、.NET、PHP、ASP 等后端技术无缝集成。自 2006 年 7 月发布 2.0 版本以来,KindEditor 凭借出色的用户体验和领先的技术优势,迅速占据国内 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用的编辑器市场,如今已成为国内最受欢迎的编辑器之一。
然而,该编辑器在早期版本中曾曝出严重的目录遍历漏洞,至今仍有大量未修复的站点面临风险。下面直接介绍利用方法——
第一步,获取绝对路径。
访问以下 URL,注意 path=/ 参数:
https://localhost/67cms/kindeditor/php/file_manager_json.php?path=/
响应中会暴露服务器绝对路径,例如 D:\AppServ\www\67cms\kindeditor\php\file_manager_json.php,敏感信息由此泄露。
第二步,遍历目录文件。
获取绝对路径后,将 path 参数修改为相对路径,指向应用根目录:
https://localhost/67cms/kindeditor/php/file_manager_json.php?path=AppServ/www/67cms/
此时,服务器将遍历 d:/AppServ/www/67cms/ 下的所有文件与文件夹,并返回文件名列表。攻击者可借此获取敏感文件、配置文件乃至数据库连接信息。漏洞根源在于 file_manager_json.php 未对 path 参数进行有效过滤,导致任意目录可读取。

说实话,这类漏洞在早期编辑器组件中并不少见。许多开发者直接使用官方示例中的 file_manager_json.php 上线,却忽略了访问权限控制和路径白名单配置。如果你的站点仍在使用旧版 KindEditor,建议立即检查该文件是否暴露在外,或直接禁用文件管理功能,以降低安全风险。
