CVE-2026-105615Low· 3.5▾ SunlitPostgreSQL's optimized statistics on a table are visible as long as you have SELECT privilege on said table. A masked role can therefore read a limited subset of the data through the statistics view's histograms and mcvs. The vulnerabili…
▾ Sunlit zone — Low / medium · no exploitation signal
impact 19.3 · likelihood 0 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Oct 29.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via CVEORG
0.1%
PostgreSQL's optimized statistics on a table are visible as long as you have SELECT privilege on said table. A masked role can therefore read a limited subset of the data through the statistics view's histograms and mcvs. The vulnerability is resolved in PostgreSQL Anonymizer 3.3.0 and later versions.
postgresql_anonymizer >= 1 < 3.3.0Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
For sensitive columns, statitics can be disabled with ALTER TABLE my_table ALTER COLUMN my_col SET STATISTICS 0; ANALYZE my_table;.
Connected by shared product, vendor, weakness, or advisory.
CVE-2026-110183Medium· 4.3PostgreSQL Anonymizer: statistics can expose some of the original data after statistic masking
CVE-2026-105614Medium· 4.7PostgreSQL Anonymizer: Unbounded image-decode memory allocation (DoS) in anon.image_blur()
CVE-2026-105612Low· 3.5PostgreSQL Anonymizer: Data-modifying CTEs bypass the read-only restriction of masked roles
CVE-2026-110181Medium· 6.5PostgreSQL Anonymizer: Function declared with SQL-standard syntax leak anonymized data
CVE-2026-105616Medium· 5.7PostgreSQL Anonymizer: The secret salt and shift of anon are readable by any role in pg_roles or pg_db_role_setting
CVE-2026-105620Medium· 6.5PostgreSQL Anonymizer: A masked role reads the authentic data of masked tables through a masking rule with a sub-query