Skip to main content
VulnerabilityPublished Updated

CVE-2026-76898: jgraph drawio · Server-Side Request Forgery (SSRF)

Affects jgraph drawioSource CVE Database V5

0
Compare

Not known to be exploited · CVSS 7.7 High : upgrade to 30.3.8 soon.

Data as of 5 Nov 2026, 00:01 UTC

CVSS 4.0 base score
7.7High
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.3% chance of exploitation in 30 days – higher than 28% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
Patch
Available – fixed in 30.3.8
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:H/SI:N/SA:N

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 21 Sep 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 5 Nov 2026.

What to do

Upgrade drawio and jgraph/drawio to 30.3.8.

Affected software

ProductAffectedFixed in
jgraphdrawioAffected
  • <30.3.8
Fixed in
  • 30.3.8
GitHubjgraph/drawiopkg:github/jgraph/drawioOther threatsAffected
  • <30.3.8
Fixed in
  • 30.3.8

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

A fix is available in draw.io version 30.3.8. Users should upgrade to this version or later to remediate the vulnerability. Since this is a cloud-hosted service, the vendor manages remediation for the cloud environment. Check the vendor advisory for confirmation of patch deployment and further guidance.

Description

draw.io is a configurable diagramming and whiteboarding application. Prior to version 30.3.8, src/main/java/com/mxgraph/online/Utils.java checks IPv6 Unique Local Addresses in Utils.sanitizeUrl() by comparing the text prefixes fc00:: and fd00::, but the JDK returns the expanded address form, so the fc00::/7 range, including the AWS metadata range fd00:ec2::/32, is not blocked. An unauthenticated request to /embed2.js?fetch= can therefore make src/main/java/com/mxgraph/online/EmbedServlet2.java fetch an IPv6 ULA internal resource and reflect the response to the requester. Utils.validatedAddress() uses the same private-address check for the separate ProxyServlet path, which requires ENABLE_DRAWIO_PROXY=1. The primary /embed2.js path requires no proxy feature flag or DNS rebinding, and it can disclose cloud metadata credentials or data from other IPv6-reachable internal services. This issue is fixed in version 30.3.8.

References

Community reviews

Loading reviews…