OpenSSL Vulnerability: SSLv2 Version Rollback Attack in OpenSSL 1.0.2

openssl Updated 02 Oct 2025

Summary

16/02/2021
N/A
Yes i
Low
3.7

ALPINE-CVE-2021-23839: OpenSSL 1.0.2 supports SSLv2. Affects openssl versions < 1.1.1j-r0. Fixed in 1.1.1j-r0. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

OpenSSL is a widely-used open-source software library that provides robust cryptographic functions and protocols for secure communication over networks. It supports various encryption algorithms and is integral to the implementation of SSL and TLS protocols. However, certain versions of OpenSSL, particularly 1.0.2, are vulnerable to a specific flaw that allows for SSLv2 version rollback attacks, compromising the security of connections.

Vulnerability Detail

The vulnerability arises from an incorrect implementation of the RSA_padding_check_SSLv23() function in OpenSSL 1.0.2, which supports SSLv2. When a client attempts to negotiate SSLv2 with a server that supports newer SSL/TLS versions, the server erroneously accepts connections if a specific padding is present, indicating a version rollback attack. This flaw can lead to unauthorized access and potential data exposure, as it allows attackers to exploit the connection by forcing a downgrade to a less secure protocol.

How To Fix

Minimum fixed version

1.1.1j-r0

This is the first release that contains the fix.

sudo apk add --upgrade openssl

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

As a workaround, ensure that SSLv2 support is disabled in your OpenSSL configuration. This can be done by modifying the OpenSSL configuration file to exclude SSLv2 ciphers and protocols, thereby preventing any potential exploitation of this vulnerability.

Conclusion

The vulnerability in OpenSSL 1.0.2 related to SSLv2 version rollback attacks poses a significant risk to secure communications. Users are strongly advised to upgrade to a patched version to ensure the integrity and security of their systems. Additionally, disabling SSLv2 support can serve as an immediate mitigation strategy.

See every vulnerability recorded for openssl →

Share this vulnerability

FAQ

Only OpenSSL 1.0.2 servers from version 1.0.2s to 1.0.2x are affected. Versions 1.1.1 and later do not support SSLv2 and are not vulnerable.

A version rollback attack occurs when a client and server negotiate a connection using an older, less secure protocol version, allowing attackers to exploit vulnerabilities in that version.

You can use Vulert, which monitors and alerts for open-source vulnerabilities in your software. Visit Vulert Scanner to check if your application is affected without needing to sign up.

If an immediate upgrade is not possible, ensure that SSLv2 support is disabled in your configuration to mitigate the risk of exploitation.

The CVSS score for this vulnerability is 3.7, indicating a moderate level of severity.

Related vulnerabilities

Recent vulnerabilities recorded for openssl.

How To Fix

Minimum fixed version

1.1.1j-r0

This is the first release that contains the fix.

sudo apk add --upgrade openssl

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback