Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2022-29622 — 攻击此服务以证明CVE-2022–29622有效 | Kitploit
工具/GitHubGitHub/keymandll/cve-2022-29622
漏洞分析Web应用程序漏洞利用CTF渗透测试学习与教育实验室与实践
GitHubkeymandll/cve-2022-29622

CVE-2022-29622

攻击此服务以证明CVE-2022–29622有效

查看仓库
30年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2022–29622: (不)脆弱性分析

此代码库旨在帮助安全专业人员与开发者理解为何我认为 Formidable 并不受 CVE-2022-29622 漏洞影响。我在此处撰写了分析文章:CVE-2022–29622: (不)脆弱性分析

由于部分读者未能理解,我决定通过实际、可运行的代码来阐明我的观点。

服务器端

服务器端实现在 index.mjs 中。它使用 Formidable 3.1.4 版本上传任意文件。

我按如下方式显式配置了 Formidable:

root@kitploit:~
{
      uploadDir: './uploads/',
      keepExtensions: true,
    }

这样所有文件都将上传至 uploads 目录。我已启用 keepExtension,以便你能上传带有恶意文件名的文件。

启动服务器

要设置并启动服务器,请从当前目录执行以下命令:

root@kitploit:~
npm install
npm run start

第一条命令会安装所有依赖项,包括相应版本的 formidable。第二条命令将启动服务器。

启动并运行后,你可以通过以下地址访问服务器提供的文件上传表单:http://127.0.0.1:3000/

上传恶意文件

我在 examples 目录中包含了两个具有恶意文件名的文件作为示例。

通过 http://127.0.0.1:3000 表单提交的文件会被上传至 uploads 目录。

挑战

挑战在于测试你是否能证明 formidable 受 CVE-2022–29622 漏洞影响。要做到这一点,你必须让此 Web 服务器执行你包含在上传文件或文件名中的代码。

规则如下:

  1. 你可以将恶意载荷放入文件或文件名中。(类似于我提供的示例。)
  2. 你可以篡改 HTTP 请求中与文件上传相关的部分。(例如:multipart 正文、content-type、boundary 字符串)
  3. 唯一可接受的攻击面是端口 3000。你不得修改此目录内的任何文件。

如果你能严格遵守上述规则实现任意代码执行,只有那时你才证明了 formidable 存在任意代码执行漏洞。

建议:最简单的可视化证明方式可能是让服务器在启动 Web 服务器的控制台上输出一个字符串,例如 "I'm awesome, I've got arbitrary code executed"。

下载工具