Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privilege user
-
DeliveryPOST crafted SVG via entries API ImageField
-
ExploitFile stored unsanitized, served as image/svg+xml
-
ExecutionVictim opens entry or file URL, script executes
-
ImpactStored XSS runs in wiki origin, session hijack
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires: (1) a low-privilege authenticated account on the target YesWiki instance - the entries API endpoint POST /api/entries/{formId} is reachable by any authenticated user (acl '+'); (2) a target form that uses the bazar ImageField; and (3) the default attach_config.ext_images setting ('avif|gif|jpeg|png|jpg|svg|webp') which permits svg uploads out of the box, so default configurations of YesWiki before 4.7.0 are vulnerable with no special hardening removed. The ImageField gate is isImage() only, with no cleanFile()/sanitizer, so the uploaded SVG is stored unmodified and served as image/svg+xml. Limiting factors: the attacker must be authenticated (not anonymous), and script execution requires a victim to view the entry or navigate to the stored SVG URL (passive user interaction); affected versions are strictly before 4.7.0. |
| Impact | The signals converge on a moderate, not urgent, priority. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N, base 5.1) describes a network-reachable but low-privilege-authenticated stored XSS whose impact falls only on the subsequent system (the victim's browser/session: SC:L/SI:L), with no direct confidentiality, integrity or availability impact to the YesWiki server itself. This is consistent with a CWE-79 stored XSS rather than a server-compromise bug. Two limiting factors temper the network vector: an attacker must already hold a low-privilege authenticated account (PR:L), and a victim must view the entry or stored file for the script to fire (UI:P). No EPSS score was supplied, so exploitation probability cannot be quantified. The vulnerability is NOT in CISA KEV and there is no indication of active exploitation. A detailed public PoC reference exists in the GHSA advisory (reproduced on a live v4.6.7 instance by VulnCheck/the 'theo' agent, with screenshot and video evidence), but the input does not mark it as packaged, verified working exploit code. The vuln.today decision label is 'this_month', aligning with patch-on-normal-cycle urgency rather than emergency. Notably this is an incomplete fix for the prior advisory GHSA-67v5-7pfv-pp9m (CVE-2026-104461): the earlier remediation added cleanFile() only to FileField.php and skipped the sibling ImageField sink, so a patched-looking v4.6.7 remains exploitable. Overall this is a genuine, confirmed-reproducible but bounded-impact issue - a real priority for YesWiki operators to patch in the normal cycle, not a high-CVSS-but-low-real-risk false alarm nor a drop-everything emergency. |
| Exploit ScenarioDerived | A low-privilege authenticated user POSTs a malicious SVG to /api/entries/{formId} through the bazar ImageField; the file is stored byte-identical and later served as image/svg+xml. When another user - or an admin - opens the entry or navigates directly to the stored file URL, the embedded script executes in the YesWiki origin, enabling session/cookie theft or actions as the viewer. A public PoC reference with reproduction steps and executed-alert evidence exists in the GHSA advisory; it is not confirmed as packaged, verified working exploit code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 25, 2026
Stored cross-site scripting in YesWiki before 4.7.0 lets any authenticated low-privilege user upload an unsanitized SVG through the bazar ImageField, which the server stores byte-identical and serves as image/svg+xml, so script executes in the browser of anyone who opens the entry or navigates to the stored file. The vulnerable sink is a sibling of the one fixed in 4.6.7 for GHSA-67v5-7pfv-pp9m (CVE-2026-104461): the cleanFile() denylist was added only to FileField, leaving ImageField with an isImage() gate that passes svg because it sits in the default attach_config.ext_images list, so stock configurations are exposed. A vendor fix is available in 4.7.0, and the GitHub advisory documents a public proof-of-concept with recorded live reproduction on v4.6.7; it is not verified here as working exploit code, and there is no CISA KEV signal of active exploitation.
RemediationAI
Vendor-released patch: YesWiki 4.7.0, which is the fixed version for the composer/yeswiki/yeswiki package (vulnerable below 4.7.0); upgrade via the vendor advisory at https://github.com/YesWiki/yeswiki/security/advisories/GHSA-c5q6-7233-3v6g. If upgrading immediately is not possible, the advisory's suggested fix is to apply the same cleanFile() gate (or an SVG sanitizer/purifier) in ImageField before move_uploaded_file, or to extend the denylist to the shared upload path so both field types inherit it, since the 4.6.7 fix covered FileField only; note that the current denylist is keyed on the client-supplied extension, so the server should re-check the actual content type. A configuration-level compensating control is to remove svg from attach_config.ext_images, which closes the upload path described here but blocks legitimate SVG image uploads for all bazar image fields. Restricting who can reach POST /api/entries/{formId} or which forms expose ImageField reduces exposure but does not fix the underlying storage sink, because the entries API currently accepts any authenticated user via the acl '+' option.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-79 (stored cross-site scripting) in YesWiki's bazar field layer. In 4.6.7 the vendor remediated a form-upload XSS (GHSA-67v5-7pfv-pp9m) by adding cleanFile(), an extension-keyed denylist of svg/html/htm, to tools/bazar/fields/FileField.php only. The sibling class tools/bazar/fields/ImageField.php instead calls move_uploaded_file() and chmod() at lines 218-219 with no cleanFile(), purifier or sanitizeSVG call anywhere in the file; its sole gate is isImage(), which consults attach_config.ext_images in tools/attach/config.yaml, whose default value 'avif|gif|jpeg|png|jpg|svg|webp' includes svg. The upload path is the entries API, POST /api/entries/{formId}, gated by options={'acl':{'+'}} so any authenticated user can submit a multipart imagebf_image=@payload.svg to a form that uses an ImageField. The stored file is byte-identical to the upload (md5-compared in the reported reproduction) and served with Content-Type: image/svg+xml, so script runs on the wiki origin and the advisory rates scope as changed. Because the denylist is keyed on the client-supplied extension, the advisory's suggested fix notes the server should at minimum re-check the content type rather than trusting the filename.
Know when Yeswiki gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-reachable via the entries API but requires a low-privilege account (PR:L) and victim viewing (UI:R); stored XSS crosses into the browser context (S:C) with limited C/I and no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
YesWiki before 4.7.0 contains a stored cross-site scripting vulnerability that allows low-privilege authenticated users to upload unsanitized SVG files through the bazar ImageField class. Attackers can submit a malicious SVG via the image field of the entries API, which is served as image/svg+xml and executes script for users viewing the entry or file.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
YesWiki is a wiki system written in PHP. Rated high severity (CVSS 8.6), this vulnerability is remotely exploitable, no
YesWiki is a wiki system written in PHP. Rated critical severity (CVSS 10.0), this vulnerability is remotely exploitable
Remote code execution in YesWiki prior to 4.6.6 allows unauthenticated attackers to inject arbitrary PHP via the Bazar C
YesWiki is a wiki system written in PHP. Rated critical severity (CVSS 9.1), this vulnerability is remotely exploitable,
YesWiki is a wiki system written in PHP. Rated high severity (CVSS 7.6), this vulnerability is remotely exploitable, no
Unauthenticated server-side request forgery in YesWiki before 4.7.0 lets any remote visitor make the wiki server issue H
YesWiki is a wiki system written in PHP. Rated medium severity (CVSS 5.8), this vulnerability is remotely exploitable, n
YesWiki is a wiki system written in PHP. Rated medium severity (CVSS 6.3), this vulnerability is remotely exploitable, n
Cross Site Scripting vulnerability in YesWiki v.4.54 allows a remote attacker to execute arbitrary code via a crafted pa
YesWiki version <= cercopitheque beta 1 contains a PHP Object Injection vulnerability in Unserialising user entered para
Authorization bypass in YesWiki before 4.6.7 lets unauthenticated remote attackers call admin-only API routes when the i
Unauthenticated attackers can delete or overwrite federated entries in YesWiki instances before 4.6.7 that have Activity
EUVD-2026-109460
GHSA-vp3x-8xh2-ppc9
NVD
CVE.org
EPSS
Exploit-DB