CVE-2024-23898
Cross-site WebSocket hijacking vulnerability in the Jenkins CLI
Description
Jenkins has a built-in command line interface (CLI) to access Jenkins from a script or shell environment. Since Jenkins 2.217 and LTS 2.222.1, one of the ways to communicate with the CLI is through a WebSocket endpoint. This endpoint relies on the default Jenkins web request authentication functionality, like HTTP Basic authentication with API tokens, or session cookies. This endpoint is enabled when running on a version of Jetty for which Jenkins supports WebSockets. This is the case when using the provided native installers, packages, or the Docker containers, as well as when running Jenkins with the command java -jar jenkins.war. Jenkins 2.217 through 2.441 (both inclusive), LTS 2.222.1 through 2.426.2 (both inclusive) does not perform origin validation of requests made through the CLI WebSocket endpoint, resulting in a cross-site WebSocket hijacking (CSWSH) vulnerability.
How to fix CVE-2024-23898
To remediate CVE-2024-23898, upgrade the affected package to a fixed version below.
- —upgrade to 2.452.1 or later
- —upgrade to 2.426.3 or later
Is CVE-2024-23898 being exploited?
Moderate — EPSS is 36.9%. Track this CVE but it's not at the top of the prioritisation list.
Affected packages (2)
- >= 2.217.0, < 2.452.1
- >= 2.217, < 2.426.3
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | HIGH8.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |