GHSA-42FC-7W97-8VRC
Vulnerability from github – Published: 2026-05-05 19:32 – Updated: 2026-05-05 19:32Impact
The PlantUML Macro is vulnerable to Server-Side Request Forgery (SSRF). The macro allows users to specify an alternative PlantUML server via the server parameter. However, the application does not validate the supplied URL. An attacker can supply an internal IP address or a malicious external URL. The XWiki server will attempt to connect to this URL to "render" the diagram.
This issue affects all versions of the Plant UML Macro extension till version 2.4 included.
Patches
Version 2.4.1 of the Plant UML Macro extension fixes the issue by verifying if the supplied server domain matches one of the trusted domain configured inside of XWiki.
Workarounds
Protect the XWiki server by placing it in a DMZ so that it cannot access any other internal servers.
Resources
The issue was fixed in PLANTUML-25 by the commit c8b19bda93058794e04c8862fc7ca85c59b5fe5c.
For more information
If there are any questions or comments about this advisory: * Open an issue in JIRA XWiki.org * Send an email to Security Mailing List
Attribution
The issue was reported by Łukasz Rybak.
{
"affected": [
{
"package": {
"ecosystem": "Maven",
"name": "org.xwiki.contrib.plantuml:macro-plantuml-macro"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.4.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2026-42140"
],
"database_specific": {
"cwe_ids": [
"CWE-918"
],
"github_reviewed": true,
"github_reviewed_at": "2026-05-05T19:32:57Z",
"nvd_published_at": "2026-05-04T18:16:31Z",
"severity": "MODERATE"
},
"details": "### Impact\n\nThe [PlantUML Macro](https://extensions.xwiki.org/xwiki/bin/view/Extension/PlantUML+Macro) is vulnerable to Server-Side Request Forgery (SSRF). The macro allows users to specify an alternative PlantUML server via the `server` parameter. However, the application does not validate the supplied URL. An attacker can supply an internal IP address\u00a0or a malicious external URL. The XWiki server will attempt to connect to this URL to \"render\" the diagram.\n\nThis issue affects all versions of the Plant UML Macro extension till version 2.4 included.\n\n### Patches\n\nVersion 2.4.1 of the Plant UML Macro extension fixes the issue by verifying if the supplied server domain matches one of the [trusted domain configured inside of XWiki](https://www.xwiki.org/xwiki/bin/view/Documentation/AdminGuide/Configuration/#HTrusteddomains).\n\n### Workarounds\n\nProtect the XWiki server by placing it in a DMZ so that it cannot access any other internal servers.\n\n### Resources\n\nThe issue was fixed in [PLANTUML-25](https://jira.xwiki.org/browse/PLANTUML-25) by the commit [c8b19bda93058794e04c8862fc7ca85c59b5fe5c](https://github.com/xwiki-contrib/macro-plantuml/commit/c8b19bda93058794e04c8862fc7ca85c59b5fe5c).\n\n### For more information\n\nIf there are any questions or comments about this advisory:\n* Open an issue in [JIRA XWiki.org](https://jira.xwiki.org/)\n* Send an email to [Security Mailing List](mailto:security@xwiki.org)\n\n### Attribution\n\nThe issue was reported by \u0141ukasz Rybak.",
"id": "GHSA-42fc-7w97-8vrc",
"modified": "2026-05-05T19:32:57Z",
"published": "2026-05-05T19:32:57Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/xwiki-contrib/macro-plantuml/security/advisories/GHSA-42fc-7w97-8vrc"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-42140"
},
{
"type": "WEB",
"url": "https://github.com/xwiki-contrib/macro-plantuml/commit/c8b19bda93058794e04c8862fc7ca85c59b5fe5c"
},
{
"type": "PACKAGE",
"url": "https://github.com/xwiki-contrib/macro-plantuml"
},
{
"type": "WEB",
"url": "https://jira.xwiki.org/browse/PLANTUML-25"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N",
"type": "CVSS_V3"
}
],
"summary": "XWiki PlantUML Macro Vulnerable to Server-Side Request Forgery (SSRF) via \u0027server\u0027 parameter"
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.