traQ: XSS in the User Uploaded File Retrieval API
cve-program · CVE-2026-63197
PublishedtraQ is a messenger application built for Digital Creators Club traP. Prior to 3.28.3, instances configured with TRAQ_STORAGE_TYPE=local can return user-uploaded SVG or HTML content from the /files/{fileId} retrieval endpoint for direct browser rendering. An attacker with file-upload capability can provide crafted active content and induce another user to open its file URL, causing attacker-controlled JavaScript to execute in the victim's browser. This issue is fixed in version 3.28.3.
Read the publisher's advisoryeuvd · EUVD-2026-116118
PublishedtraQ is a messenger application built for Digital Creators Club traP. Prior to 3.28.3, instances configured with TRAQ_STORAGE_TYPE=local can return user-uploaded SVG or HTML content from the /files/{fileId} retrieval endpoint for direct browser rendering. An attacker with file-upload capability can provide crafted active content and induce another user to open its file URL, causing attacker-controlled JavaScript to execute in the victim's browser. This issue is fixed in version 3.28.3.
Read the publisher's advisorynvd · CVE-2026-63197
PublishedtraQ is a messenger application built for Digital Creators Club traP. Prior to 3.28.3, instances configured with TRAQ_STORAGE_TYPE=local can return user-uploaded SVG or HTML content from the /files/{fileId} retrieval endpoint for direct browser rendering. An attacker with file-upload capability can provide crafted active content and induce another user to open its file URL, causing attacker-controlled JavaScript to execute in the victim's browser. This issue is fixed in version 3.28.3.
Read the publisher's advisoryosv · GHSA-p74g-f95m-7fx7
Published### Impact For instances where `TRAQ_STORAGE_TYPE` is set to `local`, the file retrieval API `/files/{fileId}` could serve user-uploaded SVG or HTML files in a way that allowed them to be rendered directly in the browser. As a result, an attacker who can upload files to traQ could upload a crafted SVG or HTML file and trick a victim into opening the file URL, allowing the attacker to execute arbitrary JavaScript in the victim's browser. ### Patches This issue has been fixed in v3.28.3. After this fix, the file retrieval API always adds the `Content-Disposition` header to its responses regardless of the value of the `dl` query parameter. This prevents user-uploaded files from being displayed directly in the browser. ### Workarounds To mitigate the impact of this issue, apply either of the following workarounds: * Change `TRAQ_STORAGE_TYPE` to a storage backend other than `local`. * Ensure that all requests to `/files/{fileId}` include `dl=1`. Users of this application can reduce the risk of exploitation by avoiding suspicious file URLs.
Read the publisher's advisoryAffected versions, risk and source history
Related advisories and sources
Publishers link these advisories through the identifiers shown below. A shared identifier or date alone does not tell you whether your software is affected or whether the advisories describe the same cause.
CVE-2026-63197 · CVE overview and exploitation status
cve-program · CVE-2026-63197
- https://github.com/traPtitech/traQ/security/advisories/GHSA-p74g-f95m-7fx7
- https://github.com/traPtitech/traQ/commit/3db29e7771661f6418d88d186d8ff7817f5d6b6e
- https://github.com/traPtitech/traQ/releases/tag/v3.28.3
euvd · EUVD-2026-116118
- https://github.com/traPtitech/traQ/security/advisories/GHSA-p74g-f95m-7fx7
- https://github.com/traPtitech/traQ/commit/3db29e7771661f6418d88d186d8ff7817f5d6b6e
- https://github.com/traPtitech/traQ/releases/tag/v3.28.3
nvd · CVE-2026-63197
- https://github.com/traPtitech/traQ/commit/3db29e7771661f6418d88d186d8ff7817f5d6b6e
- https://github.com/traPtitech/traQ/releases/tag/v3.28.3
- https://github.com/traPtitech/traQ/security/advisories/GHSA-p74g-f95m-7fx7
osv · GHSA-p74g-f95m-7fx7
Related changes
Linked by CVE identifier- traQ is a messenger application built for Digital Creators Club traP. Prior to 3.28.3, instances configured with TRAQ_STORAGE_TYPE=local can return user-uploaded SVG or HTML content from the /files/{fileId} retrieval endpoint for direct bro… · Advisory content revised · 13 Nov 2026
- traQ is a messenger application built for Digital Creators Club traP. Prior to 3.28.3, instances configured with TRAQ_STORAGE_TYPE=local can return user-uploaded SVG or HTML content from the /files/{fileId} retrieval endpoint for direct bro… · Advisory content revised · 11 Nov 2026
- traQ: XSS in the User Uploaded File Retrieval API · Newly collected advisory · 9 Nov 2026
- traQ: XSS in the User Uploaded File Retrieval API · Newly collected advisory · 3 Nov 2026