GPU VulnDB

Database/Control plane, storage & DevOps

Jenkins update-center2: unescaped plugin metadata gives stored XSS on plugin download index pages

CVE-2026-84677Control plane, storage & DevOpscurated

Impact

update-center2 generates the plugin download index that Jenkins controllers and their operators fetch from. It does not escape plugin-supplied names, descriptions or version metadata, so anyone who can get a plugin hosted there lands stored JavaScript on those pages, executing in the browser of whoever browses the index - typically the person administering a controller. Jenkins scores it scope-changed, reflecting that the script runs against a different origin than the one hosting it. This is only relevant to operators who run their own internal update center or plugin mirror for an air-gapped or curated fleet; if you consume the public update center as a client, you are not running the affected software. The exposure is against the human browsing the catalogue, not against the controllers pulling plugin JSON from it.

Who can reach it

Remote authenticated attacker able to submit a plugin for hosting on the update center (PR:L), plus user interaction - a victim must load the generated download page in a browser.

What to do

Upgrade update-center2 past 3.18.3 per SECURITY-4038 in the 2026-09-02 Jenkins advisory; the advisory names 3.18.3 and earlier as affected and does not state a fixed release number, so take the current version. This is the site-generation tooling, not a Jenkins controller plugin: regenerate and republish the index after upgrading. No GPU node, agent or controller needs to be drained or restarted. Operators who do not host their own update center have nothing to do here.

References

Related entries

All Control plane, storage & DevOps entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.