CVE-2026-9617 PUBLISHED

PostgreSQL Anonymizer: malicious column name allows SQL injection via anon.k_anonymity() function

Assigner: PostgreSQL
Reserved: 26.05.2026 Published: 27.05.2026 Updated: 27.05.2026

PostgreSQL Anonymizer contains a vulnerability that allows a user to gain superuser privileges by creating a table and placing malicious code inside a column identifier. If a superuser calls the k-anonymity function, the malicious code is executed with superuser privileges. The risk is higher with PostgreSQL 14 or with instances upgraded from PostgreSQL 14 or a prior version. With PostgreSQL 15 and later, the creation permission on the public schema is revoked by default and this exploit can only be achieved by a user who was explicitly granted the CREATE TABLE privilege. The problem is resolved in PostgreSQL Anonymizer 3.1.0 and further versions

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:H/I:H/A:H
CVSS Score: 6.8

Product Status

Vendor DALIBO
Product PostgreSQL Anonymizer
Versions Default: unaffected
  • affected from 1 to 3.1.0 (excl.)

Workarounds

Remove the k_anonymity feature with 'DROP FUNCTION anon.k_anonymity();'. This is a user-facing function with no internal dependencies.

Credits

  • The PostgreSQL Anonymizer project thanks user 'Buut' for reporting this problem.

References

Problem Types

  • Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') CWE