Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLocate page with {{bazarliste}} action
-
DeliveryCraft URL with malicious template GET parameter
-
ExploitDistribute crafted link to visitors
-
ExecutionBazarListeAction passes value to Twig unvalidated
-
PersistTwig renders attacker-chosen @bazar template
-
ImpactVisitors see defaced or mismatched layout
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File name/path control
|
| Exploitation Conditions | Requires a reachable YesWiki page that contains the {{bazarliste}} action - one of the most commonly used YesWiki actions, so this is a near-default precondition on Bazar-enabled sites; no authentication and no non-default configuration are needed. The attacker appends a template GET parameter, which BazarListeAction::formatArguments() passes to Twig after only htmlspecialchars() (no basename()/hasTemplate() validation). Key LIMITING factors that cap realistic risk: impact is bounded to display manipulation of templates within the @bazar namespace (all application-managed code); Twig's validateName() blocks namespace escape and filesystem reads such as /etc/passwd; the effect is non-persistent and only reaches a victim who actually follows the crafted link; and the potential PHP path-disclosure side effect requires display_errors=On, which is off in production configurations. |
| Impact | This is a genuinely low-to-moderate real-world priority despite being unauthenticated and network-reachable. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) correctly reflects an easy, unauthenticated GET-parameter trigger, but the only impact is integrity-low (VI:L) - display/template manipulation - with no confidentiality (VC:N) or availability (VA:N) effect, which is why the score sits at 6.9 (medium) rather than high. The signals are mutually consistent and point away from urgency: EPSS is 0.21% (11th percentile), SSVC reports Exploitation: none, and the vulnerability is NOT in CISA KEV. SSVC Automatable: yes and Technical Impact: partial, plus the vendor advisory's own detailed curl-based proof-of-concept, mean the issue is trivially reproducible at scale - but the resulting harm is cosmetic defacement of how Bazar entries render for a visitor who follows a crafted link, not data theft or code execution. The GHSA analysis explicitly rules out filesystem reads, namespace escape (blocked by Twig validateName), code execution, and credential disclosure. The vuln.today 'this_month' label is appropriate: patch within normal cycles, not an emergency. One conflict to resolve: the aggregate metadata (EUVD/Packagist) states fixed in 4.7.0 and 'Patch: Available from vendor,' while the GHSA advisory body states no released or unreleased version fixes BazarListeAction (the hardening commit d49140452 omitted this action) - verify the actual fixed build with the vendor before marking remediated. |
| Exploit ScenarioDerived | An unauthenticated attacker locates a YesWiki page using the very common {{bazarliste}} action, appends a crafted template GET parameter (e.g. ?template=blog) that selects an arbitrary template from the @bazar Twig namespace, and distributes that link. Any visitor following it sees the Bazar entries rendered in an unintended layout, producing defacement or confusion. A working public proof-of-concept (curl reproduction steps) is published in the vendor GHSA advisory; the input does not flag it as confirmed working exploit code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
Unauthenticated template-selection bypass in YesWiki before 4.7.0 lets remote attackers append a crafted template GET parameter to any page that uses the {{bazarliste}} action, forcing Bazar entries to render through an arbitrary template inside the @bazar Twig namespace. The parameter reaches Twig after only htmlspecialchars(), with no basename() or hasTemplate() check, so an attacker can swap layouts for every visitor who follows the crafted link, producing page defacement and user confusion. Impact stays within display manipulation: Twig's validateName() blocks namespace escape and filesystem reads, the effect is non-persistent, and no data modification or confidentiality loss was demonstrated. Risk signals are modest - EPSS 0.21% (11th percentile), SSVC exploitation 'none', not in CISA KEV, and a public proof-of-concept demonstration accompanies the advisory; no active exploitation is confirmed.
RemediationAI
Vendor-released patch: YesWiki 4.7.0 - upgrade from any 4.x release (including 4.6.0-4.6.7) or from v5.0.0-alpha1 to 4.7.0 or later, following the advisory at https://github.com/YesWiki/yeswiki/security/advisories/GHSA-qfv2-x8g4-qg27; note that the advisory's source analysis was written against a tree where the fix landed only via the unreleased hardening commit d49140452, which covered eight other actions and not BazarListeAction, so verify after upgrading that BazarListeAction carries basename()/hasTemplate() validation. If upgrading is not immediately possible, the advisory's suggested interim mitigations are: strip or reject the template query parameter on requests to pages containing Bazar listing actions using a reverse proxy or WAF rule (trade-off: legitimate URL-driven template selection through that parameter stops working, so confirm no live pages rely on it), or override BazarListeAction in a custom extension to reduce the value to its base filename and validate it against existing templates (trade-off: a local code fork that must be maintained across upgrades). Detection is limited to reviewing access logs for template= parameters on Bazar-listing pages, since the manipulation leaves no persistent trace.
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
YesWiki is a PHP wiki/CMS built on Twig templating, and its Bazar extension ships the {{bazarliste}} action, one of the most widely used actions for listing structured entries. BazarListeAction::formatArguments() reads template from the HTTP GET query string and applies only htmlspecialchars(), which encodes <, >, & and " but does not remove directory traversal sequences or constrain the value to a known template name. The value is then interpolated into an @bazar/ namespace render call - on the non-dynamic path via renderEntries() (with .tpl.html appended when no extension is present) and on the dynamic path via entries/index-dynamic-templates/{template}.twig. CWE-73 (external control of file name or path), reported by the upstream advisory as CWE-22, describes the root-cause class: attacker-controlled input determines which template resource is loaded. The mitigating layer is Twig's own FilesystemLoader::validateName(), which tracks directory depth and rejects names that would drop below the namespace root, so ../../../../etc/passwd fails with a LoaderError while within-namespace traversal (for example entries/index-dynamic-templates/../../target) still passes because the depth never goes negative. All reachable templates are application-managed code, and the config global with database credentials is registered only on the main Twig environment, not in the per-request render context, which bounds the impact to layout manipulation. A hardening commit (d49140452) added basename()/hasTemplate() validation to eight comparable actions but omitted BazarListeAction, leaving this the only action still accepting template names from unauthenticated GET requests.
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:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Unauthenticated network GET parameter (AV:N/AC:L/PR:N/UI:N); only low integrity impact from display manipulation, no confidentiality or availability effect, no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
YesWiki before 4.7.0 contains a path traversal vulnerability in BazarListeAction that allows unauthenticated attackers to select arbitrary templates within the @bazar Twig namespace via the template GET parameter. Attackers can append crafted template values to pages containing the bazarliste action to force unintended layouts, causing page defacement for visitors following the crafted link.
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
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
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-110529
GHSA-56wp-34hq-q74f
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB