{"id":"CVE-2026-40487","aliases":["EUVD-2026-23634","GHSA-44wg-r34q-hvfx"],"status":"published","title":"Postiz Has Unrestricted File Upload via MIME Type Spoofing that Leads to Stored XSS","description":"Postiz is an AI social media scheduling tool. Prior to version 2.21.6, a file upload validation bypass allows any authenticated user to upload arbitrary HTML, SVG, or other executable file types to the server by spoofing the `Content-Type` header. The uploaded files are then served by nginx with a Content-Type derived from their original extension (`text/html`, `image/svg+xml`), enabling Stored Cross-Site Scripting (XSS) in the context of the application's origin. This can lead to session riding, account takeover, and full compromise of other users' accounts. Version 2.21.6 contains a fix.","severity":{"version":"3.1","score":8.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:L","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.00224,"percentile":0.13164,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":true,"fix_available":false},"cwes":["CWE-345","CWE-434","CWE-79"],"published":"2026-04-18T01:19:06Z","modified":"2026-10-28T02:30:47Z","exploits":[{"source":"pocgithub","id":"Astaruf/CVE-2026-40487","title":"Astaruf/CVE-2026-40487","date":"2026-04-15","url":"https://github.com/Astaruf/CVE-2026-40487"}],"products":[{"vendor":"gitroom","product":"postiz"},{"vendor":"gitroomhq","product":"postiz-app"}],"references":[{"url":"https://github.com/gitroomhq/postiz-app/security/advisories/GHSA-44wg-r34q-hvfx","tags":["x_refsource_CONFIRM","exploit","Exploit","Vendor Advisory","advisory"]},{"url":"https://github.com/gitroomhq/postiz-app/releases/tag/v2.21.6","tags":["x_refsource_MISC","Product","Release Notes","web"]},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/40xxx/CVE-2026-40487.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-40487","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2026-40487","title":"Postiz Has Unrestricted File Upload via MIME Type Spoofing that Leads to Stored XSS","description":"Postiz is an AI social media scheduling tool. Prior to version 2.21.6, a file upload validation bypass allows any authenticated user to upload arbitrary HTML, SVG, or other executable file types to the server by spoofing the `Content-Type` header. The uploaded files are then served by nginx with a Content-Type derived from their original extension (`text/html`, `image/svg+xml`), enabling Stored Cross-Site Scripting (XSS) in the context of the application's origin. This can lead to session riding, account takeover, and full compromise of other users' accounts. Version 2.21.6 contains a fix.","status":"published","published":"2026-04-18T01:19:06.588Z","modified":"2026-04-20T15:25:40.893Z","cvss":[{"version":"3.1","score":8.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:L","level":"high","assessor":"cna"}],"cwes":["CWE-79","CWE-345","CWE-434"],"updated_at":"2026-11-02T13:43:22.599321Z"}],"euvd":[{"id":"EUVD-2026-23634","description":"Postiz is an AI social media scheduling tool. Prior to version 2.21.6, a file upload validation bypass allows any authenticated user to upload arbitrary HTML, SVG, or other executable file types to the server by spoofing the `Content-Type` header. The uploaded files are then served by nginx with a Content-Type derived from their original extension (`text/html`, `image/svg+xml`), enabling Stored Cross-Site Scripting (XSS) in the context of the application's origin. This can lead to session riding, account takeover, and full compromise of other users' accounts. Version 2.21.6 contains a fix.","status":"published","published":"2026-04-18T01:19:06Z","modified":"2026-04-20T15:25:40Z","cvss":[{"version":"3.1","score":8.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:L","level":"high"}],"updated_at":"2026-11-02T19:24:22.446697Z"}],"nvd":[{"id":"CVE-2026-40487","description":"Postiz is an AI social media scheduling tool. Prior to version 2.21.6, a file upload validation bypass allows any authenticated user to upload arbitrary HTML, SVG, or other executable file types to the server by spoofing the `Content-Type` header. The uploaded files are then served by nginx with a Content-Type derived from their original extension (`text/html`, `image/svg+xml`), enabling Stored Cross-Site Scripting (XSS) in the context of the application's origin. This can lead to session riding, account takeover, and full compromise of other users' accounts. Version 2.21.6 contains a fix.","status":"published","published":"2026-04-18T02:16:11.67Z","modified":"2026-10-26T21:10:00.17Z","cvss":[{"version":"3.1","score":8.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:L","level":"high","assessor":"secondary"},{"version":"3.1","score":9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H","level":"critical","assessor":"primary"}],"cwes":["CWE-79","CWE-345","CWE-434"],"updated_at":"2026-11-02T14:12:15.120927Z"}],"osv":[{"id":"CVE-2026-40487","title":"Postiz Has Unrestricted File Upload via MIME Type Spoofing that Leads to Stored XSS","description":"Postiz is an AI social media scheduling tool. Prior to version 2.21.6, a file upload validation bypass allows any authenticated user to upload arbitrary HTML, SVG, or other executable file types to the server by spoofing the `Content-Type` header. The uploaded files are then served by nginx with a Content-Type derived from their original extension (`text/html`, `image/svg+xml`), enabling Stored Cross-Site Scripting (XSS) in the context of the application's origin. This can lead to session riding, account takeover, and full compromise of other users' accounts. Version 2.21.6 contains a fix.","status":"published","published":"2026-04-18T01:19:06.588Z","modified":"2026-10-28T02:30:47.379268818Z","cvss":[{"version":"3.1","score":8.9,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:L","level":"high"}],"cwes":["CWE-345","CWE-434","CWE-79"],"updated_at":"2026-11-02T15:45:03.424067Z"}]}}
