OpenSSL RNG Fork-Protection Flaw
CVE-2019-1549 is a fork-safety flaw in the rewritten random number generator introduced in OpenSSL 1.1.1, affecting versions 1.1.1 through 1.1.1c. Intended protection against parent and child processes sharing RNG state after fork() was not enabled by default. Consequently, forked processes could retain identical RNG state and potentially generate identical random values, compromising cryptographic randomness and exposing sensitive information. Mixing high-precision timer output into the RNG state substantially reduces, but does not eliminate, this risk. Applications explicitly initializing OpenSSL with OPENSSL_init_crypto() and OPENSSL_INIT_ATFORK are not affected. The flaw was fixed in OpenSSL 1.1.1d.
What it means and what to do now: patch path, interim mitigations, and the assume-compromise checklist.
What an attacker gets, and what they’ve been doing with it.
Parent and child processes may generate duplicate or insufficiently independent random values after fork(), potentially undermining cryptographic operations that depend on those values. This can expose sensitive information, including cryptographic secrets, depending on how the application uses the RNG and what an attacker can observe. High-precision timer input significantly reduces the likelihood of shared state; exploitation does not inherently provide code execution or service disruption.
If you can’t patch tonight, do this now.
Explicitly initialize OpenSSL using OPENSSL_init_crypto() with OPENSSL_INIT_ATFORK to enable the intended fork protection. High-precision timer output already mixed into the RNG state provides partial mitigation but should not replace enabling fork protection or applying the fix. Node.js is not affected because its forked processes subsequently call exec(), preventing retention of the duplicated PRNG state.
Patch, then assume compromise.
Upgrade to an OpenSSL release containing the fix, first introduced in 1.1.1d, or install the applicable vendor-backported security update. RHEL 8 received the fix in OpenSSL packages version 1.1.1c-15.el8 through RHSA-2020:1840. Restart applications and services linked to the updated library, or reboot the system, so the patched library is loaded.
No public exploits tracked yet. Mallory keeps watching.
Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.
12 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.