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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2024-27304-PoC — PoC of "DEF CON 32 - SQL 注入未死:在协议层面走私查询 - Paul Gerste" | Kitploit
工具/GitHubGitHub/roaris/cve-2024-27304-poc
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试数据库安全
GitHubroaris/cve-2024-27304-poc

CVE-2024-27304-PoC

PoC of "DEF CON 32 - SQL 注入未死:在协议层面走私查询 - Paul Gerste"

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2024-27304-PoC

参考资料

  • DEF CON 32 - SQL注入并未消亡:在协议层面走私查询 - Paul Gerste
  • pgx 通过协议消息大小溢出实现 SQL 注入

网页应用

一个简单的具有登录功能的网页应用。仅管理员可以登录。

该应用使用 PostgreSQL 和 pgx v5.5.3(存在漏洞的版本)。

攻击者试图通过恶意插入记录到 users 表中进行登录。然而,由于使用了占位符,传统的 SQL 注入无效。

利用

PostgreSQL 消息格式:https://www.postgresql.org/docs/17/protocol-message-formats.html

该利用依赖于 pgx 在执行 SQL 时发送给数据库服务器的消息格式。 默认情况下,pgx 使用 P(Parse) 发送预处理语句,然后使用 B(Bind) 发送参数。

如果设置了以下配置,pgx 将使用 Q(Query) 发送插值查询:

root@kitploit:~
cfg.ConnConfig.DefaultQueryExecMode = pgx.QueryExecModeSimpleProtocol

你可以使用 tcpdump 的 -X 选项查看实际消息。

脚本

  • Q_simple.py:通过 Q(Query) 造成溢出。假设攻击者完全了解正在执行的查询(如果是黑盒,则需要暴力破解)。
  • Q_nop_sled.py:通过 Q(Query) 造成溢出。可在 5 次尝试内成功利用。
  • B_simple.py:通过 B(Bind) 造成溢出。假设攻击者完全了解正在执行的查询(依我之见,在黑盒场景下利用 B(Bind) 比较困难)。

注意事项

  • 成功执行利用需要大量内存。
  • 此利用会发送极大的载荷,可能导致拒绝服务(DoS)。正如视频中提到的,不要针对第三方系统执行此利用。
下载工具