---
id: "CVE-2026-114407"
kind: "vulnerability"
aliases: ["CVE-2026-114407"]
title: "e107 CMS: reflected XSS in search.php author parameter"
severity: "medium"
cvss: 6.1
epss: 0.00255
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["e107", "package", "php", "self-hosted"]
not_affected_if: ["patched-version"]
published_at: "2026-10-21T13:18:32+00:00"
first_seen_at: "2026-10-23T21:57:28+00:00"
updated_at: "2026-10-25T04:03:29+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-114407", "first_seen_at": "2026-10-23T21:57:28+00:00"}, {"source": "epss", "url": "https://api.first.org/data/v1/epss?cve=CVE-2026-114407", "first_seen_at": "2026-10-24T13:15:54+00:00"}]
---

# e107 CMS: reflected XSS in search.php author parameter

e107 CMS before 2.3.13 reflects the author GET parameter in search.php into an HTML input tag without escaping. An attacker who gets a victim to open a crafted link can run JavaScript in the victim's browser session.

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

## How to check

- Check the installed e107 version in the site's version file or admin dashboard; versions below `2.3.13` are affected.
- Request `search.php` with an `author` parameter containing HTML-breaking characters and see whether it is echoed unescaped (unknown whether sources give an exact test).

## Fix

- Upgrade e107 to `2.3.13` or later.
- Until upgraded, unknown whether a WAF rule or parameter filtering is an adequate workaround per the sources.

## Timeline

- 2026-10-23T21:57:28+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-114407
- 2026-10-24T13:15:54+00:00 epss https://api.first.org/data/v1/epss?cve=CVE-2026-114407

## From the sources

e107 CMS before 2.3.13 contains a reflected cross-site scripting vulnerability that allows unauthenticated attackers to inject malicious HTML by manipulating the author GET parameter in search.php, which is parsed with parse_str() and concatenated unescaped into a rendered input tag via the form handler's 'other' option key. Attackers can craft a single GET request containing a crafted author parameter to break out of the HTML input tag and inject an img element with an onerror handler, executing arbitrary JavaScript in the victim's browser session.

---

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