Remote code execution in H2 database



Published: 2022-04-06
Risk High
Patch available YES
Number of vulnerabilities 1
CVE-ID CVE-2022-23221
CWE-ID CWE-502
Exploitation vector Network
Public exploit N/A
Vulnerable software
Subscribe
H2 Database
Server applications / Database software

Vendor H2 Database Engine

Security Bulletin

This security bulletin contains one high risk vulnerability.

1) Deserialization of Untrusted Data

EUVDB-ID: #VU61938

Risk: High

CVSSv3.1: 8.5 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2022-23221

CWE-ID: CWE-502 - Deserialization of Untrusted Data

Exploit availability: No

Description

The vulnerability allows a remote attacker to execute arbitrary code on the target system.

The vulnerability exists due to insecure input validation when processing serialized data within jdbc:h2:mem. A remote attacker can pass specially crafted JDBC URL containing the IGNORE_UNKNOWN_SETTINGS=TRUE;FORBID_CREATION=FALSE;INIT=RUNSCRIPT substring to the application and execute arbitrary code on the target system.

Successful exploitation of this vulnerability may result in complete compromise of vulnerable system.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

H2 Database: 1.0 - 2.0.206

External links

http://github.com/h2database/h2database/security/advisories
http://github.com/h2database/h2database/releases/tag/version-2.1.210
http://twitter.com/d0nkey_man/status/1483824727936450564
http://seclists.org/fulldisclosure/2022/Jan/39


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

How the attacker can exploit this vulnerability?

The attacker would have to send a specially crafted request to the affected application in order to exploit this vulnerability.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.



###SIDEBAR###