CVE-2020-12399
Medium · 4.4CVSS
4.4
EPSS
0.7%
Published
Jul 9, 2020
CISA due date
—
Cloudanix analysis
A timing flaw in security software could let someone nearby steal secret keys used to protect communications and data.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- High
- Impact
- Data Exposure
- Component
- Library
- Class
- Information Disclosure
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Timing side-channel in DSA signature generation within NSS allows measurable differences that can leak private key material over repeated observations.
Why it matters to the business
Attackers with local access could recover cryptographic private keys, undermining the confidentiality of signed communications, certificates, or encrypted sessions across affected browsers and email clients.
How an attack unfolds
An attacker with local access to a system running vulnerable NSS triggers repeated DSA signature operations, measures subtle timing variations, and applies statistical analysis to reconstruct the private key bits.
How to fix it
Upgrade affected NSS consumers to Thunderbird 68.9.0 or later, Firefox 77 or later, and Firefox ESR 68.9 or later. For listed OpenEXR packages apply the referenced commits or Debian packages 2.5.4-1 and later.
How to confirm the fix worked
Confirm NSS version meets or exceeds the fixed releases; re-run any available cryptographic timing test suites or verify absence of the original timing delta in signature benchmarks.
Typical attack path
- Obtain local or user-level access on target system
- Trigger DSA signature operations via application or library calls
- Collect high-resolution timing measurements across many signatures
- Perform offline analysis to extract private key material
How to detect it
Review application logs for unusual volumes of DSA signature operations; inspect process execution patterns involving libnss or Firefox/Thunderbird binaries around the time of suspected local access.
What your security team should do
- Prioritize patching all Firefox, Thunderbird, and NSS-dependent systems within standard patch windows
- Audit cryptographic key material that may have been exposed on systems running vulnerable versions
- Monitor for future side-channel disclosures in cryptographic libraries
The record
NSS has shown timing differences when performing DSA signatures, which was exploitable and could eventually leak private keys. This vulnerability affects Thunderbird < 68.9.0, Firefox < 77, and Firefox ESR < 68.9.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | firefox-esr | 0 | 68.9.0esr-1~deb10u1 |
| Debian:10 | nss | 0 | 2:3.42.1-1+deb10u3 |
| Debian:10 | thunderbird | 0 | 1:68.9.0-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 68.9.0esr-1 |
| Debian:11 | nss | 0 | 2:3.53-1 |
| Debian:11 | thunderbird | 0 | 1:68.9.0-1 |
| Debian:12 | firefox-esr | 0 | 68.9.0esr-1 |
| Debian:12 | nss | 0 | 2:3.53-1 |
| Debian:12 | thunderbird | 0 | 1:68.9.0-1 |
| Debian:13 | firefox-esr | 0 | 68.9.0esr-1 |
| Debian:13 | nss | 0 | 2:3.53-1 |
| Debian:13 | thunderbird | 0 | 1:68.9.0-1 |
| Debian:8 | firefox-esr | 0 | 68.9.0esr-1~deb8u2 |
| Debian:8 | nss | 0 | 2:3.26-1+debu8u11 |
| Debian:8 | thunderbird | 0 | 1:68.9.0-1~deb8u2 |
| Debian:9 | firefox-esr | 0 | 68.9.0esr-1~deb9u1 |
| Debian:9 | nss | 0 | 2:3.26.2-1.1+deb9u2 |
| Debian:9 | thunderbird | 0 | 1:68.9.0-1~deb9u1 |
| Red Hat:enterprise_linux:8::appstream | nspr | 0 | 0:4.25.0-2.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nspr-debuginfo | 0 | 0:4.25.0-2.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nspr-debugsource | 0 | 0:4.25.0-2.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nspr-devel | 0 | 0:4.25.0-2.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-debuginfo | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-debugsource | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-devel | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-softokn | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-softokn-debuginfo | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-softokn-devel | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-softokn-freebl | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-softokn-freebl-debuginfo | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-softokn-freebl-devel | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-sysinit | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-sysinit-debuginfo | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-tools | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-tools-debuginfo | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-util | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-util-debuginfo | 0 | 0:3.53.1-11.el8_2 |
| Red Hat:enterprise_linux:8::appstream | nss-util-devel | 0 | 0:3.53.1-11.el8_2 |
| Rocky Linux:8 | nspr | 0 | 0:4.25.0-2.el8_2 |
| SUSE:Enterprise Storage 5 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Enterprise Storage 5 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:HPE Helion OpenStack 8 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:HPE Helion OpenStack 8 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | mozilla-nspr | 0 | 4.25-3.12.1 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | mozilla-nspr | 0 | 4.25-3.12.1 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP1 | mozilla-nspr | 0 | 4.25-3.12.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP1 | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP2 | mozilla-nspr | 0 | 4.25-3.12.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP2 | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP1 | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Module for Server Applications 15 SP2 | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | mozilla-nspr | 0 | 4.25-29.12.2 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | mozilla-nss | 0 | 3.53.1-38.23.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server 12 SP2-LTSS | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server 12 SP2-LTSS | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server 12 SP5 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server 12 SP5 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server 15-LTSS | mozilla-nspr | 0 | 4.25-3.12.1 |
| SUSE:Linux Enterprise Server 15-LTSS | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | mozilla-nspr | 0 | 4.25-3.12.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | mozilla-nss | 0 | 3.53-3.40.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:OpenStack Cloud 7 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:OpenStack Cloud 7 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:OpenStack Cloud 8 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:OpenStack Cloud 8 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:OpenStack Cloud 9 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:OpenStack Cloud 9 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:OpenStack Cloud Crowbar 8 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:OpenStack Cloud Crowbar 8 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| SUSE:OpenStack Cloud Crowbar 9 | mozilla-nspr | 0 | 4.25-19.15.1 |
| SUSE:OpenStack Cloud Crowbar 9 | mozilla-nss | 0 | 3.53.1-58.48.1 |
| Ubuntu:14.04:LTS | nss | 0 | 2:3.28.4-0ubuntu0.14.04.5+esm5 |
| Ubuntu:16.04:LTS | firefox | 0 | 77.0.1+build1-0ubuntu0.16.04.1 |
| Ubuntu:16.04:LTS | nss | 0 | 2:3.28.4-0ubuntu0.16.04.11 |
| Ubuntu:16.04:LTS | thunderbird | 0 | 1:68.10.0+build1-0ubuntu0.16.04.1 |
| Ubuntu:18.04:LTS | firefox | 0 | 77.0.1+build1-0ubuntu0.18.04.1 |
| Ubuntu:18.04:LTS | nss | 0 | 2:3.35-2ubuntu2.8 |
| Ubuntu:18.04:LTS | thunderbird | 0 | 1:68.10.0+build1-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 77.0.1+build1-0ubuntu0.20.04.1 |
| Ubuntu:20.04:LTS | nss | 0 | 2:3.49.1-1ubuntu1.1 |
| Ubuntu:20.04:LTS | thunderbird | 0 | 1:68.10.0+build1-0ubuntu0.20.04.1 |
| Ubuntu:Pro:14.04:LTS | nss | 0 | 2:3.28.4-0ubuntu0.14.04.5+esm5 |
| openSUSE:Leap 15.1 | mozilla-nspr | 0 | 4.25-lp151.2.9.1 |
| openSUSE:Leap 15.1 | mozilla-nss | 0 | 3.53-lp151.2.23.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 92.0-1.2 |
| openSUSE:Tumbleweed | firefox-esr | 0 | 128.5.1-1.1 |
| openSUSE:Tumbleweed | mozilla-nss | 0 | 3.69.1-1.2 |
Related vulnerabilities
- CVE-2024-5696 By manipulating the text in an `input` tag, an attacker could have caused corrupt memory… Also affects firefox-esr
- CVE-2024-5700 Memory safety bugs present in Firefox 126, Firefox ESR 115.11, and Thunderbird 115.11. Also affects firefox-esr
- CVE-2024-5702 Memory corruption in the networking stack could have led to a potentially exploitable… Also affects firefox-esr
- CVE-2024-5693 Offscreen Canvas did not properly track cross-origin tainting, which could be used to… Also affects firefox-esr
- CVE-2024-5688 If a garbage collection was triggered at the right time, a use-after-free could have… Also affects firefox-esr
- CVE-2024-5691 By tricking the browser with a `X-Frame-Options` header, a sandboxed iframe could have… Also affects firefox-esr
- CVE-2024-5690 By monitoring the time certain operations take, an attacker could have guessed which… Also affects firefox-esr
- CVE-2024-4777 Memory safety bugs present in Firefox 125, Firefox ESR 115.10, and Thunderbird 115.10. Also affects firefox-esr