Remark42: Cross-Site Scripting (XSS) on /api/v1/img via content-type spoofing
Summary
| CVE | CVE-2026-48788 |
|---|---|
| State | PUBLISHED |
| Assigner | GitHub_M |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-06-17 13:20:43 UTC |
| Updated | 2026-06-17 16:28:34 UTC |
| Description | Remark42 is a self-hosted comment engine for blogs, articles, or any other place where readers can add comments. Versions 1.6.0 through 1.15.0 contain a Cross-Site Scripting (XSS) vulnerability exploitable through content-type spoofing. The Remark42 image proxy fetches an arbitrary remote URL and re-serves the response from Remark42's own origin. During the download phase, the proxy determines whether the resource is an image by inspecting only the Content-Type header advertised by the remote server, never examining the actual bytes; during the serving phase, it instead derives the response Content-Type by sniffing those bytes with http.DetectContentType. An attacker can exploit this inconsistency by hosting a URL that advertises Content-Type: image/png while returning an HTML/JavaScript body: the download check accepts it as an image, the serving path sniffs the body and emits Content-Type: text/html, and the browser renders the attacker-controlled HTML/JavaScript as a document within Remark42's origin. Exploitation requires no Remark42 account on the target instance; the attacker only needs to host the malicious upstream URL and deliver the proxy link to a victim by any means, such as email, direct message, or a link on another website. This issue has been fixed in version 1.16.0. |
Risk And Classification
Primary CVSS: v3.0 8.2 HIGH from [email protected]
CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N
Problem Types: CWE-79 | CWE-436 | CWE-79 CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') | CWE-436 CWE-436: Interpretation Conflict
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.0 | [email protected] | Secondary | 8.2 | HIGH | CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N |
| 3.0 | CNA | DECLARED | 8.2 | HIGH | CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N |
CVSS v3.0 Breakdown
Attack Vector
NetworkAttack Complexity
LowPrivileges Required
NoneUser Interaction
RequiredScope
ChangedConfidentiality
HighIntegrity
LowAvailability
NoneCVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:L/A:N
Vendor Declared Affected Products
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| github.com/umputun/remark42/security/advisories/GHSA-4c8j-mgm4-qqvp | 134c704f-9b21-4f2e-91b3-4a467353bcc0 | github.com | |
| github.com/umputun/remark42/releases/tag/v1.16.0 | [email protected] | github.com | |
| github.com/umputun/remark42/commit/78d6de6bce1e961f023969da3ec8a00dd80c9ae8 | [email protected] | github.com | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.