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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2024-27766 — 针对 MariaDB v11.1 的 UDF RCE 利用修改版 PoC,可通过 SQL 查询内联返回命令输出。包含详细的代码对比及 Windows 平台编译说明。 | Kitploit
工具/GitHubGitHub/y0un9eee/cve-2024-27766
漏洞分析代码分析漏洞利用学习与教育Payload 开发数据库安全二进制利用
GitHuby0un9eee/cve-2024-27766

CVE-2024-27766

针对 MariaDB v11.1 的 UDF RCE 利用修改版 PoC,可通过 SQL 查询内联返回命令输出。包含详细的代码对比及 Windows 平台编译说明。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2024-27766

MariaDB v11.1 通过 UDF 的 RCE — 基于 Ant1sec-ops/CVE-2024-27766 修改的 PoC。


概述

受影响MariaDB v11.1
修复版本10.5.25 / 10.6.18 / 10.11.8 / 11.0.6 / 11.1.5 / 11.2.4 / 11.4.2+
类型通过用户定义函数(UDF)实现远程代码执行(RCE)

MariaDB v11.1 允许具备足够数据库权限(FILE 权限 + 插件目录写入权限)的攻击者注册恶意 UDF,并通过它执行任意系统命令。

注意:MariaDB 基金会对此 CVE 提出异议,理由是未跨越任何权限边界。利用需要管理员级别的数据库访问权限或同等权限。


与原版的差异

原始 PoC 使用 longlong 返回类型,因此 do_system() 仅返回命令是否成功——你无法直接从 SQL 中看到输出。

本版本将返回类型改为 char *,从而将标准输出作为查询结果返回。无需带外通道;只需运行 SELECT do_system('whoami'),输出就会直接显示。

变更一览

原始版本本 PoC
返回类型longlongchar *
执行方式system()_popen() + fgets() 循环
SQL 结果退出码命令的标准输出
内存无堆分配,在 deinit 中释放

需要注意的一点:从 UDF 返回 char * 要求 MariaDB 预先知道缓冲区大小。do_system_init 设置 initid->max_length = 65536,与主函数中分配的输出缓冲区大小一致。

由于返回类型改变,注册函数时必须使用 RETURNS STRING —— 而不是原版的 RETURNS INTEGER。

CREATE FUNCTION do_system RETURNS STRING SONAME 'do_system.dll';

要求

  • Windows(使用 _popen / _pclose)
  • MariaDB v11.1 (未修补)
  • 数据库用户具备 FILE 权限和插件目录写入权限
  • 需要 MinGW-w64 或 MSVC 进行编译

免责声明

仅供教育和研究目的使用。请勿用于您没有所有权或明确测试许可的系统。

下载工具