ubuntu-cve-2025-46551
Vulnerability from osv_ubuntu
JRuby-OpenSSL is an add-on gem for JRuby that emulates the Ruby OpenSSL native library. Starting in JRuby-OpenSSL version 0.12.1 and prior to version 0.15.4 (corresponding to JRuby versions starting in 9.3.4.0 prior to 9.4.12.1 and 10.0.0.0 prior to 10.0.0.1), when verifying SSL certificates, JRuby-OpenSSL does not verify that the hostname presented in the certificate matches the one the user tries to connect to. This means a man-in-the-middle could just present any valid cert for a completely different domain they own, and JRuby would accept the cert. Anybody using JRuby to make requests of external APIs, or scraping the web, that depends on https to connect securely. JRuby-OpenSSL version 0.15.4 contains a fix for the issue. This fix is included in JRuby versions 10.0.0.1 and 9.4.12.1.
{
"affected": [
{
"ecosystem_specific": {
"binaries": [
{
"binary_name": "jruby-openssl",
"binary_version": "0.9.11-2"
}
]
},
"package": {
"ecosystem": "Ubuntu:16.04:LTS",
"name": "jruby-openssl",
"purl": "pkg:deb/ubuntu/jruby-openssl@0.9.11-2?arch=source\u0026distro=xenial"
},
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.9.7-2",
"0.9.11-1",
"0.9.11-2"
]
},
{
"ecosystem_specific": {
"binaries": [
{
"binary_name": "jruby-openssl",
"binary_version": "0.9.21-2~18.04"
}
]
},
"package": {
"ecosystem": "Ubuntu:18.04:LTS",
"name": "jruby-openssl",
"purl": "pkg:deb/ubuntu/jruby-openssl@0.9.21-2~18.04?arch=source\u0026distro=bionic"
},
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.9.20-1",
"0.9.21-1",
"0.9.21-2~18.04"
]
},
{
"ecosystem_specific": {
"binaries": [
{
"binary_name": "jruby-openssl",
"binary_version": "0.9.21-3"
}
]
},
"package": {
"ecosystem": "Ubuntu:20.04:LTS",
"name": "jruby-openssl",
"purl": "pkg:deb/ubuntu/jruby-openssl@0.9.21-3?arch=source\u0026distro=focal"
},
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.9.21-2",
"0.9.21-3"
]
},
{
"ecosystem_specific": {
"binaries": [
{
"binary_name": "jruby-openssl",
"binary_version": "0.9.21-3"
}
]
},
"package": {
"ecosystem": "Ubuntu:22.04:LTS",
"name": "jruby-openssl",
"purl": "pkg:deb/ubuntu/jruby-openssl@0.9.21-3?arch=source\u0026distro=jammy"
},
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.9.21-3"
]
}
],
"aliases": [],
"details": "JRuby-OpenSSL is an add-on gem for JRuby that emulates the Ruby OpenSSL native library. Starting in JRuby-OpenSSL version 0.12.1 and prior to version 0.15.4 (corresponding to JRuby versions starting in 9.3.4.0 prior to 9.4.12.1 and 10.0.0.0 prior to 10.0.0.1), when verifying SSL certificates, JRuby-OpenSSL does not verify that the hostname presented in the certificate matches the one the user tries to connect to. This means a man-in-the-middle could just present any valid cert for a completely different domain they own, and JRuby would accept the cert. Anybody using JRuby to make requests of external APIs, or scraping the web, that depends on https to connect securely. JRuby-OpenSSL version 0.15.4 contains a fix for the issue. This fix is included in JRuby versions 10.0.0.1 and 9.4.12.1.",
"id": "UBUNTU-CVE-2025-46551",
"modified": "2025-10-24T05:23:32Z",
"published": "2025-05-07T17:15:00Z",
"references": [
{
"type": "REPORT",
"url": "https://ubuntu.com/security/CVE-2025-46551"
},
{
"type": "REPORT",
"url": "https://www.cve.org/CVERecord?id=CVE-2025-46551"
},
{
"type": "REPORT",
"url": "https://github.com/jruby/jruby-openssl/commit/31a56d690ce9b8af47af09aaaf809081949ed285"
},
{
"type": "REPORT",
"url": "https://github.com/jruby/jruby-openssl/security/advisories/GHSA-72qj-48g4-5xgx"
}
],
"related": [],
"schema_version": "1.7.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:P",
"type": "CVSS_V4"
},
{
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N",
"type": "CVSS_V3"
},
{
"score": "medium",
"type": "Ubuntu"
}
],
"upstream": [
"CVE-2025-46551"
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.