Cloudanix VulnDB

CVE-2016-0702

Medium · 5.1

CVSS

5.1

EPSS

1.9%

Published

Mar 3, 2016

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

Older encryption software on certain computers could allow someone already on the machine to steal secret keys that protect sensitive data and connections.

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

What it actually does

The MOD_EXP_CTIME_COPY_FROM_PREBUF function in OpenSSL fails to account for cache-bank access timing variations during modular exponentiation on Intel Sandy Bridge CPUs, enabling local observation of RSA private key operations via cache-bank conflicts.

Why it matters to the business

Organizations using affected Node.js versions on older hardware risk exposure of cryptographic keys to local attackers, which could undermine encrypted communications, authentication, and data protection controls; the issue is dated with low current exploitation probability.

How an attack unfolds

An attacker with local system access launches a crafted process on the same CPU core as a victim application performing RSA operations with vulnerable OpenSSL, measures cache-bank timing side effects during exponentiation, and reconstructs the private key from the leaked information.

How to fix it

Upgrade OpenSSL to 1.0.1s, 1.0.2g or later. For Node.js, apply the fix present in commit 805f054cc7791c447dbb960fbf3b179ea05294ac and rebuild affected applications.

How to confirm the fix worked

Confirm OpenSSL versions meet or exceed 1.0.1s/1.0.2g; verify Node.js builds incorporate the referenced commit; test RSA operations under cache-timing conditions to ensure no leakage.

Typical attack path

  1. Obtain local access to a target system running vulnerable OpenSSL
  2. Identify processes performing RSA operations with the affected library
  3. Execute a malicious application pinned to the same CPU core
  4. Collect cache-bank access timing measurements during key operations
  5. Process collected data to recover RSA private key material

How to detect it

Examine system and process logs for unusual local applications running concurrently with RSA-using services on the same CPU core; review audit trails for unexpected cache or timing measurement activity, though traces are minimal for this side-channel technique.

What your security team should do

  • Prioritize patching Node.js and OpenSSL on systems using RSA with affected versions
  • Enforce CPU core isolation or process scheduling policies where feasible
  • Audit local access controls and remove unnecessary user privileges
  • Review cryptographic key rotation policies for impacted systems

The record

The MOD_EXP_CTIME_COPY_FROM_PREBUF function in crypto/bn/bn_exp.c in OpenSSL 1.0.1 before 1.0.1s and 1.0.2 before 1.0.2g does not properly consider cache-bank access times during modular exponentiation, which makes it easier for local users to discover RSA keys by running a crafted application on the same Intel Sandy Bridge CPU core as a victim and leveraging cache-bank conflicts, aka a "CacheBleed" attack.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 openssl 0 1.0.2g-1
Debian:12 openssl 0 1.0.2g-1
Debian:13 openssl 0 1.0.2g-1
Debian:7 openssl 0 1.0.1e-2+deb7u20
Debian:8 openssl 0 1.0.1k-3+deb8u4
Mageia:5 openssl 0 1.0.2g-1.1.mga5
Red Hat:enterprise_linux:6::client openssl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::client openssl-debuginfo 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::client openssl-devel 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::client openssl-perl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::client openssl-static 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::computenode openssl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::computenode openssl-debuginfo 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::computenode openssl-devel 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::computenode openssl-perl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::computenode openssl-static 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::hypervisor rhev-hypervisor7 0 0:7.2-20160302.1.el6ev
Red Hat:enterprise_linux:6::server openssl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::server openssl-debuginfo 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::server openssl-devel 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::server openssl-perl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::server openssl-static 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::workstation openssl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::workstation openssl-debuginfo 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::workstation openssl-devel 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::workstation openssl-perl 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:6::workstation openssl-static 0 0:1.0.1e-42.el6_7.4
Red Hat:enterprise_linux:7::client openssl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::client openssl-debuginfo 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::client openssl-devel 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::client openssl-libs 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::client openssl-perl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::client openssl-static 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::computenode openssl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::computenode openssl-debuginfo 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::computenode openssl-devel 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::computenode openssl-libs 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::computenode openssl-perl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::computenode openssl-static 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::hypervisor rhev-hypervisor7 0 0:7.2-20160302.1.el7ev
Red Hat:enterprise_linux:7::server openssl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::server openssl-debuginfo 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::server openssl-devel 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::server openssl-libs 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::server openssl-perl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::server openssl-static 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::workstation openssl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::workstation openssl-debuginfo 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::workstation openssl-devel 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::workstation openssl-libs 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::workstation openssl-perl 0 1:1.0.1e-51.el7_2.4
Red Hat:enterprise_linux:7::workstation openssl-static 0 1:1.0.1e-51.el7_2.4
SUSE:Linux Enterprise Desktop 11 SP4 compat-openssl097g 0 0.9.7g-146.22.41.1
SUSE:Linux Enterprise Desktop 11 SP4 openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Desktop 12 compat-openssl098 0 0.9.8j-94.1
SUSE:Linux Enterprise Desktop 12 compat-openssl098 0 0.9.8j-97.1
SUSE:Linux Enterprise Desktop 12 openssl 0 1.0.1i-27.13.1
SUSE:Linux Enterprise Desktop 12 SP1 compat-openssl098 0 0.9.8j-94.1
SUSE:Linux Enterprise Desktop 12 SP1 compat-openssl098 0 0.9.8j-97.1
SUSE:Linux Enterprise Desktop 12 SP1 openssl 0 1.0.1i-44.1
SUSE:Linux Enterprise Module for Legacy 12 compat-openssl098 0 0.9.8j-94.1
SUSE:Linux Enterprise Module for Legacy 12 compat-openssl098 0 0.9.8j-97.1
SUSE:Linux Enterprise Server 11 SP2-LTSS openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Server 11 SP2-LTSS openssl 0 0.9.8j-0.97.1
SUSE:Linux Enterprise Server 11 SP3-LTSS openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Server 11 SP3-LTSS openssl 0 0.9.8j-0.97.1
SUSE:Linux Enterprise Server 11 SP3-TERADATA openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Server 11 SP3-TERADATA openssl 0 0.9.8j-0.97.1
SUSE:Linux Enterprise Server 11 SP4 openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Server 11 SP4 openssl 0 0.9.8j-0.97.1
SUSE:Linux Enterprise Server 11-SECURITY openssl1 0 1.0.1g-0.40.1
SUSE:Linux Enterprise Server 12 openssl 0 1.0.1i-27.13.1
SUSE:Linux Enterprise Server 12 SP1 openssl 0 1.0.1i-44.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 compat-openssl097g 0 0.9.7g-146.22.41.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Server for SAP Applications 11 SP4 openssl 0 0.9.8j-0.97.1
SUSE:Linux Enterprise Server for SAP Applications 12 openssl 0 1.0.1i-27.13.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 compat-openssl098 0 0.9.8j-94.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 compat-openssl098 0 0.9.8j-97.1
SUSE:Linux Enterprise Server for SAP Applications 12 SP1 openssl 0 1.0.1i-44.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 openssl 0 0.9.8j-0.89.1
SUSE:Linux Enterprise Software Development Kit 11 SP4 openssl 0 0.9.8j-0.97.1
SUSE:Linux Enterprise Software Development Kit 12 openssl 0 1.0.1i-27.13.1
SUSE:Linux Enterprise Software Development Kit 12 SP1 openssl 0 1.0.1i-44.1
SUSE:Manager 2.1 openssl 0 0.9.8j-0.91.1
SUSE:Manager 2.1 openssl 0 0.9.8j-0.97.1
SUSE:Manager Proxy 2.1 openssl 0 0.9.8j-0.91.1
SUSE:Manager Proxy 2.1 openssl 0 0.9.8j-0.97.1
SUSE:OpenStack Cloud 5 openssl 0 0.9.8j-0.91.1
SUSE:OpenStack Cloud 5 openssl 0 0.9.8j-0.97.1
SUSE:Studio Onsite 1.3 openssl 0 0.9.8j-0.89.1
SUSE:Studio Onsite 1.3 openssl 0 0.9.8j-0.97.1
Ubuntu:14.04:LTS openssl 0 1.0.1f-1ubuntu2.18
Ubuntu:16.04:LTS openssl 0 1.0.2g-1ubuntu2
openSUSE:Tumbleweed libressl 0 2.5.0-1.1
openSUSE:Tumbleweed openssl-1_1 0 1.1.1l-1.2

Related vulnerabilities