Cloudanix VulnDB

CVE-2019-1547

Medium · 4.7

CVSS

4.7

EPSS

1.2%

Published

Sep 10, 2019

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A flaw in the OpenSSL library could let attackers steal secret keys by carefully timing many signature operations.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
High
Impact
Data Exposure
Component
Library
Class
Cryptographic Weakness
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Allows full recovery of EC private keys via side-channel attack on ECDSA signatures when using explicit curve parameters without cofactor, bypassing side-channel protections in libcrypto.

Why it matters to the business

Attackers may obtain private keys used for signing or encryption, leading to potential compromise of secure communications, data integrity, and authentication across systems relying on affected OpenSSL versions.

How an attack unfolds

An attacker with local access identifies an application performing ECDSA signatures with explicit parameters lacking a cofactor, then times a large number of such operations to recover the private key through analysis of non-side-channel-resistant code paths.

How to fix it

Upgrade to OpenSSL 1.1.1d, 1.1.0l, or 1.0.2t (or later releases in each branch). Avoid constructing EC groups with explicit parameters; prefer named curves.

How to confirm the fix worked

Confirm installed OpenSSL version meets or exceeds 1.1.1d, 1.1.0l, or 1.0.2t. Audit source code and configurations for any use of explicit EC parameters with d2i_ECParameters or similar functions.

Typical attack path

  1. Locate applications or libraries using explicit EC parameters instead of named curves
  2. Trigger or observe a high volume of ECDSA signature operations
  3. Collect precise timing data across many signatures
  4. Apply mathematical recovery techniques such as lattice attacks to extract the private key

How to detect it

Post-exploitation detection is challenging because the attack relies on passive timing of normal operations; review logs for unusually high volumes of ECDSA operations using custom curves and inspect any available application-level timing or debug output.

What your security team should do

  • Prioritize upgrade of all OpenSSL installations to a fixed release
  • Scan codebases and configurations for explicit EC parameter usage
  • Replace any custom curves with standard named curves where possible
  • Review cryptographic key material that may have been exposed on affected systems

The record

Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).

Affected packages

Ecosystem Package Introduced Fixed
Alpine:v3.10 openssl 0 1.1.1d-r0
Alpine:v3.11 openssl 0 1.1.1d-r1
Alpine:v3.12 openssl 0 1.1.1d-r1
Alpine:v3.13 openssl 0 1.1.1d-r1
Alpine:v3.14 openssl 0 1.1.1d-r1
Alpine:v3.15 openssl 0 1.1.1d-r1
Alpine:v3.15 openssl3 0 1.1.1d-r1
Alpine:v3.16 openssl 0 1.1.1d-r1
Alpine:v3.16 openssl3 0 1.1.1d-r1
Alpine:v3.17 openssl 0 1.1.1d-r1
Alpine:v3.18 openssl 0 1.1.1d-r1
Alpine:v3.19 openssl 0 1.1.1d-r1
Alpine:v3.20 openssl 0 1.1.1d-r1
Alpine:v3.21 openssl 0 1.1.1d-r1
Alpine:v3.22 openssl 0 1.1.1d-r1
Alpine:v3.7 openssl 0 1.0.2t-r0
Alpine:v3.8 openssl 0 1.0.2t-r0
Alpine:v3.9 openssl 0 1.1.1d-r0
Debian:10 openssl 0 1.1.1d-0+deb10u1
Debian:11 openssl 0 1.1.1d-1
Debian:12 openssl 0 1.1.1d-1
Debian:13 openssl 0 1.1.1d-1
Debian:8 openssl 0 1.0.1t-1+deb8u12
Debian:9 openssl 0 1.1.0l-1~deb9u1
Debian:9 openssl1.0 0 1.0.2t-1~deb9u1
Mageia:7 compat-openssl10 0 1.0.2t-1.mga7
Mageia:7 openssl 0 1.1.0l-1.mga7
Red Hat:enterprise_linux:8::baseos openssl 0 1:1.1.1c-15.el8
Red Hat:enterprise_linux:8::baseos openssl-debuginfo 0 1:1.1.1c-15.el8
Red Hat:enterprise_linux:8::baseos openssl-debugsource 0 1:1.1.1c-15.el8
Red Hat:enterprise_linux:8::baseos openssl-devel 0 1:1.1.1c-15.el8
Red Hat:enterprise_linux:8::baseos openssl-libs 0 1:1.1.1c-15.el8
Red Hat:enterprise_linux:8::baseos openssl-libs-debuginfo 0 1:1.1.1c-15.el8
Red Hat:enterprise_linux:8::baseos openssl-perl 0 1:1.1.1c-15.el8
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-apr 0 0:1.6.3-86.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-apr-debuginfo 0 0:1.6.3-86.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-apr-devel 0 0:1.6.3-86.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-brotli 0 0:1.0.6-21.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-brotli-debuginfo 0 0:1.0.6-21.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-brotli-devel 0 0:1.0.6-21.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-httpd 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-httpd-debuginfo 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-httpd-devel 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-httpd-manual 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-httpd-selinux 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-httpd-tools 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_cluster-native 0 0:1.3.12-41.Final_redhat_2.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_cluster-native-debuginfo 0 0:1.3.12-41.Final_redhat_2.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_http2 0 0:1.11.3-22.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_http2-debuginfo 0 0:1.11.3-22.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_ldap 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_proxy_html 0 1:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_session 0 0:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-mod_ssl 0 1:2.4.37-52.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-openssl 0 1:1.1.1c-16.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-openssl-debuginfo 0 1:1.1.1c-16.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-openssl-devel 0 1:1.1.1c-16.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-openssl-libs 0 1:1.1.1c-16.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-openssl-perl 0 1:1.1.1c-16.jbcs.el6
Red Hat:jboss_core_services:1::el6 jbcs-httpd24-openssl-static 0 1:1.1.1c-16.jbcs.el6
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-apr 0 0:1.6.3-86.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-apr-debuginfo 0 0:1.6.3-86.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-apr-devel 0 0:1.6.3-86.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-brotli 0 0:1.0.6-21.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-brotli-debuginfo 0 0:1.0.6-21.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-brotli-devel 0 0:1.0.6-21.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-httpd 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-httpd-debuginfo 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-httpd-devel 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-httpd-manual 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-httpd-selinux 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-httpd-tools 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_cluster-native 0 0:1.3.12-41.Final_redhat_2.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_cluster-native-debuginfo 0 0:1.3.12-41.Final_redhat_2.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_http2 0 0:1.11.3-22.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_http2-debuginfo 0 0:1.11.3-22.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_ldap 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_proxy_html 0 1:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_session 0 0:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-mod_ssl 0 1:2.4.37-52.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-openssl 0 1:1.1.1c-16.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-openssl-debuginfo 0 1:1.1.1c-16.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-openssl-devel 0 1:1.1.1c-16.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-openssl-libs 0 1:1.1.1c-16.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-openssl-perl 0 1:1.1.1c-16.jbcs.el7
Red Hat:jboss_core_services:1::el7 jbcs-httpd24-openssl-static 0 1:1.1.1c-16.jbcs.el7
SUSE:Enterprise Storage 4 openssl 0 1.0.2j-60.55.1
SUSE:Enterprise Storage 5 openssl 0 1.0.2j-60.55.1
SUSE:Enterprise Storage 6 openssl-1_0_0 0 1.0.2p-3.22.1
SUSE:HPE Helion OpenStack 8 openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Desktop 12 SP4 compat-openssl098 0 0.9.8j-106.15.1
SUSE:Linux Enterprise Desktop 12 SP4 openssl-1_0_0 0 1.0.2p-3.11.1
SUSE:Linux Enterprise Desktop 12 SP4 openssl-1_1 0 1.1.1d-2.20.1
SUSE:Linux Enterprise Module for Basesystem 15 openssl-1_1 0 1.1.0i-4.24.1
SUSE:Linux Enterprise Module for Basesystem 15 SP1 openssl-1_1 0 1.1.0i-14.3.1
SUSE:Linux Enterprise Module for Legacy 12 compat-openssl098 0 0.9.8j-106.15.1
SUSE:Linux Enterprise Module for Legacy 15 openssl-1_0_0 0 1.0.2p-3.22.1
SUSE:Linux Enterprise Module for Legacy 15 SP1 openssl-1_0_0 0 1.0.2p-3.22.1
SUSE:Linux Enterprise Point of Sale 11 SP3 openssl 0 0.9.8j-0.106.25.1
SUSE:Linux Enterprise Server 11 SP4-LTSS openssl 0 0.9.8j-0.106.25.1
SUSE:Linux Enterprise Server 11-SECURITY openssl1 0 1.0.1g-0.58.21.1
SUSE:Linux Enterprise Server 12 SP1-LTSS openssl 0 1.0.1i-54.29.1
SUSE:Linux Enterprise Server 12 SP2-BCL openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Server 12 SP2-LTSS openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Server 12 SP3-BCL openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Server 12 SP3-LTSS openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Server 12 SP4 openssl-1_0_0 0 1.0.2p-3.11.1
SUSE:Linux Enterprise Server 12 SP4 openssl-1_1 0 1.1.1d-2.20.1
SUSE:Linux Enterprise Server 12 SP5 openssl-1_1 0 1.1.1d-2.20.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 compat-openssl098 0 0.9.8j-106.15.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 openssl 0 1.0.1i-54.29.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 compat-openssl098 0 0.9.8j-106.15.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP2 openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 compat-openssl098 0 0.9.8j-106.15.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP3 openssl 0 1.0.2j-60.55.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 compat-openssl098 0 0.9.8j-106.15.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 openssl-1_0_0 0 1.0.2p-3.11.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP4 openssl-1_1 0 1.1.1d-2.20.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP5 openssl-1_1 0 1.1.1d-2.20.1
SUSE:Linux Enterprise Software Development Kit 12 SP4 openssl-1_0_0 0 1.0.2p-3.11.1
SUSE:Linux Enterprise Software Development Kit 12 SP4 openssl-1_1 0 1.1.1d-2.20.1
SUSE:Linux Enterprise Software Development Kit 12 SP5 openssl-1_1 0 1.1.1d-2.20.1
SUSE:OpenStack Cloud 7 openssl 0 1.0.2j-60.55.1
SUSE:OpenStack Cloud 8 openssl 0 1.0.2j-60.55.1
SUSE:OpenStack Cloud Crowbar 8 openssl 0 1.0.2j-60.55.1
Ubuntu:14.04:LTS openssl 0 1.0.1f-1ubuntu2.27+esm1
Ubuntu:16.04:LTS openssl 0 1.0.2g-1ubuntu4.16
Ubuntu:16.04:LTS openssl 0 1.0.2g-1ubuntu4.17
Ubuntu:18.04:LTS openssl 0 1.1.1-1ubuntu2.1~18.04.6
Ubuntu:18.04:LTS openssl1.0 0 1.0.2n-1ubuntu5.4
Ubuntu:Pro:14.04:LTS openssl 0 1.0.1f-1ubuntu2.27+esm1
openSUSE:Leap 15.0 openssl-1_0_0 0 1.0.2p-lp150.2.19.1
openSUSE:Leap 15.0 openssl-1_1 0 1.1.0i-lp150.3.25.1
openSUSE:Leap 15.1 openssl-1_0_0 0 1.0.2p-lp151.5.10.1
openSUSE:Leap 15.1 openssl-1_1 0 1.1.0i-lp151.8.3.1
openSUSE:Tumbleweed openssl-1_0_0 0 1.0.2u-6.2
openSUSE:Tumbleweed openssl-1_1 0 1.1.1l-1.2

Related vulnerabilities