CVE-2024-45758 json
H2O.ai H2O vulnerable to deserialization attacks via a JDBC Connection URL
published 2024-09-06 2 y ago modified 2026-10-27 12 d ago also GHSA-hrmc-jmp7-mpm2 , PYSEC-2026-352 , EUVD-2024-41584
- cvss
- 9.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 60%
- public exploits
- 0
- none known
Summary
H2O.ai H2O through 3.46.0.4 allows attackers to arbitrarily set the JDBC URL, leading to deserialization attacks, file reads, and command execution. Exploitation can occur when an attacker has access to post to the ImportSQLTable URI with a JSON document containing a connection_url property with any typical JDBC Connection URL attack payload such as one that uses queryInterceptors.
Patch / fix
- github.com/h2oai/h2o-3@f714edd commit
- github.com/h2oai/h2o-3#16624 pull request
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- total
- Assessed
- 2 y ago
Exploit prediction
0.91% chance of exploitation in the next 30 days, higher than 60% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- spear-shield.notion.site https://spear-shield.notion.site/Unauthenticated-Remote-Code-Execution-via-Unrestricted-JDBC-Connection-87a958a4874044199cbb86422d1f6068 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| CNA | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| GitHub | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| OSV | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | ai.h2o:h2o-core | <=3.46.0.7 |
no fix listed |
| pypi | h2o | <=3.46.0.7 |
no fix listed |
Affected products
- h2oai h2o-3
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
References
-
github.com
/h2oai/h2o-3/pull/16624
web
-
github.com
/h2oai/h2o-3/commit/f714edd6b8429c7a7211b779b6ec108a95b7382d
web
-
spear-shield.notion.site
/Unauthenticated-Remote-Code-Execution-via-Unrestricted-JDBC-Connection-87a958a4874044199cbb86422d1f6068
web, exploit, third-party-advisory
-
gist.github.com
/AfterSnows/c24ca3c26dc89ab797e610e92a6a9acb
web, third-party-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2024-45758
advisory
-
github.com
/h2oai/h2o-3/issues/16425
web
-
github.com
/h2oai/h2o-3/issues/16622
web
-
github.com
/h2oai/h2o-3
package
-
github.com
/pypa/advisory-database/tree/main/vulns/h2o/PYSEC-2026-352.yaml
web
-
pypi.org
/project/h2o
web, package
-
github.com
/advisories/GHSA-hrmc-jmp7-mpm2
advisory
Sources
- CVE List CVE-2024-45758
- GitHub Advisory GHSA-hrmc-jmp7-mpm2
- NVD CVE-2024-45758
- OSV PYSEC-2026-352
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.