Keep Track of the Latest Vulnerabilities
with SecurityTracker!
    Home    |    View Topics    |    Search    |    Contact Us    |   


Sign Up
Sign Up for Your FREE Weekly SecurityTracker E-mail Alert Summary
Instant Alerts
Buy our Premium Vulnerability Notification Service to receive customized, instant alerts
Put SecurityTracker Vulnerability Alerts on Your Web Site -- It's Free!
Become a Partner and License Our Database or Notification Service
Report a Bug
Report a vulnerability that you have found to SecurityTracker

Category:   Application (Security)  >   OpenSSL Vendors:
(Conectiva Issues Fix) OpenSSL Timing Characteristics Let Remote Users Determine Private Keys in Certain Cases
SecurityTracker Alert ID:  1006543
SecurityTracker URL:
CVE Reference:   CAN-2003-0147   (Links to External Site)
Date:  Apr 10 2003
Impact:   Disclosure of authentication information
Fix Available:  Yes  Vendor Confirmed:  Yes  
Version(s): 0.9.7 and prior versions
Description:   A vulnerability was reported in OpenSSL (in the configuration used in many common applications, such as Apache SSL and mod_ssl). A remote user can conduct timing attacks to determine a network-based server's private key in certain situations where there is minimal network transmission time variance.

David Brumley and Dan Boneh submitted a paper entitled "Remote Timing Attacks are Practial" to USENIX. The paper describes a timing-based weakness in the OpenSSL library (and possibly other cryptographic implementations) that could allow a remote user to determine the private key of a network-based server application that uses the OpenSSL library. Attacks were successful when conducted over a local area network separated by an Ethernet switch, between two processes on the same host, and between two virtual machines (VMs) running on the same host. The report states that networks with less than 1 msec of transmission variance are vulnerable.

The authors note that OpenSSL implements a defense against timing-based attacks as an optional feature, but that some common applications that use OpenSSL, such as Apache SSL and mod_ssl, do not invoke the option. Therefore, the report indicates that those specific applications are vulnerable.

The paper indicates that libgcrypt (reportedly used in GNUTLS and GPG) and cryptlib do not implement protection against timing attacks, but that Mozilla's NSS crypto library does properly protect against timing attacks.

In some laboratory experiments, the authors were able to extract a 1024-bit RSA private key from an OpenSSL server (based on 0.9.7) using approximately one million queries over a period of approximately two hours.

The report says that the N factoring employed in RSA's modular exponentiation (m = c^d mod N, with N = pq) can be determined via a timing attack. Knowing the factorization of N, the decryption key "d" can be easily determined, according to the report. The demonstrated attack involves starting with a guessed value for ciphertext sent to the target server as an invalid client-key-exchange SSL message and then monitoring the time until the target server responds (which will include the time required to decrypt the guessed value). According to the report, the timing varies depending on the relationship between the guessed value and the factor 'q'. Observations about the measured timing can reportedly yield the value of 'q'.

The paper is available at:

Impact:   A remote user can conduct timing attacks to determine the target server's private key. [Specific conditions necessary for a successful attack are described in the Description section.]
Solution:   Conectiva has released a fix.

Vendor URL: (Links to External Site)
Cause:   Randomization error, State error
Underlying OS:   Linux (Conectiva)

Message History:   This archive entry is a follow-up to the message listed below.
Mar 14 2003 OpenSSL Timing Characteristics Let Remote Users Determine Private Keys in Certain Cases

 Source Message Contents

Date:  Thu, 10 Apr 2003 17:07:08 -0300
Subject:  [conectiva-updates] [CLA-2003:625] Conectiva Security Announcement - openssl

Hash: SHA1

- --------------------------------------------------------------------------
- --------------------------------------------------------------------------

PACKAGE   : openssl
SUMMARY   : OpenSSL library vulnerabilities
DATE      : 2003-04-10 17:06:00
ID        : CLA-2003:625
RELEASES  : 6.0, 7.0, 8

- -------------------------------------------------------------------------

 OpenSSL[1] implements the Secure Sockets Layer (SSL v2/v3) and
 Transport Layer Security (TLS v1) protocols as well as full-strength
 general purpose cryptography functions. It is used (as a library) by
 several projects, like Apache, OpenSSH, Bind, OpenLDAP and many
 others clients and servers programs.
 This OpenSSL update addresses the issues outlined below:
 1) Klima-Pokorny-Rosa attack (CAN-2003-0131)[2][3]
 Vlastimil Klima, Ondrej Pokorny and Tomas Rosa published[6] a paper
 where they present an extension to the Bleichenbacher attack 
 on RSA with PKCS #1 v1.5 padding as used in SSL 3.0 and TLS 1.0. This
 vulnerability would allow a remote attacker to perform a single RSA
 private key operation on a ciphertext of his/her choice using the
 server's RSA key after analysing the server's behaviour with a large
 number of specially crafted connections.
 2) Timing attack (CAN 2003-147)[4][5]
 D. Boneh and D. Brumley published[7] a paper in which they
 demonstrate that remote timing attacks are possible and practical
 against OpenSSL and derived libraries. They successfully extracted
 private keys from a webserver in a local network. In order to prevent
 such attacks, a technique known as RSA blinding has been turned on by
 default in OpenSSL.
 Additionally, some smaller fixes from newer versions of OpenSSL have
 been included in the packages provided via this update.

 It is recommended that all users upgrade their openssl packages.
 Please note that it is necessary to restart services which use the
 library (such as the apache web server with SSL enabled) so that the
 new, fixed, version is used. A list of such applications can be
 obtained after the upgrade with the following command:
 lsof | grep libssl
 The first column will contain the name of the application that needs
 to be restarted. If there is any doubt about which application has to
 be restarted or how to do it, we recommend that the system be


 The apt tool can be used to perform RPM packages upgrades:

 - run:                 apt-get update
 - after that, execute: apt-get upgrade

 Detailed instructions reagarding the use of apt and upgrade examples 
 can be found at

- -------------------------------------------------------------------------
All packages are signed with Conectiva's GPG key. The key and instructions
on how to import it can be found at
Instructions on how to check the signatures of the RPM packages can be
found at

- -------------------------------------------------------------------------
All our advisories and generic update instructions can be viewed at

- -------------------------------------------------------------------------
Copyright (c) 2003 Conectiva Inc.

- -------------------------------------------------------------------------
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see



Go to the Top of This SecurityTracker Archive Page

Home   |    View Topics   |    Search   |    Contact Us

Copyright 2014, LLC