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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2025-22352 — CVE-2025-22352 的 PoC | Kitploit
工具/GitHubGitHub/dottak/cve-2025-22352
漏洞分析代码分析漏洞利用Web应用程序漏洞利用渗透测试
GitHubdottak/cve-2025-22352

CVE-2025-22352

CVE-2025-22352 的 PoC

查看仓库
211年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

1️⃣ 组件类型

WordPress 插件

2️⃣ 组件详细信息

组件名称 ELEX WooCommerce Advanced Bulk Edit Products, Prices & Attributes

受影响版本 <= 1.4.8

组件slug elex-bulk-edit-products-prices-attributes-for-woocommerce-basic

组件链接 https://wordpress.org/plugins/elex-bulk-edit-products-prices-attributes-for-woocommerce-basic/

3️⃣ OWASP 2017: TOP 10

漏洞类别 A3: 注入

漏洞类型 SQL注入(盲SQL注入)

4️⃣ 先决条件

商店经理或管理员

5️⃣ 漏洞详细信息

👉 简要描述

ELEX WooCommerce Advanced Bulk Edit Products, Prices & Attributes 插件是一款支持产品批量编辑的插件。

在该插件中批量编辑产品时,通过筛选选择目标。在此过程中,产品筛选请求中传输的某些数据被直接插入 SQL 查询,从而产生 SQL 注入漏洞。

然而,SQL 查询结果无法直接验证,该漏洞以盲 SQL 注入的形式存在,通过判断查询结果的真假来提取数据。

👉 如何复现(PoC)

  1. 在仪表盘的 WooCommerce 菜单中进入“批量编辑产品”('/wp-admin/admin.php?page=eh-bulk-edit-product-attr')。
  2. 在产品筛选项中的“产品常规价格”选择标签中选择“==”。
  3. 在文本输入表单中输入 '1 OR 1=1'(不包括单引号('))。
  4. 点击底部的“预览筛选产品”按钮,所有产品将显示。
  5. 另一方面,如果在同一输入表单中输入 '1 OR 1=2',则不会显示任何产品。
  6. 通过这种方式,您可以验证响应数据会根据 SQL 查询条件为真或假而有所不同。

👉 附加信息(可选)

[漏洞根因]

执行上述 PoC 描述中请求的功能(“预览筛选产品”)时,会生成以下数据包。

image

当请求该数据包时,将调用 /wp-content/plugins/elex-bulk-edit-products-prices-attributes-for-woocommerce-basic/includes/elex-ajax-apifunctions.php 文件中的 elex_bep_filter_products 函数。

请求数据中带有 SQL 注入负载的 desired_price 值通过以下步骤作为 SQL 查询执行。

  1. 包含 SQL 注入负载的 desired_price 值被直接传递到查询条件子句,并赋值给变量 $price_query。

    product_title_text、range 也会被直接传递到查询中,但由于我们在 PoC 中将 SQL 注入负载传递给了 desired_price,因此这里只介绍 desired_price。

    root@kitploit:~
    // elex-ajax-apifunctions.php at line 1280
    $price_query = " AND meta_key='_regular_price' AND meta_value {$filter_range} {$data_to_filter['desired_price']} ";
    

    image

  2. 随后,将变量 $price_query 添加到变量 $sql(第 1365 行,#1),变量 $sql 连同字符串 AND 和变量 $product_type_condition 一起初始化变量 (第 1379 行,#2)

image

因此,包含 SQL 注入负载的请求参数 desired_price 被包含在 $wpdb->prepare( '%1s', $main_query ) 语句的 $main_query 中。此时,由于 %1s 格式说明符会按原样传递 $main_query 值,因此 SQL 注入负载无需转义即可插入查询中,从而导致 SQL 注入漏洞。

[PoC 代码实现与执行]

⚠️ PoC 代码旨在使用产品经理账户,通过利用盲 SQL 注入漏洞获取数据库名称。

  1. 在编辑器中打开 PoC 代码,输入 WordPress 站点地址和产品经理账户凭据。

image

  1. 接下来,输入以下命令以运行 PoC 代码。

    所需模块 requests

    root@kitploit:~
    python poc.py
    

    image

6️⃣ 漏洞利用演示

video

7️⃣ 参考资料

  • https://nvd.nist.gov/vuln/detail/CVE-2025-22352
下载工具
$main_query

变量 $sql 在 elex-ajax-apifunctions.php 的第 1257 行被初始化。

image

  • 最后,变量 $main_query 作为参数传递给 prepare 函数,如下所示,以执行数据库查询。