NIST deprecates RSA-2048 from 2030. Find every one of them before attackers do.
☕
☕ Maven
Not in CISA KEV
MEDIUM severity

CVE-2023-27903 — jenkins-core

MEDIUMFix: jenkinsci/jenkins@554587b

CVE-2023-27903 is a medium-severity (CVSS 4.4) CWE-863 vulnerability in org.jenkins-ci.main:jenkins-core. A fix is available for org.jenkins-ci.main:jenkins-core — see the affected versions and patch details below.

Incorrect Authorization in Jenkins Core

Also known asBIT-jenkins-2023-27903GHSA-584m-7r4m-8j6v
Published
Updated
Affected
3 pkgs
Patched
3 / 3
Exploits
None indexed
Exploitation data as of Nov 10, 2026 · OSV.dev, NVD, FIRST.org (EPSS)

Exploitation Status

No confirmed exploitation observed yet

  • CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.

Exploitation and automatability from CISA’s SSVC triage for CVE-2023-27903.

EPSS Exploitation Probability

via FIRST.org ↗
0.2%probability of exploitation in next 30 days
Lower Risk0.00%
Lower risk than most CVEs16th percentile — riskier than 16% of all scored CVEsHighest risk
0.00%0.25%0.50%0.74%0.1%0.2%May 26Sep 26Nov 26

Probability of exploitation in the next 30 days, from FIRST.org EPSS.

How urgent is this, really

Where this sits among everything scored

Real-World Exposure

3 pkgs affected
☕org.jenkins-ci.main:jenkins-core☕org.jenkins-ci.main:jenkins-core☕org.jenkins-ci.main:jenkins-core

Real-time download stats are indexed for npm and PyPI packages. This vulnerability affects Maven packages — download data is not available via public APIs for these ecosystems.

Description

When triggering a build from the Jenkins CLI, Jenkins creates a temporary file on the controller if a file parameter is provided through the CLI’s standard input.

Jenkins 2.393 and earlier, LTS 2.375.3 and earlier, and , and LTS prior to 2.387.1 creates this temporary file in the default temporary directory with the default permissions for newly created files.

If these permissions are overly permissive, they may allow attackers with access to the Jenkins controller file system to read and write the file before it is used in the build.

This vulnerability only affects operating systems using a shared temporary directory for all users (typically Linux). Additionally, the default permissions for newly created files generally only allows attackers to read the temporary file. Jenkins 2.394, LTS 2.375.4, and LTS 2.387.1 creates the temporary file with more restrictive permissions.

As a workaround, you can set a different path as your default temporary directory using the Java system property java.io.tmpdir, if you’re concerned about this issue but unable to immediately update Jenkins.

Affected Packages

3 total 3 fixed
EcosystemPackageVulnerable rangeFix
☕Mavenorg.jenkins-ci.main:jenkins-core≥ 2.376&&< 2.387.12.387.1org.jenkins-ci.main:jenkins-core:2.387.1
☕Mavenorg.jenkins-ci.main:jenkins-coreall versions2.375.4org.jenkins-ci.main:jenkins-core:2.375.4
☕Mavenorg.jenkins-ci.main:jenkins-core≥ 2.388&&< 2.3942.394org.jenkins-ci.main:jenkins-core:2.394

Affected Products

1 product · 2 configurations
Application
jenkinsjenkins
< 2.394
range

Detection & mitigation playbook

Open-source dependency
  1. Detect

    Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for org.jenkins-ci.main:jenkins-core, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.

  2. Fix

    Update org.jenkins-ci.main:jenkins-core to 2.387.1 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2023-27903 is resolved across your whole dependency graph.

  3. Workarounds

    Put an independent control in front of the weakness: restrict the affected endpoint or interface to trusted networks, require an additional authentication factor or proxy-level check, and invalidate existing sessions and credentials in case the flaw has already been used.

Fixing This On Your OS

If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.

Red HatLow

OpenShift 3.11 is already in the ELS support model phase. The Jenkins components are out of the scope of the ELS support; hence OpenShift 3.11 Jenkins component is marked in this CVE as Out of Support Scope.

ProductFixed inAdvisory
OCP-Tools-4.12-RHEL-8jenkins-0:2.387.1.1683009767-3.el8RHSA-2023:3195
OCP-Tools-4.12-RHEL-8jenkins-0:2.414.3.1698293911-3.el8RHSA-2023:6172
OCP-Tools-4.12-RHEL-8jenkins-0:2.426.3.1706515686-3.el8RHSA-2024:0778
OCP-Tools-4.13-RHEL-8jenkins-0:2.401.1.1686680404-3.el8RHSA-2023:3622
OpenShift Developer Tools and Services for OCP 4.11jenkins-0:2.387.1.1683009763-3.el8RHSA-2023:3198
OpenShift Developer Tools and Services for OCP 4.11jenkins-0:2.401.1.1686831596-3.el8RHSA-2023:3663
OpenShift Developer Tools and Services for OCP 4.11jenkins-0:2.414.3.1698298955-3.el8RHSA-2023:6171
OpenShift Developer Tools and Services for OCP 4.11jenkins-0:2.426.3.1706516929-3.el8RHSA-2024:0775

Frequently Asked Questions

When triggering a build from the Jenkins CLI, Jenkins creates a temporary file on the controller if a file parameter is provided through the CLI’s standard input. Jenkins 2.393 and earlier, LTS 2.375.3 and earlier, and , and LTS prior to 2.387.1 creates this temporary file in the default temporary directory with the default permissions for newly created files. If these permissions are overly permissive, they may allow attackers with access to the Jenkins controller file system to read and write the file before it is used in the build. This vulnerability only affects operating systems using
O3 Security · Impact-Aware SCA

Is CVE-2023-27903 in your dependencies?

Find it across Maven, including transitive dependencies.

CVE-2023-27903: jenkins-core — Fixed in 2.387.1