Every CVE Search/ Get API key

CVE-2024-43044

Jenkins Remoting library arbitrary file read vulnerability

8.8 HighPublic exploitFix available

Jenkins 2.470 and earlier, LTS 2.452.3 and earlier allows agent processes to read arbitrary files from the Jenkins controller file system by using the ClassLoaderProxy#fetchJar method in the Remoting library.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

28.8%Up 28.7 points since Aug 13, 2024
90%50%10%1%

What each source reports

NVD Score used 8.8

Jenkins 2.470 and earlier, LTS 2.452.3 and earlier allows agent processes to read arbitrary files from the Jenkins controller file system by using the ClassLoaderProxy#fetchJar method in the Remoting library.

Record
CVE-2024-43044
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-754
Updated
2026-11-02
CVE List 8.8

Jenkins 2.470 and earlier, LTS 2.452.3 and earlier allows agent processes to read arbitrary files from the Jenkins controller file system by using the ClassLoaderProxy#fetchJar method in the Remoting library.

Record
CVE-2024-43044
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-754
Updated
2026-11-02
EUVDEUVD-2024-2593 8.8

Jenkins 2.470 and earlier, LTS 2.452.3 and earlier allows agent processes to read arbitrary files from the Jenkins controller file system by using the ClassLoaderProxy#fetchJar method in the Remoting library.

Record
EUVD-2024-2593
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
GitHub AdvisoriesGHSA-h856-ffvv-xvr4 7.1

Jenkins Remoting library arbitrary file read vulnerability

Jenkins uses the Remoting library (typically agent.jar or remoting.jar) for the communication between controller and agents. This library allows agents to load classes and classloader resources from the controller, so that Java objects sent from the controller (build steps, etc.) can be executed on agents.

In addition to individual class and resource files, Remoting also allows Jenkins plugins to transmit entire jar files to agents using the Channel#preloadJar API. As of publication of this advisory, this feature is used by the following plugins distributed by the Jenkins project: bouncycastle API, Groovy, Ivy, TeamConcert

In Remoting 3256.v88a_f6e922152 and earlier, except 3206.3208.v409508a_675ff and 3248.3250.v3277a_8e88c9b_, included in Jenkins 2.470 and earlier, LTS 2.452.3 and earlier, calls to Channel#preloadJar result in the retrieval of files from the controller by the agent using ClassLoaderProxy#fetchJar. Additionally, the implementation of ClassLoaderProxy#fetchJar invoked on the controller does not restrict paths that agents could request to read from the controller file system.

This allows agent processes, code running on agents, and attackers with Agent/Connect permission to read arbitrary files from the Jenkins controller file system.

The Remoting library in Jenkins 2.471, LTS 2.452.4, LTS 2.462.1 now sends jar file contents with Channel#preloadJar requests, the only use case of ClassLoaderProxy#fetchJar in agents, so that agents do not need to request jar file contents from controllers anymore.

To retain compatibility with older versions of Remoting in combination with the plugins listed above, ClassLoaderProxy#fetchJar is retained and otherwise unused, just deprecated. Its implementation in Jenkins 2.471, LTS 2.452.4, LTS 2.462.1 was changed so that it is now limited to retrieving jar files referenced in the core classloader or any plugin classloader.

Record
GHSA-h856-ffvv-xvr4
CVSS 4.0
7.1 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H
CVSS 3.1
9.0 CriticalCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
Weakness
CWE-22, CWE-754
Updated
2026-11-02
OSV 8.8

Jenkins 2.470 and earlier, LTS 2.452.3 and earlier allows agent processes to read arbitrary files from the Jenkins controller file system by using the ClassLoaderProxy#fetchJar method in the Remoting library.

Record
CVE-2024-43044
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVGHSA-h856-ffvv-xvr4 7.1

Jenkins Remoting library arbitrary file read vulnerability

Jenkins uses the Remoting library (typically agent.jar or remoting.jar) for the communication between controller and agents. This library allows agents to load classes and classloader resources from the controller, so that Java objects sent from the controller (build steps, etc.) can be executed on agents.

In addition to individual class and resource files, Remoting also allows Jenkins plugins to transmit entire jar files to agents using the Channel#preloadJar API. As of publication of this advisory, this feature is used by the following plugins distributed by the Jenkins project: bouncycastle API, Groovy, Ivy, TeamConcert

In Remoting 3256.v88a_f6e922152 and earlier, except 3206.3208.v409508a_675ff and 3248.3250.v3277a_8e88c9b_, included in Jenkins 2.470 and earlier, LTS 2.452.3 and earlier, calls to Channel#preloadJar result in the retrieval of files from the controller by the agent using ClassLoaderProxy#fetchJar. Additionally, the implementation of ClassLoaderProxy#fetchJar invoked on the controller does not restrict paths that agents could request to read from the controller file system.

This allows agent processes, code running on agents, and attackers with Agent/Connect permission to read arbitrary files from the Jenkins controller file system.

The Remoting library in Jenkins 2.471, LTS 2.452.4, LTS 2.462.1 now sends jar file contents with Channel#preloadJar requests, the only use case of ClassLoaderProxy#fetchJar in agents, so that agents do not need to request jar file contents from controllers anymore.

To retain compatibility with older versions of Remoting in combination with the plugins listed above, ClassLoaderProxy#fetchJar is retained and otherwise unused, just deprecated. Its implementation in Jenkins 2.471, LTS 2.452.4, LTS 2.462.1 was changed so that it is now limited to retrieving jar files referenced in the core classloader or any plugin classloader.

Record
GHSA-h856-ffvv-xvr4
CVSS 4.0
7.1 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:H
CVSS 3.1
9.0 CriticalCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
Weakness
CWE-22, CWE-754
Updated
2026-11-02
Show 5 moreShow less
OSVRHSA-2024:5405 8.8

Red Hat Security Advisory: Red Hat Product OCP Tools 4.15 OpenShift Jenkins security update

Record
RHSA-2024:5405
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2024:5406 8.8

Red Hat Security Advisory: Red Hat Product OCP Tools 4.13 OpenShift Jenkins security update

Record
RHSA-2024:5406
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2024:5410 8.8

Red Hat Security Advisory: Red Hat Product OCP Tools 4.12 OpenShift Jenkins security update

Record
RHSA-2024:5410
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVRHSA-2024:5411 8.8

Red Hat Security Advisory: Red Hat Product OCP Tools 4.14 OpenShift Jenkins security update

Record
RHSA-2024:5411
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVBIT-jenkins-2024-43044 No score

Jenkins LTS 2.452.3 and earlier allows agent processes to read arbitrary files from the Jenkins controller file system by using the ClassLoaderProxy#fetchJar method in the Remoting library.

Record
BIT-jenkins-2024-43044
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
org.jenkins-ci.main:remoting
Maven
before 3206.3208
3206.3208
org.jenkins-ci.main:remoting
Maven
3248 up to 3248.3250
3248.3250
org.jenkins-ci.main:remoting
Maven
3256 up to 3256.3258
3256.3258
org.jenkins-ci.main:jenkins-core
Maven
before 2.452.4
2.452.4
org.jenkins-ci.main:jenkins-core
Maven
2.460 up to 2.462.1
2.462.1
org.jenkins-ci.main:jenkins-core
Maven
2.470 up to 2.471
2.471
jenkins
Bitnami
before 2.462.1, 2.463.0 up to 2.479.1
2.462.12.479.1
org.jenkins-ci.main:remoting
Maven
before 3206.3208, plus listed versions
1.3961.3971.3981.3991.400
Show 45 moreShow less
1.4011.4031.4041.4051.4061.4071.4081.4091.409.11.409.21.409.31.4101.4111.4121.4131.4141.4151.4161.4171.4181.4191.4201.4212.02.12.102.112.122.132.142.152.162.172.182.192.22.202.212.222.232.23.JENKINS-8856-diag2.242.252.262.27
3206.3208
org.jenkins-ci.main:remoting
Maven
3248 up to 3248.3250, plus listed versions
3248.v65ecb_254c298
3248.3250
org.jenkins-ci.main:remoting
Maven
3256 up to 3256.3258, plus listed versions
3256.v88a_f6e922152
3256.3258
Show 10 moreShow less
Affected packages
PackageAffectedFixed
org.jenkins-ci.main:jenkins-core
Maven
before 2.452.4, plus listed versions
1.3961.3971.3981.3991.400
Show 45 moreShow less
1.4011.4031.4041.4051.4061.4071.4081.4091.409.11.409.21.409.31.4101.4111.4121.4131.4141.4151.4161.4171.4181.4191.4201.4211.4221.4231.4241.424.11.424.21.424.31.424.41.424.51.424.61.4251.4261.4271.4281.4291.4301.4311.4321.4331.4341.4351.4361.437
2.452.4
org.jenkins-ci.main:jenkins-core
Maven
2.460 up to 2.462.1, plus listed versions
2.4612.462
2.462.1
jenkins
Red Hat:ocp_tools:4.15::el8
before 0:2.462.1.1723440104-3.el8
0:2.462.1.1723440104-3.el8
jenkins-2-plugins
Red Hat:ocp_tools:4.15::el8
before 0:4.15.1723440333-1.el8
0:4.15.1723440333-1.el8
jenkins
Red Hat:ocp_tools:4.13::el8
before 0:2.462.1.1723445923-3.el8
0:2.462.1.1723445923-3.el8
jenkins-2-plugins
Red Hat:ocp_tools:4.13::el8
before 0:4.13.1723446018-1.el8
0:4.13.1723446018-1.el8
jenkins
Red Hat:ocp_tools:4.12::el8
before 0:2.462.1.1723550696-3.el8
0:2.462.1.1723550696-3.el8
jenkins-2-plugins
Red Hat:ocp_tools:4.12::el8
before 0:4.12.1723550778-1.el8
0:4.12.1723550778-1.el8
jenkins
Red Hat:ocp_tools:4.14::el8
before 0:2.462.1.1723225151-3.el8
0:2.462.1.1723225151-3.el8
jenkins-2-plugins
Red Hat:ocp_tools:4.14::el8
before 0:4.14.1723225212-1.el8
0:4.14.1723225212-1.el8

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHubDACC4/CVE-2024-43044-jenkins-creds2025-01-12
PoC in GitHubHwMex0/CVE-2024-430442024-08-08
PoC in GitHubconvisolabs/CVE-2024-43044-jenkins2024-08-23
PoC in GitHubjenkinsci-cert/SECURITY-34302024-08-08
PoC in GitHubv9d0g/CVE-2024-43044-POC2024-08-13

History

History
RecordedChangedSources
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2024-43044 is a high vulnerability (CVSS 8.8) in Jenkins, published August 7, 2024. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 28.8%, the 98th percentile. Fixed in org.jenkins-ci.main:remoting 3206.3208.

References

Show 65 moreShow less
This page doesn't list everything

Left out here: 998 versions. The JSON record has them.

MoveEnter Open