CVE-2023-28668

9.8 CRITICAL

📋 TL;DR

The Jenkins Role-based Authorization Strategy Plugin vulnerability allows users to retain permissions even after they've been disabled in the system configuration. This affects all Jenkins instances using the vulnerable plugin version, potentially enabling unauthorized access to sensitive Jenkins resources.

💻 Affected Systems

Products:
  • Jenkins Role-based Authorization Strategy Plugin
Versions: 587.v2872c41fa_e51 and earlier
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects Jenkins instances using the Role-based Authorization Strategy Plugin. Jenkins installations without this plugin are not vulnerable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers with previously revoked permissions can regain access to Jenkins, potentially executing arbitrary code, accessing sensitive data, or disrupting CI/CD pipelines.

🟠

Likely Case

Former users or service accounts with disabled permissions can access Jenkins resources they shouldn't, leading to unauthorized pipeline execution or configuration changes.

🟢

If Mitigated

With proper access controls and monitoring, impact is limited to temporary unauthorized access that can be detected and remediated.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires a user account that previously had permissions disabled. No authentication bypass is involved.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 588.vc4a_64173a_3a_

Vendor Advisory: https://www.jenkins.io/security/advisory/2023-03-21/#SECURITY-3053

Restart Required: Yes

Instructions:

1. Navigate to Jenkins Manage Jenkins > Manage Plugins
2. Go to Available tab and search for 'Role-based Authorization Strategy'
3. Update to version 588.vc4a_64173a_3a_ or later
4. Restart Jenkins after installation

🔧 Temporary Workarounds

Disable Role-based Authorization Strategy Plugin

all

Temporarily disable the vulnerable plugin until patching is possible

Navigate to Manage Jenkins > Manage Plugins > Installed
Find 'Role-based Authorization Strategy' and click Disable

Audit and Remove User Permissions

all

Manually audit all user permissions and remove any unnecessary access

Navigate to Manage Jenkins > Manage and Assign Roles
Review all role assignments and remove unnecessary permissions

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate Jenkins from sensitive systems
  • Enable detailed audit logging and monitor for unauthorized access attempts

🔍 How to Verify

Check if Vulnerable:

Check plugin version in Manage Jenkins > Manage Plugins > Installed tab. Look for Role-based Authorization Strategy version 587.v2872c41fa_e51 or earlier.

Check Version:

curl -s http://jenkins-url/pluginManager/api/json?depth=1 | grep -o '"shortName":"role-strategy","version":"[^"]*"'

Verify Fix Applied:

Verify plugin version is 588.vc4a_64173a_3a_ or later in Manage Jenkins > Manage Plugins > Installed tab.

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized access attempts by users with disabled permissions
  • Permission changes in audit logs without corresponding configuration updates

Network Indicators:

  • Unexpected Jenkins API calls from users with revoked permissions

SIEM Query:

source="jenkins.log" AND ("permission denied" OR "unauthorized access") AND user IN (list_of_disabled_users)

🔗 References

📤 Share & Export