漏洞描述
EJS 是开源的 JavaScript 模板引擎,允许在HTML代码中使用JavaScript代码块,closeDelimiter 参数是 EJS 模板中的结束标记,用于指定结束分隔符。
由于对 CVE-2022-29078 漏洞修复不完全,当应用程序使用 EJS 模板引擎,并且未对用户传入的变量进行转义或过滤时,攻击者可以在 closeDelimiter 参数中注入任意的JavaScript代码,从而在服务器上执行恶意系统命令、读取和修改敏感文件等操作。
漏洞名称 | ejs 存在服务端模板注入漏洞 |
---|---|
漏洞类型 | 注入 |
发现时间 | 2023/5/5 |
漏洞影响广度 | 广 |
MPS编号 | MPS-2023-10199 |
CVE编号 | CVE-2023-29827 |
CNVD编号 | - |
影响范围
ejs@[2.0,1, 3.1.9]
org.webjars.npm:ejs@[2.0.1, 3.1.9]
node-ejs@影响所有版本
node-ejs@影响所有版本
修复方案
官方暂未发布新版本,请关注官方公告:https://github.com/mde/ejs
参考链接
https://www.oscs1024.com/hd/MPS-2023-10199
https://nvd.nist.gov/vuln/detail/CVE-2023-29827
https://github.com/mde/ejs/issues/720
https://github.com/mde/ejs/commit/15ee698583c98dadc456639d6245580d17a24baf
关于墨菲安全
墨菲安全是一家为您提供专业的软件供应链安全管理的科技公司,核心团队来自百度、华为、乌云等企业,公司为客户提供完整的软件供应链安全管理平台,围绕SBOM提供软件全生命周期的安全管理,平台能力包括软件成分分析、源安全管理、容器镜像检测、漏洞情报预警及商业软件供应链准入评估等多个产品。为客户提供从供应链资产识别管理、风险检测、安全控制、一键修复的完整控制能力。
开源项目:https://github.com/murphysecurity/murphysec/?sf=qbyj
产品可以极低成本的和现有开发流程中的各种工具一键打通,包括 IDE、Gitlab、Bitbucket、Jenkins、Harbor、Nexus 等数十种工具无缝集成。
免费代码安全检测工具: https://www.murphysec.com/?sf=qbyj
免费情报订阅: https://www.oscs1024.com/cm/?sf=qbyj