Reflected XSS via Unescaped `id` Parameter in Bazar Widget HTML Attributes in YesWiki
YesWiki is a wiki system written in PHP. Prior to version 4.6.6, YesWiki's Bazar widget handler reflects the id GET parameter into HTML attributes using strip_tags() only. Because strip_tags() does not escape double quotes, an attacker can break out of the attribute value, inject an event handler such as onmouseover, and execute arbitrary JavaScript in the victim's browser. This issue is reachable without authentication. During validation, the vulnerable widget route returned the injected HTML for both /HomePage/widget?id=... and /NoSuchPage/widget?id=..., which shows that no login, no page ownership, no edit rights, and not even a valid page tag were required. The only routing prerequisite observed was that the Bazar extension is enabled and the request includes an id parameter. This issue has been patched in version 4.6.6.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-52774
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 3 Nov 2026, 09:52 UTC · Revision 1
Source evidence
Reflected XSS via Unescaped `id` Parameter in Bazar Widget HTML Attributes in YesWiki
core-osv · Original sourcePublished 4 Sept 2026, 23:51 UTC
YesWiki is a wiki system written in PHP. Prior to version 4.6.6, YesWiki's Bazar widget handler reflects the id GET parameter into HTML attributes using strip_tags() only. Because strip_tags() does not escape double quotes, an attacker can break out of the attribute value, inject an event handler such as onmouseover, and execute arbitrary JavaScript in the victim's browser. This issue is reachable without authentication. During validation, the vulnerable widget route returned the injected HTML for both /HomePage/widget?id=... and /NoSuchPage/widget?id=..., which shows that no login, no page ownership, no edit rights, and not even a valid page tag were required. The only routing prerequisite observed was that the Bazar extension is enabled and the request includes an id parameter. This issue has been patched in version 4.6.6.
osv:CVE-2026-52774
Complete source record
{
"id": "ac49f9746b8b18d19063dac3db6af4b9c4199784a5aa30b47b26d440abf02d05",
"url": "https://osv.dev/vulnerability/CVE-2026-52774",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Reflected XSS via Unescaped `id` Parameter in Bazar Widget HTML Attributes in YesWiki",
"summary": "YesWiki is a wiki system written in PHP. Prior to version 4.6.6, YesWiki's Bazar widget handler reflects the id GET parameter into HTML attributes using strip_tags() only. Because strip_tags() does not escape double quotes, an attacker can break out of the attribute value, inject an event handler such as onmouseover, and execute arbitrary JavaScript in the victim's browser. This issue is reachable without authentication. During validation, the vulnerable widget route returned the injected HTML for both /HomePage/widget?id=... and /NoSuchPage/widget?id=..., which shows that no login, no page ownership, no edit rights, and not even a valid page tag were required. The only routing prerequisite observed was that the Bazar extension is enabled and the request includes an id parameter. This issue has been patched in version 4.6.6.",
"evidence": "osv:CVE-2026-52774",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2026-52774",
"aliases": [
"CVE-2026-52774",
"GHSA-r5xw-gcgw-hwp5"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/yeswiki/yeswiki",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "fa81922f4103630911cbea98ead3c4b7bc786e19"
},
{
"fixed": "1aa2710c7505630b858f2142a65f9441bfaba2b2"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"fixed": "4.6.6"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "1aa2710c7505630b858f2142a65f9441bfaba2b2"
}
],
"source": "REFERENCES_COMMIT"
},
{
"range": [
{
"fixed": "fa81922f4103630911cbea98ead3c4b7bc786e19"
}
],
"source": "REFERENCES_TAG",
"original_tag": "v4.6.6"
}
]
}
}
],
"versions": [
"v4.6.5",
"v4.6.4",
"v4.6.3",
"v4.6.2",
"v4.6.0",
"v4.5.5",
"v4.5.4",
"v4.5.3",
"v4.5.2",
"v4.5.1",
"v4.4.3",
"v4.4.2",
"v4.4.1",
"v4.4.0",
"v4.3.1",
"v4.3.0",
"v4.2.2",
"v4.2.1",
"v4.2.0",
"v4.1.5",
"v4.1.0"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-52774.json"
}
}
],
"modified": "2026-10-28T02:30:27.835289820Z",
"provider": "osv",
"references": [
"https://github.com/YesWiki/yeswiki/releases/tag/v4.6.6",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52774.json",
"https://github.com/YesWiki/yeswiki/security/advisories/GHSA-r5xw-gcgw-hwp5",
"https://nvd.nist.gov/vuln/detail/CVE-2026-52774",
"https://github.com/YesWiki/yeswiki/commit/1aa2710c7505630b858f2142a65f9441bfaba2b2"
],
"provider_metadata": {
"cwe_ids": [
"CWE-80"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52774.json"
}
},
"related_cves": [
{
"value": "CVE-2026-52774",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 494322,
"published_at": "2026-09-04T23:51:19.336+00:00"
}