Publish GHSA-72qj-48g4-5xgx

This commit is contained in:
advisory-database[bot]
2025-05-07 17:34:34 +00:00
parent e989443760
commit e06915adee
@@ -0,0 +1,100 @@
{
"schema_version": "1.4.0",
"id": "GHSA-72qj-48g4-5xgx",
"modified": "2025-05-07T17:32:55Z",
"published": "2025-05-07T17:32:54Z",
"aliases": [
"CVE-2025-46551"
],
"summary": "JRuby-OpenSSL has hostname verification disabled by default",
"details": "### Summary\nWhen verifying SSL certificates, jruby-openssl is not verifying that the hostname presented in the certificate matches the one we are trying to connect to, meaning a MITM could just present _any_ valid cert for a completely different domain they own, and JRuby wouldn't complain. \n\n### Details\nn/a\n\n### PoC\nAn example domain bad.substitutealert.com was created to present the a certificate for the domain s8a.me. The following script run in IRB in CRuby 3.4.3 will fail with `certificate verify failed (hostname mismatch)`, but will work just fine in JRuby 10.0.0.0 and JRuby 9.4.2.0, both of which use jruby-openssl version 0.15.3\n\n```ruby\nrequire \"net/http\"\nrequire \"openssl\"\n\nuri = URI(\"https://bad.substitutealert.com/\")\nhttps = Net::HTTP.new(uri.host, uri.port)\nhttps.use_ssl = true\nhttps.verify_mode = OpenSSL::SSL::VERIFY_PEER\n\nbody = https.start { https.get(uri.request_uri).body }\nputs body\n```\n\n### Impact\nAnybody using JRuby to make requests of external APIs, or scraping the web, that depends on https to connect securely",
"severity": [
{
"type": "CVSS_V4",
"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"
}
],
"affected": [
{
"package": {
"ecosystem": "Maven",
"name": "rubygems:jruby-openssl"
},
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0.12.1"
},
{
"fixed": "0.15.4"
}
]
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "org.jruby:jruby"
},
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "10.0.0.0"
},
{
"fixed": "10.0.0.1"
}
]
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "org.jruby:jruby"
},
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "9.3.4.0"
},
{
"fixed": "9.4.12.1"
}
]
}
]
}
],
"references": [
{
"type": "WEB",
"url": "https://github.com/jruby/jruby-openssl/security/advisories/GHSA-72qj-48g4-5xgx"
},
{
"type": "WEB",
"url": "https://github.com/jruby/jruby-openssl/commit/b1fc5d645c0d90891b8865925ac1c15e3f15a055"
},
{
"type": "PACKAGE",
"url": "https://github.com/jruby/jruby-openssl"
}
],
"database_specific": {
"cwe_ids": [
"CWE-295",
"CWE-297"
],
"severity": "MODERATE",
"github_reviewed": true,
"github_reviewed_at": "2025-05-07T17:32:54Z",
"nvd_published_at": null
}
}