OpenKM 漏洞总结 漏洞概述 该仓库包含 Terra System Labs 安全研究相关的 OpenKM 文档管理系统(DMS)中的关键管理范围漏洞。这些漏洞影响管理界面,可能导致完全系统被控制。 影响范围 远程代码执行 (RCE):通过不受限制的 BeanShell 脚本。 不受限制的 SQL 命令执行:通过管理数据库查询接口。 本地文件包含/任意文件读取:通过管理文件加载工作流。 默认/弱管理凭据(如适用)。 这些漏洞在现实世界部署中可以链式利用,一旦获得管理访问权限。 修复方案 补偿控制:由于发布时没有官方供应商补丁,组织应立即应用补偿控制并监控供应商建议。 防御性验证:使用提供的工具进行防御性验证、暴露评估、事件响应和修复验证。 包含内容 Nuclei 模板:用于检测和暴露验证。 Python 概念验证工具:用于受控验证。 手动复现参考:与 Terra System Labs 白皮书对齐。 使用 Nuclei 模板(推荐第一步) 默认凭据扫描: 用户提供的凭据: Python 漏洞工具(受控验证) 用法: 选项: - : OpenKM 部署的基础 URL - : 要运行的测试 - A = 全部 - R = 远程代码执行 - L = 本地文件包含 - S = SQL 执行 - : HTTP 代理(例如 http://127.0.0.1:8080) - : 用户名:密码格式 示例执行: 手动验证(参考) 漏洞 1 - 远程代码执行 (BeanShell): - 登录 OpenKM 管理账户(默认或授权凭据)。 - 点击“Administration”。 - 导航到“Scripting”。 - 在文本框中输入 BeanShell 代码。 - 点击“Evaluate”执行代码。示例 BeanShell 片段(仅演示): 漏洞 2 - 不受限制的 SQL 命令执行: - 以管理员身份登录。 - 导航到“Administration” -> “Database Query”。 - 选择查询类型为 JDBC。 - 直接执行 SQL 查询。示例查询: 漏洞 3 - 本地文件包含/任意文件读取: - 以管理员身份登录。 - 导航到“Administration” -> “Scripting”。 - 使用文件浏览器或指定文件系统路径。 - 点击“Load”读取文件内容。 - 补丁状态。 负责任披露与伦理 Terra System Labs 发布漏洞研究以改善生态系统安全。 所有测试必须在受控环境中进行。 不得在没有授权的情况下针对系统。 不得将这些工具用于持久化、破坏或未经授权的访问。 免责声明 概念验证工件旨在展示影响并帮助修复验证,不用于促进未经授权的活动。 参考 Terra System Labs 安全研究白皮书:链接 致谢 研究:Terra System Labs 研究团队 组织:Terra System Labs Pvt. Ltd. 如果重新使用检测模板或研究材料,请提供适当的归属。