CVE-2018-12384 in NSSinfo

Summary

by MITRE

When handling a SSLv2-compatible ClientHello request, the server doesn't generate a new random value but sends an all-zero value instead. This results in full malleability of the ClientHello for SSLv2 used for TLS 1.2 in all versions prior to NSS 3.39. This does not impact TLS 1.3.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Analysis

by VulDB Data Team • 06/04/2020

The vulnerability described in CVE-2018-12384 represents a critical cryptographic weakness in the Network Security Services (NSS) library that affects SSLv2 compatibility handling within TLS 1.2 implementations. This flaw specifically manifests when servers process SSLv2-compatible ClientHello messages, creating a predictable cryptographic context that undermines the security assurances typically provided by modern TLS protocols. The issue stems from the server's failure to generate proper random values during the handshake process, instead transmitting predetermined all-zero values that create exploitable patterns in the cryptographic handshake sequence.

The technical implementation flaw occurs at the SSLv2 compatibility layer where NSS processes ClientHello requests that attempt to negotiate TLS 1.2 connections but maintain SSLv2 formatting. When the server encounters such requests, it fails to properly randomize the handshake values, resulting in a deterministic cryptographic state that can be manipulated by attackers. This malleability affects the entire SSLv2 compatibility mechanism within TLS 1.2 implementations, allowing adversaries to modify the ClientHello message without detection while maintaining the connection's validity. The vulnerability operates at the cryptographic protocol level and directly impacts the integrity of the handshake process, creating opportunities for man-in-the-middle attacks and connection hijacking.

The operational impact of this vulnerability extends beyond simple protocol incompatibility, as it creates persistent security risks for any system running NSS versions prior to 3.39 that supports SSLv2 compatibility mode. Attackers can exploit this weakness to manipulate connection parameters, potentially redirecting traffic or injecting malicious data into sessions that appear legitimate to both parties. The vulnerability affects the fundamental security properties of TLS 1.2 connections when SSLv2 compatibility is enabled, undermining the confidentiality and integrity guarantees that users expect from secure communications. Organizations utilizing affected NSS versions face increased risk of session manipulation and potential data compromise, particularly in environments where legacy SSLv2 compatibility is maintained for backward compatibility reasons.

The mitigation strategy for this vulnerability requires immediate upgrade to NSS version 3.39 or later, which includes proper random value generation during SSLv2 compatibility handling. System administrators should also disable SSLv2 compatibility mode on servers where it is not strictly required, as this eliminates the attack surface entirely. Security monitoring should focus on detecting unusual ClientHello patterns that might indicate exploitation attempts, while network segmentation and additional authentication layers can provide defense-in-depth. This vulnerability aligns with CWE-330 weakness category related to insufficient entropy in cryptographic operations and maps to ATT&CK technique T1071.004 for application layer protocol tunneling. Organizations should conduct comprehensive vulnerability assessments to identify all systems running affected NSS versions and implement proper patch management procedures to prevent exploitation of this cryptographic malleability issue.

Reservation

06/14/2018

Moderation

accepted

CPE

ready

EPSS

0.00622

KEV

no

Activities

very low

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!