Skip to main content

YesWiki EUVDEUVD-2026-109467

| CVE-2026-116211 HIGH
SQL Injection (CWE-89)
2026-10-25 VulnCheck GHSA-c22v-7hq8-8gqq
8.8
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach default Bazar entry-create form
  2. Delivery
    POST crafted date_maj_fiche payload
  3. Exploit
    Break out of time string literal
  4. Execution
    Inject sub-SELECT against wiki_users
  5. Impact
    Fetch page to read password hashes

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Unauthenticated exploitation requires a DEFAULT YesWiki install (versions 4.5.0 through at least 4.6.7): Bazar module ACL left at the default *, use_captcha:false (default per tools/security/config.yaml), and bazarIgnoreAcls:true (default), which together let EntryController::create() reach the sink via POST action=saisir_fiche with SQL metacharacters in the reserved date_maj_fiche field. The double-quote breakout further requires MySQL/MariaDB sql_mode with ANSI_QUOTES OFF (the default). An alternative authenticated path (POST /?api/entries/{formId}) needs only any registered account to satisfy the + route ACL. LIMITING FACTORS: mysqli provides no stacked-query support, so impact is confined to a read oracle (direct storage of a sub-SELECT result or blind time-based extraction) rather than arbitrary write/delete; hardened installs that restrict the Bazar module ACL, enable captcha, or set bazarIgnoreAcls:false remove the unauthenticated path and force the authenticated route.

Impact

Signals point consistently toward a genuine, near-term priority rather than a high-CVSS paper tiger. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N) describes remote, low-complexity, unauthenticated reachability, and the GHSA source evidence independently confirms an unauthenticated default-config path (module ACL *, use_captcha:false, bazarIgnoreAcls:true) reaching the same sink - so the PR:N claim is corroborated by mechanism, not just asserted. vuln.today assigns a 'this_week' decision label and the report originates from VulnCheck, both raising urgency. The GHSA advisory includes a concrete, step-by-step injection payload against wiki_users.password, so the exploitation technique is fully documented publicly even though no formal 'confirmed working exploit' flag is supplied. Tempering factors: there is no CISA KEV listing and no EPSS score in the input, so active-exploitation and statistical-exploitation-likelihood signals are simply MISSING - not low, absent - and should not be read as reassurance. Impact is bounded: mysqli allows no stacked queries, so this is a confidentiality read-oracle (C:H / VC:H) with only a single attacker-controlled row inserted (I:L / VI:L) and no availability impact. Net: credible unauthenticated password-hash disclosure in default installs with a public PoC payload - treat as a real priority, weighted down only by the product's modest deployment footprint and absence of KEV/EPSS confirmation.

Exploit ScenarioDerived

An unauthenticated attacker locates a default-configured YesWiki Bazar form and POSTs an entry-creation request (action=saisir_fiche) whose date_maj_fiche field closes the time="..." literal and injects a sub-SELECT against wiki_users, then fetches the created page to read back a username:password-hash pair. Because the CVSS vector is AV:N/AC:L/PR:N/UI:N and the GHSA advisory publishes a full working payload, the attack is network-based, low-complexity, and requires no authentication or user interaction on default installs.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 25, 2026

Unauthenticated SQL injection in YesWiki 4.5.0 through 4.6.7 lets an attacker break out of the double-quoted time literal that PageManager::save() builds from the reserved date_maj_fiche field, turning a single Bazar entry-creation INSERT into a read oracle against wiki_users and exposing password hashes. On a default installation (Bazar module ACL '*', use_captcha false, bazarIgnoreAcls true) the sink is reachable without credentials via POST action=saisir_fiche, while a registered account can reach the same sink through POST /?api/entries/{formId}. The vendor's GitHub advisory (GHSA-wjf7-hrf3-9gcx) publishes a proof-of-concept request; active exploitation in the wild is not confirmed in the available data, no EPSS or KEV signal is present, the vuln.today priority is this_week, and the issue is fixed in 4.7.0.

RemediationAI

Vendor-released patch: 4.7.0 - upgrade the composer/yeswiki/yeswiki package to 4.7.0 or later, as recorded in advisory GHSA-wjf7-hrf3-9gcx (https://github.com/YesWiki/yeswiki/security/advisories/GHSA-wjf7-hrf3-9gcx). The upstream fix escapes $forcedDate at the sink with $this->dbService->escape($forcedDate) or validates date_maj_fiche as a strict datetime before save() is reached, so backporting that escaping or a strict date_maj_fiche format check is the direct code-level mitigation. If upgrading is not immediately possible, the unauthenticated path can be closed on a default install by changing the Bazar module ACL from the default '*' to a restricted group, enabling captcha (use_captcha true instead of the default false) and setting bazarIgnoreAcls to false; note the trade-off that this does not remove the authenticated route through POST /?api/entries/{formId}, which remains available to any registered account, so account provisioning must also be restricted. Enabling ANSI_QUOTES in the MySQL/MariaDB sql_mode would neutralize the double-quote breakout but is likely to break application SQL that relies on double-quoted string literals, and running the YesWiki database user with least privilege limits what the injected sub-SELECT can read. No vendor-released patch other than 4.7.0 is identified in the available data.

Affected VersionsENISA

yeswiki 4.5.0 <4.7.0

Affected Packages

euvd yeswiki fix: 4.7.0

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-89 in YesWiki's Bazar entry subsystem, written in PHP on top of mysqli. EntryManager::create() forwards the request field date_maj_fiche unmodified as the fifth argument ($forcedDate) of PageManager::save(); at includes/services/PageManager.php:381 the value is concatenated raw inside double quotes ($time = '"' . $forcedDate . '"';) and interpolated at line 385 into a single INSERT INTO ... SET statement, whereas every sibling column (tag, comment_on, owner, user, body, body_r) is passed through $this->dbService->escape(), i.e. mysqli_real_escape_string. Because the value arrives through the raw request payload rather than the action-attribute parser, nothing strips the embedded double quote, and with the default MySQL/MariaDB sql_mode (ANSI_QUOTES off) the injected quote terminates the string literal so the attacker can supply the NOT NULL columns as hex literals, embed a sub-SELECT against wiki_users (a different table, so no ER_1093 error), and comment out the original statement tail with -- -. mysqli supports no stacked queries, so the primitive is a read oracle (direct storage of a sub-SELECT result into a controlled page column, or blind time-based extraction) rather than arbitrary UPDATE or DELETE, which matches the assessed confidentiality-high / integrity-low impact. The $forcedDate parameter was introduced in 4.5.0 and the unescaped sink is present verbatim through 4.6.7 and on dev HEAD 15f9685; the trigger is not described as a race or memory-safety condition.

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

Vendor (VulnCheck) PRIMARY 8.8 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 8.2 HIGH

Default installs allow remote unauthenticated entry creation (AV:N/AC:L/PR:N/UI:N); password-hash disclosure is C:H, one attacker-controlled inserted row is I:L, and no availability impact gives A:N.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Oct 25, 2026 - 14:01 EUVD
CVE Published
Oct 25, 2026 - 13:20 cve.org
HIGH 8.8

DescriptionCVE.org

YesWiki 4.5.0 before 4.7.0 contains an SQL injection vulnerability in PageManager::save(), where the date_maj_fiche field of a Bazar entry-creation request is concatenated unescaped into an INSERT statement. Unauthenticated attackers on default installs can inject a sub-SELECT against wiki_users to exfiltrate password hashes.

Technical POC Analysis

CWE-89 (SQL injection) in YesWiki's PageManager::save(), includes/services/PageManager.php lines 380-385.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

YesWiki versions 4.5.0 through 4.6.7 contain a high-severity SQL injection flaw that allows unauthenticated attackers to extract sensitive data, including user password hashes, from the wiki database. This poses a serious risk to any organization using an affected YesWiki instance, as compromise could lead to credential theft and further network intrusion.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 78% exploitable
Prevalence
Low
niche open-source French wiki engine, limited enterprise footprint
Social Media
3
Sightings
Data Quality
4 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
High

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2025-31131 HIGH POC
8.6 Apr 01

YesWiki is a wiki system written in PHP. Rated high severity (CVSS 8.6), this vulnerability is remotely exploitable, no

CVE-2025-46348 CRITICAL POC
10.0 Apr 29

YesWiki is a wiki system written in PHP. Rated critical severity (CVSS 10.0), this vulnerability is remotely exploitable

CVE-2026-52778 CRITICAL POC
9.8 Jun 08

Remote code execution in YesWiki prior to 4.6.6 allows unauthenticated attackers to inject arbitrary PHP via the Bazar C

CVE-2024-51478 CRITICAL POC
9.1 Oct 31

YesWiki is a wiki system written in PHP. Rated critical severity (CVSS 9.1), this vulnerability is remotely exploitable,

CVE-2025-46349 HIGH POC
7.6 Apr 29

YesWiki is a wiki system written in PHP. Rated high severity (CVSS 7.6), this vulnerability is remotely exploitable, no

CVE-2026-116205 MEDIUM POC
6.9 Oct 25

Unauthenticated server-side request forgery in YesWiki before 4.7.0 lets any remote visitor make the wiki server issue H

CVE-2025-46347 MEDIUM POC
5.8 Apr 29

YesWiki is a wiki system written in PHP. Rated medium severity (CVSS 5.8), this vulnerability is remotely exploitable, n

CVE-2025-46346 MEDIUM POC
6.3 Apr 29

YesWiki is a wiki system written in PHP. Rated medium severity (CVSS 6.3), this vulnerability is remotely exploitable, n

CVE-2025-52277 MEDIUM POC
6.1 Sep 09

Cross Site Scripting vulnerability in YesWiki v.4.54 allows a remote attacker to execute arbitrary code via a crafted pa

CVE-2018-1000641 CRITICAL
9.8 Aug 20

YesWiki version <= cercopitheque beta 1 contains a PHP Object Injection vulnerability in Unserialising user entered para

CVE-2026-104467 CRITICAL
9.2 Oct 02

Authorization bypass in YesWiki before 4.6.7 lets unauthenticated remote attackers call admin-only API routes when the i

CVE-2026-104445 HIGH
8.8 Oct 02

Unauthenticated attackers can delete or overwrite federated entries in YesWiki instances before 4.6.7 that have Activity

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy