RCE with PostgreSQL Languages
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
您访问的 PostgreSQL 数据库可能安装了不同的 脚本语言,您可以利用这些语言来 执行任意代码。
您可以 让它们运行:
大多数可以在 PostgreSQL 中安装的脚本语言有 2 种类型:受信任的 和 不受信任的。不受信任的 语言名称 以 "u" 结尾,并且是允许你 执行代码 和使用其他有趣功能的版本。这些语言如果安装了会很有趣:
plpythonu
plpython3u
plperlu
pljavaU
plrubyu
... (任何其他使用不安全版本的编程语言)
如果你发现一个有趣的语言是 已安装 但被 PostgreSQL 标记为不受信任 (lanpltrusted
为 false
),你可以尝试用以下行来 信任它,这样 PostgreSQL 就不会施加任何限制:
如果您没有看到某种语言,您可以尝试通过(您需要是超级管理员)加载它:
请注意,可以将安全版本编译为“非安全”。查看这个作为例子。因此,如果您发现安装了受信任的版本,尝试执行代码总是值得的。
查看以下页面:
PL/pgSQL Password Bruteforce查看以下页面:
RCE with PostgreSQL Extensions学习和实践 AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) 学习和实践 GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)