{"id":"GHSA-5crw-6j7v-xc72","summary":"matrix-media-repo: Unsafe media served inline on download endpoints","details":"### Impact\nA malicious user can upload an SVG image containing JavaScript to their server. When matrix-media-repo is asked to serve that media via the `/_matrix/media/(r0|v3)/download` endpoint, it would be served with a `Content-Disposition` of `inline`. This can allow JavaScript to run in the browser if a client links to the `/download` endpoint directly.\n\nServer operators which do not share a domain between matrix-media-repo and other services are not affected, but are encouraged to upgrade regardless.\n\n### Patches\nhttps://github.com/turt2live/matrix-media-repo/commit/77ec2354e8f46d5ef149d1dcaf25f51c04149137 and https://github.com/turt2live/matrix-media-repo/commit/bf8abdd7a5371118e280c65a8e0ec2b2e9bdaf59 fix the issue. Operators should upgrade to v1.3.0 as soon as possible.\n\n### Workarounds\nThe `Content-Disposition` header can be overridden by the reverse proxy in front of matrix-media-repo to always use `attachment`, defeating this issue at the cost of \"worse\" user experience when clicking download links.\n\n### References\nhttps://developer.mozilla.org/en-US/docs/Web/SVG/Element/script\n\n","aliases":["CVE-2023-41318","GO-2023-2053"],"modified":"2024-08-21T14:57:41.586973Z","published":"2023-09-08T13:18:23Z","database_specific":{"nvd_published_at":"2023-09-08T20:15:14Z","cwe_ids":["CWE-79"],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2023-09-08T13:18:23Z"},"references":[{"type":"WEB","url":"https://github.com/turt2live/matrix-media-repo/security/advisories/GHSA-5crw-6j7v-xc72"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2023-41318"},{"type":"WEB","url":"https://github.com/turt2live/matrix-media-repo/commit/77ec2354e8f46d5ef149d1dcaf25f51c04149137"},{"type":"WEB","url":"https://github.com/turt2live/matrix-media-repo/commit/bf8abdd7a5371118e280c65a8e0ec2b2e9bdaf59"},{"type":"WEB","url":"https://developer.mozilla.org/en-US/docs/Web/SVG/Element/script"},{"type":"PACKAGE","url":"https://github.com/turt2live/matrix-media-repo"}],"affected":[{"package":{"name":"github.com/turt2live/matrix-media-repo","ecosystem":"Go","purl":"pkg:golang/github.com/turt2live/matrix-media-repo"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"1.3.0"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/09/GHSA-5crw-6j7v-xc72/GHSA-5crw-6j7v-xc72.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:N/A:N"}]}