PostgreSQL injection
最后更新于
最后更新于
如果您对黑客职业感兴趣并想要黑掉无法黑掉的东西 - 我们正在招聘!(需要流利的波兰语书面和口语表达能力)。
查看如何从PostgreSQL中妥协主机并提升特权:
请记住,PostgreSQL支持堆叠查询,但是当期望只返回1个响应时,如果返回了2个响应,多个应用程序会抛出错误。但是,您仍然可以通过时间注入滥用堆叠查询:
query_to_xml
此函数将以XML格式在一个文件中返回所有数据。如果您想要在一行中转储大量数据,这将是理想选择:
database_to_xml
此函数将以 XML 格式在仅 1 行中转储整个数据库(如果数据库非常庞大,可能会导致 DoS 攻击,甚至影响您自己的客户端):
如果您可以运行查询并将它们包含在字符串中(例如使用**query_to_xml
**函数)。您可以使用convert_from
将字符串作为十六进制传递,以此绕过过滤器:
如果无法在负载中使用引号,您可以通过CHR
来绕过这一限制,用于基本子句(字符连接仅适用于基本查询,如SELECT、INSERT、DELETE等。它不适用于所有SQL语句):
或者使用$
。这些查询返回相同的结果:
如果您对黑客职业感兴趣并想要攻破不可能的系统 - 我们正在招聘!(需要流利的波兰语书面和口头表达能力)。
本页面旨在解释不同的技巧,可帮助您利用在postgresql数据库中发现的SQL注入漏洞,并补充您可以在 上找到的技巧。
PostgreSQL模块 dblink
提供了连接到其他PostgreSQL实例并执行TCP连接的功能。这些功能与COPY FROM
功能结合使用,可以执行特权升级、端口扫描和NTLM挑战响应捕获等操作。有关执行这些攻击的详细方法,请查看如何。
您可以查看 以查看一个CTF示例,演示了如何将数据加载到大对象中,然后将大对象内容泄露到函数 dblink_connect
的用户名中。
操纵字符串可以帮助您绕过WAF或其他限制。 中,您可以找到一些有用的字符串函数。
如果您想看到您的公司在HackTricks中做广告或下载PDF格式的HackTricks,请查看!
获取
探索,我们的独家收藏品
加入 💬 或 或在Twitter上关注我们 🐦 。
通过向和 github仓库提交PR来分享您的黑客技巧。