{"id":"CVE-2026-49971","state":"PUBLISHED","title":"Laravel-Mediable < 7.0.0 Stored XSS via SVG File Upload","description":"Laravel-Mediable before 7.0.0 contains a stored cross-site scripting vulnerability that allows authenticated or anonymous users to execute arbitrary JavaScript by uploading unsanitized SVG files containing embedded scripts in onload event handlers, script tags, or foreignObject elements. Attackers can store persistent XSS payloads in uploaded SVG files that execute with full DOM access when victims open or preview the file, enabling session cookie theft, CSRF token capture, and account takeover.","publishedAt":"2026-07-13T18:13:29.473Z","updatedAt":"2026-07-14T21:33:32.767Z","severity":{"score":5.3,"label":"Medium","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","source":"VulnCheck"},"assigner":"VulnCheck","products":["plank laravel-mediable"],"affected":[{"vendor":"plank","product":"laravel-mediable","packageURL":"pkg:github/plank/laravel-mediable","defaultStatus":"affected","versions":[{"version":"0","status":"affected","lessThan":"7.0.0","versionType":"semver"}],"repo":"https://github.com/plank/laravel-mediable"}],"references":["https://github.com/plank/laravel-mediable/releases/tag/7.0.0","https://github.com/plank/laravel-mediable/commit/65046b2162fac23ec5d5e8fbdff01a9a0804003e","https://www.vulncheck.com/advisories/laravel-mediable-stored-xss-via-svg-file-upload"],"weaknesses":["CWE-79"],"ingestedAt":"2026-10-29T20:12:07.131Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/49xxx/CVE-2026-49971.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-49971","state":"PUBLISHED","datePublished":"2026-07-13T18:13:29.473Z","dateUpdated":"2026-07-14T21:33:32.767Z","assignerShortName":"VulnCheck","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateReserved":"2026-06-02T16:30:15.234Z"},"containers":{"cna":{"title":"Laravel-Mediable < 7.0.0 Stored XSS via SVG File Upload","descriptions":[{"lang":"en","value":"Laravel-Mediable before 7.0.0 contains a stored cross-site scripting vulnerability that allows authenticated or anonymous users to execute arbitrary JavaScript by uploading unsanitized SVG files containing embedded scripts in onload event handlers, script tags, or foreignObject elements. Attackers can store persistent XSS payloads in uploaded SVG files that execute with full DOM access when victims open or preview the file, enabling session cookie theft, CSRF token capture, and account takeover."}],"affected":[{"vendor":"plank","product":"laravel-mediable","packageURL":"pkg:github/plank/laravel-mediable","defaultStatus":"affected","versions":[{"version":"0","status":"affected","lessThan":"7.0.0","versionType":"semver"}],"repo":"https://github.com/plank/laravel-mediable"}],"references":[{"url":"https://github.com/plank/laravel-mediable/releases/tag/7.0.0","name":"laravel-mediable 7.0.0 Release Notes","tags":["release-notes","patch"]},{"url":"https://github.com/plank/laravel-mediable/commit/65046b2162fac23ec5d5e8fbdff01a9a0804003e","name":"Patch Commit","tags":["patch"]},{"url":"https://www.vulncheck.com/advisories/laravel-mediable-stored-xss-via-svg-file-upload","tags":["third-party-advisory"]}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"NONE","userInteraction":"PASSIVE","vulnConfidentialityImpact":"NONE","subConfidentialityImpact":"LOW","vulnIntegrityImpact":"NONE","subIntegrityImpact":"LOW","vulnAvailabilityImpact":"NONE","subAvailabilityImpact":"NONE","exploitMaturity":"NOT_DEFINED","Safety":"NOT_DEFINED","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","version":"4.0","baseSeverity":"MEDIUM","baseScore":5.3,"vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N"}},{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV3_1":{"attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"CHANGED","confidentialityImpact":"NONE","integrityImpact":"LOW","availabilityImpact":"LOW","version":"3.1","baseSeverity":"MEDIUM","baseScore":6.1,"vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:N/I:L/A:L"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-79","lang":"en","description":"Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","type":"CWE"}]}],"providerMetadata":{"shortName":"VulnCheck","orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateUpdated":"2026-07-14T21:33:32.767Z"},"tags":["x_open-source"],"datePublic":"2026-06-13T00:00:00.000Z","credits":[{"lang":"en","value":"Xurshidbek Sobirjonov","type":"finder"},{"lang":"en","value":"VulnCheck","type":"coordinator"}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"vulncheck"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-07-14T14:22:40.840399Z","id":"CVE-2026-49971","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-07-14T14:31:51.022Z"}}]}}}