Security Vulnerability Report
中文
CVE-2026-42521 CVSS 6.5 MEDIUM

CVE-2026-42521

Published: 2026-04-29 14:16:19
Last Modified: 2026-05-06 16:21:02

Description

Jenkins Matrix Authorization Strategy Plugin 2.0-beta-1 through 3.2.9 (both inclusive) invokes parameterless constructors of classes specified in configuration when deserializing inheritance strategies, without restricting the classes that can be instantiated, allowing attackers with Item/Configure permission to instantiate arbitrary types, which may lead to information disclosure or other impacts depending on the classes available on the classpath.

CVSS Details

CVSS Score
6.5
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N

Configurations (Affected Products)

cpe:2.3:a:jenkins:matrix_authorization_strategy:*:*:*:*:*:jenkins:*:* - VULNERABLE
cpe:2.3:a:jenkins:matrix_authorization_strategy:2.0:beta1:*:*:*:jenkins:*:* - VULNERABLE
cpe:2.3:a:jenkins:matrix_authorization_strategy:2.0:beta2:*:*:*:jenkins:*:* - VULNERABLE
cpe:2.3:a:jenkins:matrix_authorization_strategy:2.0:beta3:*:*:*:jenkins:*:* - VULNERABLE
Jenkins Matrix Authorization Strategy Plugin 2.0-beta-1 至 3.2.9

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
// Conceptual PoC demonstrating the configuration modification // This is not a direct exploit script but shows the vulnerable mechanism. // Attacker modifies the configuration XML (e.g., config.xml) to include: // <inheritanceStrategy class="java.io.File"/> // or a class available on the classpath that performs a sensitive action in its constructor. // Example Groovy script to simulate the vulnerable instantiation: try { // The vulnerable code effectively does this: def clazz = Class.forName("java.io.File"); // Arbitrary class def instance = clazz.getConstructor().newInstance("/etc/passwd"); // If constructor requires args, it might fail, but parameterless constructors are the target. // Real exploitation relies on finding a parameterless constructor that does something dangerous. // e.g., a logging class that dumps context, or a utility class that initializes system properties. println("Instance created: " + instance.getClass().getName()); } catch (Exception e) { e.printStackTrace(); }

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-42521", "sourceIdentifier": "[email protected]", "published": "2026-04-29T14:16:19.170", "lastModified": "2026-05-06T16:21:01.660", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Jenkins Matrix Authorization Strategy Plugin 2.0-beta-1 through 3.2.9 (both inclusive) invokes parameterless constructors of classes specified in configuration when deserializing inheritance strategies, without restricting the classes that can be instantiated, allowing attackers with Item/Configure permission to instantiate arbitrary types, which may lead to information disclosure or other impacts depending on the classes available on the classpath."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N", "baseScore": 6.5, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "HIGH", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 3.6}]}, "weaknesses": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-502"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:jenkins:matrix_authorization_strategy:*:*:*:*:*:jenkins:*:*", "versionStartIncluding": "2.1", "versionEndExcluding": "3.2.10", "matchCriteriaId": "E3A25BA3-0771-4973-A265-27CCD8973FD5"}, {"vulnerable": true, "criteria": "cpe:2.3:a:jenkins:matrix_authorization_strategy:2.0:beta1:*:*:*:jenkins:*:*", "matchCriteriaId": "5BE52D85-98B6-42EF-8817-A0039B61406A"}, {"vulnerable": true, "criteria": "cpe:2.3:a:jenkins:matrix_authorization_strategy:2.0:beta2:*:*:*:jenkins:*:*", "matchCriteriaId": "55E2BB1C-F686-46E0-8D12-A0C70DF2CC91"}, {"vulnerable": true, "criteria": "cpe:2.3:a:jenkins:matrix_authorization_strategy:2.0:beta3:*:*:*:jenkins:*:*", "matchCriteriaId": "B5E7F6EB-50E0-4A3B-A481-45BD14714558"}]}]}], "references": [{"url": "https://www.jenkins.io/security/advisory/2026-04-29/#SECURITY-3676", "source": "[email protected]", "tags": ["Vendor Advisory"]}]}}