CVE-2018-10936
Moderate severity vulnerability that affects org.postgresql:pgjdbc-aggregate
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
8.1
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
CVE-2018-10936- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-297
- Updated
- 2026-11-02
EUVDEUVD-2018-0508
8.1
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
EUVD-2018-0508- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-568q-9fw5-28wf No score
Moderate severity vulnerability that affects org.postgresql:pgjdbc-aggregate
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
GHSA-568q-9fw5-28wf- Weakness
- CWE-297
- Updated
- 2026-11-02
NVD
8.1
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
CVE-2018-10936- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.8 Medium
AV:N/AC:M/Au:N/C:P/I:P/A:P - Weakness
- CWE-297
- Updated
- 2026-11-02
OSV
8.1
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
CVE-2018-10936- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2018-10936
8.1
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
DEBIAN-CVE-2018-10936- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2018-10936
8.1
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
UBUNTU-CVE-2018-10936- CVSS 3.0
- 8.1 High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-568q-9fw5-28wf No score
Moderate severity vulnerability that affects org.postgresql:pgjdbc-aggregate
A weakness was found in postgresql-jdbc before version 42.2.5. It was possible to provide an SSL Factory and not check the host name if a host name verifier was not provided to the driver. This could lead to a condition where a man-in-the-middle attacker could masquerade as a trusted server by providing a certificate for the wrong host, as long as it was signed by a trusted CA.
- Record
GHSA-568q-9fw5-28wf- Weakness
- CWE-297
- Updated
- 2026-11-02
OSVSUSE-SU-2020:3466-1 No score
Security update for SUSE Manager Server 4.0
This update fixes the following issues:
bind-formula:
- Temporarily disable dnssec-validation as hotfix for bsc#1177790
- Update to version 0.1.1603299886.60e4bcf
grafana-formula:
- Use variable for product name
- Add support for system groups in Client Systems dashboard
postgresql-jdbc:
- Address CVE-2020-13692 (bsc#1172079)
- Add patch:
- Major changes since 9.4-1200:
- License changed to BSD-2-Clause and BSD-3-Clause and Apache-2.0
- Support PostgreSQL 9.5, 9.6, 10 11 and 12 added
- Support for PostgreSQL versions below 8.2 was dropped
- Support for JDK8, JDK9, JDK10, JDK11 and JDK12
- Support for JDK 1.4 and 1.5 was dropped
- Support for JDBC 4.2 added
- Add maxResultBuffer property
- Add caller push of binary data
- Read only transactions
- pkcs12 key functionality
- New 'escapeSyntaxCallMode' connection property
- Connection property to limit server error detail in exception exceptions
- CancelQuery() to PGConnection public interface
- Support for large update counts (JDBC 4.2)
- Add Binary Support for Oid.NUMERIC and Oid.NUMERIC_ARRAY
- Expose parameter status messages (GUC_REPORT) to the user
- Log ignoring rollback when no transaction in progress
- Map inet type to InetAddress
- Change ISGENERATED to ISGENERATEDCOLUMN as per spec
- Support temporary replication slots in ReplicationCreateSlotBuilder
- Return function (PostgreSQL 11) columns in PgDatabaseMetaData#getFunctionColumns
- Return information on create replication slot, now the snapshot_name is exported to allow a consistent snapshot in some uses cases
ssl=trueimpliessslmode=verify-full, that is it requires valid server certificate- Support for
sslmode=allow/prefer/require - Added server hostname verification for non-default SSL factories in
sslmode=verify-full(CVE-2018-10936) - PreparedStatement.setNull(int parameterIndex, int t, String typeName) no longer ignores the typeName argument if it is not setNull
- Reduce the severity of the error log messages when an exception is re-thrown. The error will be thrown to caller to be dealt with so no need to log at this verbosity by pgjdbc
- Deprecate Fastpath API PR 903
- Support parenthesis in {oj ...} JDBC escape syntax
- socksProxyHost is ignored in case it contains empty string
- Support SCRAM-SHA-256 for PostgreSQL 10 in the JDBC 4.2 version (Java 8+) using the Ongres SCRAM library
- Make SELECT INTO and CREATE TABLE AS return row counts to the client in their command tags
- Support Subject Alternative Names for SSL connections
- Support isAutoIncrement metadata for PostgreSQL 10 IDENTITY column
- Support for primitive arrays PR 887 3e0491a
- Implement support for get/setNetworkTimeout() in connections
- Make GSS JAAS login optional, add an option 'jaasLogin'
- Improve behaviour of ResultSet.getObject(int, Class)
- Parse CommandComplete message using a regular expression, allows complete catch of server returned commands for INSERT, UPDATE, DELETE, SELECT, FETCH, MOVE,COPY and future commands.
- Use 'time with timezone' and 'timestamp with timezone' as is and ignore the user provided Calendars, 'time' and 'timestamp' work as earlier except '00:00:00' now maps to 1970-01-01 and '24:00:00' uses the system provided Calendar ignoring the user-provided one
- Change behaviour of multihost connection. The new behaviour is to try all secondaries first before trying the master
- Drop support for the (insecure) crypt authentication method
- slave and preferSlave values for the targetServerType connection property have been deprecated in favour of secondary and preferSecondary respectively
- Statements with non-zero fetchSize no longer require server-side named handle. This might cause issues when using old PostgreSQL versions (pre-8.4)+fetchSize+interleaved ResultSet processing combo
- Better logic for returning keyword detection.…
- Record
SUSE-SU-2020:3466-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.postgresql:pgjdbc-aggregateMaven |
before 42.2.5 | 42.2.5 |
libpgjavaDebian:12 |
before 42.2.5-1 | 42.2.5-1 |
libpgjavaDebian:13 |
before 42.2.5-1 | 42.2.5-1 |
libpgjavaDebian:14 |
before 42.2.5-1 | 42.2.5-1 |
org.postgresql:pgjdbc-aggregateMaven |
before 42.2.5, plus listed versions 42.0.042.1.042.1.142.1.242.1.3 Show 12 moreShow less42.1.442.2.042.2.142.2.242.2.342.2.49.4.12079.4.12089.4.12099.4.12109.4.12119.4.1212 |
42.2.5 |
bind-formulaSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 0.1.1603299886.60e4bcf-3.11.1 | 0.1.1603299886.60e4bcf-3.11.1 |
grafana-formulaSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 0.2.2-4.13.1 | 0.2.2-4.13.1 |
postgresql-jdbcSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 42.2.10-3.3.1 | 42.2.10-3.3.1 |
prometheus-exporters-formulaSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 0.7.5-3.16.1 | 0.7.5-3.16.1 |
prometheus-formulaSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 0.2.3-4.16.1 | 0.2.3-4.16.1 |
Show 13 moreShow less
| Package | Affected | Fixed |
|---|---|---|
salt-netapi-clientSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 0.18.0-4.12.1 | 0.18.0-4.12.1 |
spacewalk-adminSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.12-3.15.1 | 4.0.12-3.15.1 |
spacewalk-backendSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.35-3.38.1 | 4.0.35-3.38.1 |
spacewalk-javaSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.40-3.48.2 | 4.0.40-3.48.2 |
spacewalk-webSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.25-3.36.1 | 4.0.25-3.36.1 |
susemanagerSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.32-3.46.1 | 4.0.32-3.46.1 |
susemanager-schemaSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.23-3.32.1 | 4.0.23-3.32.1 |
susemanager-slsSUSE:Manager Server Module 4.0 From an advisory covering 2 CVEs |
before 4.0.31-3.37.1 | 4.0.31-3.37.1 |
libpgjavaUbuntu:14.04:LTS |
All versions, plus listed versions 9.2-1002-1 |
None known |
libpgjavaUbuntu:16.04:LTS |
All versions, plus listed versions 9.2-1002-1 |
None known |
libpgjavaUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 9.4.1212-19.4.1212-1ubuntu0.1~esm1 |
None known |
libpgjavaUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 42.2.6-142.2.8-142.2.9-142.2.10-142.2.10-1ubuntu0.1~esm1 |
None known |
libpgjavaUbuntu:22.04:LTS |
All versions, plus listed versions 42.2.23-142.2.24-142.3.1-142.3.2-142.3.3-1 |
None known |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | tafamace/CVE-2018-10936 | 2018-11-19 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2018-10936 is a high vulnerability (CVSS 8.1) in [unknown] Postgresql, published August 30, 2018. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 2.87%, the 86th percentile. Fixed in org.postgresql:pgjdbc-aggregate 42.2.5.
References
securityfocus.com/bid/105220
postgresql.org/about/news/1883
bugzilla.redhat.com/show_bug.cgi?id=CVE-2018-10936
lists.apache.org/thread.html/9317fd092b257a0815434b116a8af8daea6e920b6673f4fd5583d5fe%40%3Ccommits.druid.apache.org%3E
nvd.nist.gov/vuln/detail/CVE-2018-10936
github.com/advisories/GHSA-568q-9fw5-28wf
Show 21 moreShow less
lists.apache.org/thread.html/9317fd092b257a0815434b116a8af8daea6e920b6673f4fd5583d5fe@%3Ccommits.druid.apache.org%3E
security-tracker.debian.org/tracker/CVE-2018-10936
suse.com/support/update/announcement/2020/suse-su-20203466-1
bugzilla.suse.com/1144447
bugzilla.suse.com/1172079
bugzilla.suse.com/1173199
bugzilla.suse.com/1175739
bugzilla.suse.com/1175876
bugzilla.suse.com/1175987
bugzilla.suse.com/1176074
bugzilla.suse.com/1176172
bugzilla.suse.com/1177336
bugzilla.suse.com/1177435
bugzilla.suse.com/1177790
bugzilla.suse.com/1178060
bugzilla.suse.com/1178145
bugzilla.suse.com/1178195
suse.com/security/cve/CVE-2018-10936
suse.com/security/cve/CVE-2020-13692
ubuntu.com/security/CVE-2018-10936
cve.org/CVERecord?id=CVE-2018-10936
Left out here: the rest of 1 source description. The JSON record has them.