漏洞总结 漏洞概述 NQ Vault 组件在解密文件并写入磁盘时存在路径遍历(Path Traversal)漏洞。攻击者可以通过构造包含 的特殊文件名,试图将解密后的文件写入到预期的报告目录(report folder)之外的位置,可能导致文件覆盖或恶意文件写入。 影响范围 受影响的文件为 。主要涉及 函数以及文件解密写入的逻辑部分。 修复方案 1. 路径规范化与验证:在 函数中,使用 检查生成的输出路径是否仍在 根目录下。 2. 防御性回退:如果路径验证失败(即路径试图逃逸出 ,抛出 ),代码会捕获异常并强制使用默认文件名( )进行写入,确保文件始终保存在安全目录内。 3. 路径解析:在 函数中,使用 解析路径。这会消除相对路径引用(如 ),确保路径被解析为绝对路径并规范化,防止路径遍历。 POC/利用代码 以下是用于验证该漏洞及修复效果的测试代码(来自 ):