---
id: "CVE-2026-116207"
kind: "vulnerability"
aliases: ["CVE-2026-116207"]
title: "YesWiki: unauthenticated SQL injection in Bazar search reads password hashes"
severity: "critical"
cvss: 9.1
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["mysql", "package", "php", "self-hosted", "yeswiki"]
not_affected_if: ["patched-version"]
published_at: "2026-10-25T14:17:01+00:00"
first_seen_at: "2026-10-25T14:41:23+00:00"
updated_at: "2026-10-25T14:42:09+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-116207", "first_seen_at": "2026-10-25T14:41:23+00:00"}]
---

# YesWiki: unauthenticated SQL injection in Bazar search reads password hashes

YesWiki's public Bazar entries search API places field names from the query and searchfields parameters into a backtick-quoted SQL alias that is escaped only with mysqli_real_escape_string. An unauthenticated attacker can inject subqueries to read data such as user password hashes or exhaust database threads with SLEEP().

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed YesWiki version in the wiki's package or version file; versions 4.6.0 up to but not including `4.7.0`, and 5.0.0-alpha1 up to but not including `5.0.0-alpha4`, are affected
- Confirm whether the public Bazar entries search API is reachable from the internet on the instance

## Fix

- Upgrade YesWiki 4.x to `4.7.0` or later
- Upgrade YesWiki 5.0 alpha builds to `5.0.0-alpha4` or later
- Rotate user passwords and session secrets if the instance was reachable before patching, since password hashes may have been read

## Timeline

- 2026-10-25T14:41:23+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-116207

## From the sources

YesWiki 4.6.0 before 4.7.0 and 5.0.0-alpha1 before 5.0.0-alpha4 contains an unauthenticated SQL injection vulnerability in SearchManager::prepareSearchRequest(). Field names from the query and searchfields parameters of the public Bazar entries search API are placed in a backtick-quoted alias escaped only with mysqli_real_escape_string. Attackers can supply a backtick to inject subqueries, reading data such as user password hashes or exhausting database threads with SLEEP().

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
