CVE-2014-8161
Medium · 4.3CVSS
4.3
EPSS
2.5%
Published
Jan 27, 2020
CISA due date
—
Cloudanix analysis
Logged-in users might be able to see private information they should not by causing certain errors and reading the details they produce.
- Exploitation
- Remote Authenticated
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Network Service
- Class
- Information Disclosure
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw permits remote authenticated users to extract sensitive column values by forcing constraint violations and inspecting the resulting database error messages.
Why it matters to the business
Valid users can obtain confidential data they are not authorized to view, increasing risk of information leakage and regulatory exposure in environments with many downstream dependents.
How an attack unfolds
An authenticated attacker supplies input designed to violate database constraints, then reads the detailed error output to recover hidden column contents; the issue has been present since publication with no observed exploitation trend.
How to fix it
Upgrade affected Mattermost instances to one of the fixed commits: 61d6a7434b18612c52d0d6b7565032065262e096 or c0aafbcdc221970054869b6c03db77c1dcc63289.
How to confirm the fix worked
Confirm the running codebase matches a listed fixed commit and verify that database error responses no longer include column values.
Typical attack path
- Obtain valid application credentials
- Locate inputs processed by constrained database operations
- Submit values that trigger constraint violations
- Parse error messages to extract sensitive column data
How to detect it
Search application and database logs for repeated constraint violation errors originating from authenticated sessions and inspect whether error content reveals unexpected data fields.
What your security team should do
- Apply one of the listed commits without delay given the long exposure window
- Review and sanitize all database error handling paths
- Audit logs for repeated constraint violations from authenticated sessions
The record
PostgreSQL before 9.0.19, 9.1.x before 9.1.15, 9.2.x before 9.2.10, 9.3.x before 9.3.6, and 9.4.x before 9.4.1 allows remote authenticated users to obtain sensitive column values by triggering constraint violation and then reading the error message.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:6.0 | postgresql-8.4 | 0 | 8.4.22lts1-0+deb6u1 |
| Debian:7 | postgresql-9.1 | 0 | 9.1.15-0+deb7u1 |
| Mageia:4 | postgresql9.0 | 0 | 9.0.19-1.mga4 |
| Mageia:4 | postgresql9.1 | 0 | 9.1.15-1.mga4 |
| Mageia:4 | postgresql9.2 | 0 | 9.2.10-1.mga4 |
| Mageia:4 | postgresql9.3 | 0 | 9.3.6-1.mga4 |
| Red Hat:enterprise_linux:6::client | postgresql | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-contrib | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-debuginfo | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-devel | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-docs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-libs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-plperl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-plpython | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-pltcl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-server | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::client | postgresql-test | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-contrib | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-debuginfo | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-devel | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-docs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-libs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-plperl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-plpython | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-pltcl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-server | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::computenode | postgresql-test | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-contrib | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-debuginfo | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-devel | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-docs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-libs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-plperl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-plpython | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-pltcl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-server | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::server | postgresql-test | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-contrib | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-debuginfo | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-devel | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-docs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-libs | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-plperl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-plpython | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-pltcl | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-server | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:6::workstation | postgresql-test | 0 | 0:8.4.20-2.el6_6 |
| Red Hat:enterprise_linux:7::client | postgresql | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-contrib | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-debuginfo | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-devel | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-docs | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-libs | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-plperl | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-plpython | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-pltcl | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-server | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-test | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::client | postgresql-upgrade | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-contrib | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-debuginfo | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-devel | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-docs | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-libs | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-plperl | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-plpython | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-pltcl | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-server | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-test | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::computenode | postgresql-upgrade | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::server | postgresql | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-contrib | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-debuginfo | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-devel | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-docs | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-libs | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-plperl | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-plpython | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-pltcl | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-server | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-test | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::server | postgresql-upgrade | 0 | 0:9.2.10-2.ael7b_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-contrib | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-debuginfo | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-devel | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-docs | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-libs | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-plperl | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-plpython | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-pltcl | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-server | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-test | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:enterprise_linux:7::workstation | postgresql-upgrade | 0 | 0:9.2.10-2.el7_1 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql-contrib | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql-debuginfo | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql-libs | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql-pltcl | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql-server | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite:5.7::el6 | postgresql92-postgresql-upgrade | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql-contrib | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql-debuginfo | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql-libs | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql-pltcl | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql-server | 0 | 0:9.2.10-2.el6 |
| Red Hat:network_satellite_managed_db:5.7::el6 | postgresql92-postgresql-upgrade | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-contrib | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-debuginfo | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-devel | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-docs | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-libs | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-plperl | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-plpython | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-pltcl | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-server | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-test | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el6 | postgresql92-postgresql-upgrade | 0 | 0:9.2.10-2.el6 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-contrib | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-debuginfo | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-devel | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-docs | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-libs | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-plperl | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-plpython | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-pltcl | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-server | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-test | 0 | 0:9.2.10-1.el7 |
| Red Hat:rhel_software_collections:1::el7 | postgresql92-postgresql-upgrade | 0 | 0:9.2.10-1.el7 |
| SUSE:Linux Enterprise Desktop 12 | postgresql93 | 0 | 9.3.6-5.2 |
| SUSE:Linux Enterprise Desktop 12 | postgresql93-libs | 0 | 9.3.6-5.1 |
| SUSE:Linux Enterprise Server 12 | postgresql93 | 0 | 9.3.6-5.2 |
| SUSE:Linux Enterprise Server 12 | postgresql93-libs | 0 | 9.3.6-5.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | postgresql93 | 0 | 9.3.6-5.2 |
| SUSE:Linux Enterprise Server for SAP Applications 12 | postgresql93-libs | 0 | 9.3.6-5.1 |
| SUSE:Linux Enterprise Software Development Kit 12 | postgresql93-libs | 0 | 9.3.6-5.1 |
| Ubuntu:14.04:LTS | postgresql-9.1 | 0 | 9.1.15-0ubuntu0.14.04 |
| Ubuntu:14.04:LTS | postgresql-9.3 | 0 | 9.3.6-0ubuntu0.14.04 |
| openSUSE:Tumbleweed | postgresql93 | 0 | 9.3.15-1.1 |
Related vulnerabilities
- CVE-2015-5288 The crypt function in contrib/pgcrypto in PostgreSQL before 9.0.23, 9.1.x before 9.1.19… Also affects postgresql-8.4
- CVE-2015-3165 Double free vulnerability in PostgreSQL before 9.0.20, 9.1.x before 9.1.16, 9.2.x before… Also affects postgresql-8.4
- CVE-2017-7546 PostgreSQL versions before 9.2.22, 9.3.18, 9.4.13, 9.5.8 and 9.6.4 are vulnerable to… Also affects postgresql-9.1
- CVE-2016-5423 PostgreSQL before 9.1.23, 9.2.x before 9.2.18, 9.3.x before 9.3.14, 9.4.x before 9.4.9… Also affects postgresql-9.1
- CVE-2016-0766 PostgreSQL before 9.1.20, 9.2.x before 9.2.15, 9.3.x before 9.3.11, 9.4.x before 9.4.6… Also affects postgresql-9.1
- CVE-2013-1899 Argument injection vulnerability in PostgreSQL 9.2.x before 9.2.4, 9.1.x before 9.1.9… Also affects postgresql-9.1
- CVE-2017-15098 Invalid json_populate_recordset or jsonb_populate_recordset function calls in PostgreSQL… Also affects postgresql-9.3
- CVE-2026-92936 vm2 versions 3.11.0 through 3.11.6 leak absolute host filesystem paths to sandboxed code… CWE-209