Skip to main content

YesWiki CVE-2026-116826

| EUVDEUVD-2026-110533 HIGH
Server-Side Request Forgery (SSRF) (CWE-918)
2026-10-26 VulnCheck GHSA-4vj3-p3vv-p25q
8.2
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as YesWiki administrator
  2. Delivery
    POST crafted file:// and internal URLs in files[] to /api/pages/{tag}/duplicate
  3. Exploit
    curl_init fetches local files or cloud metadata unfiltered
  4. Execution
    Responses streamed into web-accessible files/ directory
  5. Impact
    Retrieve stored credentials via unauthenticated GET

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

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

Exploitation Conditions

Requires an authenticated YesWiki administrator account: both a route-level ACL (@admins) and an in-method denyAccessUnlessAdmin() check at ApiController.php:596 are enforced, and the GHSA confirms the public-API-mode bypass does not reach this route. The duplication API (/api/pages/{tag}/duplicate) is enabled by default. The attacker must control the files[] array in the POST body (trivially satisfiable alongside the required originalContent, sourceUrl, originalTag, type keys). For secret exfiltration the files/ directory must be web-accessible, which is the default layout. The practical limiting factor is the admin-privilege requirement (robustly enforced by two independent checks); there is no additional non-default configuration, user interaction, or platform-specific requirement beyond having PHP curl support for the file:// scheme.

Impact

Signals are consistent and point to a genuine but privilege-gated issue rather than a mass-exploitation emergency. The CVSS 4.0 base score of 8.2 (High) is driven by network vector, low complexity, no user interaction, and a scope/subsequent-system confidentiality impact (SC:H) - the latter because fetched responses land in the publicly readable files/ directory, so secrets (wakka.config.php DB credentials, cloud IAM metadata, /etc/passwd) become readable by any unauthenticated visitor. The critical tempering factor is PR:H: exploitation requires an authenticated administrator, robustly enforced by two independent checks (route ACL @admins plus in-method denyAccessUnlessAdmin()), and the GHSA confirms the public-API-mode bypass (GHSA-v527-6r4j-j2w2) does NOT reach this route. The other intelligence signals corroborate low urgency: EPSS is 0.24% (15th percentile), the SSVC decision is Exploitation=none / Automatable=no / Technical Impact=partial, and the vulnerability is NOT in CISA KEV - exploitation status is 'no public exploit identified at time of analysis' beyond the advisory PoC. The vuln.today priority of 'this_week' aligns with that: a credible, detailed advisory with a working proof-of-concept warrants prompt patching, but the admin-only precondition and absence of automatability make widespread opportunistic exploitation unlikely. CONFLICTING DATA TO VERIFY: the description, EUVD, and Packagist footer state the fix is 4.7.0 ('fixed in: 4.7.0') and patch is 'Available from vendor', yet the GHSA advisory body states 'Fix status: not fixed', 'No fix exists on any branch', and lists the latest checked release as v4.6.7 - defenders should independently confirm that 4.7.0 actually exists and contains the SsrfUrlValidator::curlPin() fix before relying on it.

Exploit ScenarioDerived

An attacker who has obtained or been granted a YesWiki administrator account (e.g. via a compromised admin credential or a malicious/over-privileged internal user) POSTs to the default-enabled /api/pages/{tag}/duplicate endpoint with file:// or internal URLs placed in the files[] array. Because downloadFile() passes these URLs straight to curl_init() with CURLPROTO_ALL and no SSRF validation, the server reads local files or cloud metadata and streams the response into the web-accessible files/ directory under a predictable name. A detailed proof-of-concept with working curl commands is published in the GHSA advisory, so the attacker then simply fetches https://target/files/wakka.config.php or /files/meta-data to retrieve database credentials or IAM tokens.

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

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

Alert me

AnalysisAIv1 – Oct 28, 2026

Server-side request forgery in YesWiki's page duplication API (DuplicationManager::downloadFile) lets an authenticated administrator drive the server into fetching arbitrary URLs - including file:// paths and internal or cloud-metadata endpoints - and writes the fetched bytes into the web-accessible files/ directory with no filename extension restriction. All releases up to and including 4.6.7 are confirmed affected and the vendor has released 4.7.0 as the fix. Exploitation is gated by the admin privilege requirement, which is enforced by both a route-level @admins ACL and an in-method denyAccessUnlessAdmin() check; there is no CISA KEV listing and SSVC records exploitation as none, EPSS is low at 0.24% (15th percentile), while a public proof-of-concept request sequence is published in the vendor advisory (a PoC reference exists; it is not verified as working exploit code).

RemediationAI

Upgrade to YesWiki 4.7.0, the vendor-released fixed version; the vendor confirms a patch is available, and this is the only complete fix since the vulnerable sink itself is what changes. For operators who cannot upgrade immediately, the vendor's interim guidance is to restrict access to the duplication API (/api/pages/{tag}/duplicate) to trusted networks - for example by limiting the endpoint to internal addresses or administrative VLANs at the reverse proxy - with the trade-off that legitimate remote administrators lose the duplication feature, and to monitor outbound connections from the web server process, which detects exploitation attempts but does not prevent them. Also treat the files/ directory as untrusted: content written there by this path is served to any unauthenticated visitor, so review and clear stored duplication artifacts and remove public read access to files/ where operationally possible, at the cost of breaking legitimate file downloads. For code-level remediation the advisory recommends routing the curl handle through SsrfUrlValidator::curlPin() before curl_exec(), as done at all other outbound-request sinks, restricting CURLOPT_PROTOCOLS to CURLPROTO_HTTP | CURLPROTO_HTTPS to block file:// and gopher://, and validating the output filename to prevent path traversal. Vulnerability intelligence sources rate this as a this-week priority with partial technical impact and no observed exploitation.

Affected VersionsENISA

yeswiki 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-918 (server-side request forgery) in YesWiki's page duplication service, a PHP/Composer application (package yeswiki/yeswiki). DuplicationManager::downloadFile() in includes/services/DuplicationManager.php (around lines 324-344) takes each element of the attacker-supplied files array from the POST body and passes it unmodified to curl_init() before streaming the response to disk through CURLOPT_FILE. Unlike every other outbound-request sink in the codebase, this function never calls SsrfUrlValidator::curlPin(), sets no CURLOPT_PROTOCOLS restriction (so libcurl's default CURLPROTO_ALL applies, including file:// and gopher://), performs no host, IP or scheme validation, applies no extension check to the URL or the output filename, and disables CURLOPT_SSL_VERIFYPEER and CURLOPT_SSL_VERIFYHOST. The reachable path is ApiController::duplicatePage() (route /api/pages/{tag}/duplicate, registered at includes/controllers/ApiController.php:592 with ACL {"@admins"}) calling DuplicationManager::importDistantContent(), which iterates $req['files'] and calls downloadFile() for each URL after merely checking the presence of originalContent, sourceUrl, originalTag and type. The GHSA notes the public-API-mode bypass documented in GHSA-v527-6r4j-j2w2 does not reach this route because the @admins ACL sets $requiresGroup=true in ApiService::isAuthorized(). The trigger is a POST to the duplication endpoint with crafted files[] entries; the result is a read-back SSRF primitive whose output lands at predictable public paths (for example files/passwd from file:///etc/passwd, or files/wakka.config.php from the application config holding database credentials).

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.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N
vuln.today AI 6.8 MEDIUM

Network-reachable API, low complexity, but requires admin authentication so PR:H; stored responses expose data to unauthenticated visitors giving scope change S:C with high confidentiality and no integrity/availability impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Oct 27, 2026 - 01:15 EUVD
CVE Published
Oct 26, 2026 - 23:05 cve.org
HIGH 8.2

DescriptionCVE.org

YesWiki before 4.7.0 contains a server-side request forgery vulnerability in DuplicationManager::downloadFile() that allows authenticated administrators to make arbitrary outbound requests via the files array. Attackers can POST file:// or internal URLs to /api/pages/{tag}/duplicate, storing local files, cloud metadata, or database credentials in the publicly accessible files/ directory.

Executive ViewAI

Why It Matters

YesWiki versions up to 4.6.7 contain a server-side request forgery vulnerability in the page duplication API that allows an authenticated administrator to force the server to fetch arbitrary URLs and store the content in a web-accessible directory. This could lead to sensitive internal data exposure or malware hosting, impacting organizations using YesWiki for their public-facing websites. Leadership should prioritize remediation due to the high severity and potential for reputational and operational damage.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 85% exploitable
Prevalence
Low
niche open-source French wiki engine, limited enterprise footprint
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment CIRCL GitHub VulDB

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.2%
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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

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