描述: Cockpit CMS 2.7.0 中的文件上传漏洞允许本地攻击者上传带有隐藏 XSS 的 PDF 文件。
攻击向量: AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
这是软件版本。

这是注入到 PDF 文件中的 XSS 内容。

登录面板后,我们将进入 General Menu 中的“Assets.”部分,并点击 Upload Asset。

我们上传注入后的 PDF 文件:

在下面的证据中,我们可以看到它已成功上传:

要访问注入后的 PDF,我们按如下所示点击该文件:

然后我们复制服务器路径的链接以及存储该文件的 ID:

我们访问复制好的 URL,XSS 弹窗就会出现

首先要生成带有隐藏 XSS 的恶意 PDF。
为此,我们创建一个 .js 文件,其中包含我们想要注入到 PDF 文件中以实现 XSS 的 Javascript 代码。

然后我们创建一个空的 PDF 文件(pdf2go),并使用 JS2PDFInjector 工具注入 .js 文件的 payload

我们可以使用 Peepdf 工具分析注入后的 PDF 内容。

在 object[3] 中有一个包含 javascript 代码的对象,我们可以使用 Peepdf 工具包中的 pdf-parser 工具对其进行查看。

为了方便使用,我重命名了该文件。

我们在 Assets 中上传该文件:

当我们打开它时,就会触发存储在服务器上的 PDF 文件的 XSS。
