CVE-2026-73628: Serendipity reflected XSS in search clean-URL route

CVE-2026-73628 · Severity: medium · CVSS 6.1 · Published 2026-08-13

Serendipity is a popular open-source blogging and content management system. A reflected cross-site scripting (XSS) vulnerability in the search feature allows attackers to craft malicious links that execute arbitrary JavaScript in a victim's browser when clicked, potentially compromising session data and user accounts. The vulnerability affects versions 2.3.5 through 2.6.0 and has been patched in version 2.6.1.

Quick answers

Is CVE-2026-73628 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-73628 being exploited in the wild.
How severe is CVE-2026-73628?
Medium severity, with a CVSS score of 6.1, published 13 August 2026.
Which products and versions are affected?
Serendipity Project Serendipity >=2.3.5, <=2.6.0.
Is there a fix for CVE-2026-73628?
A patch was published on 2026: Fix released in version 2.6.1 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-73628 attacked?
It is attacked over the network.
Am I affected by CVE-2026-73628?
Check whether anything you run is named in the advisory. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

The vulnerability is a reflected XSS in the search clean-URL handler (/search/&lt;term&gt;) caused by improper input sanitization in include/functions_routing.inc.php, serveSearch() function. The flaw occurs because the sanitization pipeline executes urldecode() after HTML-encoding (htmlspecialchars() and strip_tags()), allowing a URL-encoded HTML payload to survive the encoding step as inert text, then be decoded back into live HTML and injected into the page. Attack requires no privileges and is network-accessible; a victim must click a crafted link, making user interaction a requirement. An attacker can execute arbitrary JavaScript in the victim's authenticated session. The fix involves reordering the sanitization pipeline to decode first, then sanitize (or dropping urldecode() entirely if the router already decodes the input).

Affected products

  • Serendipity Project Serendipity >=2.3.5, <=2.6.0

Timeline

  • 2026-07-26: disclosed: GitHub Security Advisory published
  • 2026-08-13: advisory: NVD and VulnCheck advisory published
  • 2026: patched: Fix released in version 2.6.1

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.