Relevanssi <= 4.28.3 - Unauthenticated Stored Cross-Site Scripting via Comment Content
The Relevanssi – A Better Search plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Content in all versions up to, and including, 4.28.3 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This is only exploitable when the administrator has configured a non-empty value for the "Allowable tags in excerpts" setting, such as the default example value of <p><a><strong>, as the prefix-matching regex must have an allowable tag whose name is a prefix of the injected tag name.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-97641
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 7 Nov 2026, 02:53 UTC · Revision 1
Source evidence
Relevanssi <= 4.28.3 - Unauthenticated Stored Cross-Site Scripting via Comment Content
core-osv · Original sourcePublished 2 Oct 2026, 07:39 UTC
The Relevanssi – A Better Search plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Content in all versions up to, and including, 4.28.3 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This is only exploitable when the administrator has configured a non-empty value for the "Allowable tags in excerpts" setting, such as the default example value of <p><a><strong>, as the prefix-matching regex must have an allowable tag whose name is a prefix of the injected tag name.
osv:CVE-2026-97641
Complete source record
{
"id": "3069a6c8b21065e8f7b50f2aa6c79b4926cf8284b8766fb757b7249c4bab5efb",
"url": "https://osv.dev/vulnerability/CVE-2026-97641",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Relevanssi <= 4.28.3 - Unauthenticated Stored Cross-Site Scripting via Comment Content",
"summary": "The Relevanssi – A Better Search plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Content in all versions up to, and including, 4.28.3 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This is only exploitable when the administrator has configured a non-empty value for the \"Allowable tags in excerpts\" setting, such as the default example value of <p><a><strong>, as the prefix-matching regex must have an allowable tag whose name is a prefix of the injected tag name.",
"evidence": "osv:CVE-2026-97641",
"products": [],
"severity": "high",
"structured": {
"id": "CVE-2026-97641",
"aliases": [
"CVE-2026-97641"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/msaari/relevanssi",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "3dddec3416fbda298e18649127f31557398d10b0"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "0"
},
{
"last_affected": "4.28.3"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"fixed": "3dddec3416fbda298e18649127f31557398d10b0"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"4.28.3",
"4.28.2",
"4.28.1",
"4.28.0",
"4.27.2",
"4.27.1",
"4.27.0",
"4.26.1",
"4.26.0",
"4.25.0",
"4.24.6",
"4.24.5",
"4.24.4",
"4.24.3",
"4.24.2",
"4.24.1",
"4.24.0",
"4.23.1",
"4.23.0",
"4.22.2",
"4.22.1",
"4.22.0",
"4.21.2",
"4.21.1",
"4.21.0",
"4.20.0",
"4.19.0",
"4.18.4",
"4.18.3",
"4.18.2",
"4.18.1",
"4.18.0",
"4.17.1",
"4.17.0",
"4.16.0",
"4.15.2",
"4.15.1",
"4.15.0",
"4.14.7",
"4.14.6",
"4.14.5",
"4.14.4",
"4.14.3",
"4.14.2",
"4.14.1",
"4.14.0",
"4.13.3.1",
"4.13.3",
"4.13.2",
"4.13.1",
"4.13.0",
"4.12.5",
"4.12.4",
"4.12.3",
"4.12.2",
"4.12.1",
"4.12.0",
"4.11.1",
"4.11.0",
"4.10.2",
"4.10.1",
"4.10.0",
"4.9.1",
"4.9.0",
"4.8.3",
"4.8.2",
"4.8.1",
"4.8.0",
"4.7.2",
"4.7.1",
"4.7.0",
"4.6.0",
"4.5.0",
"4.4.1",
"4.4.0",
"4.3.4",
"4.3.3",
"4.3.2",
"4.3.1.1",
"4.3.1",
"4.3.0",
"4.2.0",
"4.1.4",
"4.1.3",
"4.1.2",
"4.1.1.2",
"4.1.1",
"4.1.0.1",
"4.1",
"4.0.11",
"4.0.10.1",
"4.0.10",
"4.0.9",
"4.0.8",
"4.0.7",
"4.0.6",
"4.0.5",
"4.0.4",
"4.0.3",
"4.0.2",
"4.0.1",
"3.6.2.2",
"3.6.2",
"3.6.1",
"3.6.0",
"3.5.12",
"3.5.11",
"3.5.10",
"3.5.9.1",
"3.5.9"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-97641.json"
}
}
],
"modified": "2026-10-28T02:30:49.336977229Z",
"provider": "osv",
"references": [
"https://plugins.trac.wordpress.org/browser/relevanssi/tags/4.28.3/lib/admin-ajax.php#L492",
"https://plugins.trac.wordpress.org/browser/relevanssi/tags/4.28.3/lib/excerpts-highlights.php#L216",
"https://plugins.trac.wordpress.org/browser/relevanssi/tags/4.28.3/lib/excerpts-highlights.php#L421",
"https://plugins.trac.wordpress.org/browser/relevanssi/tags/4.28.3/lib/excerpts-highlights.php#L883",
"https://plugins.trac.wordpress.org/browser/relevanssi/tags/4.28.3/lib/indexing.php#L1067",
"https://www.wordfence.com/threat-intel/vulnerabilities/id/47751ff1-2f22-4335-8e75-7ff1b6214426?source=cve",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97641.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-97641",
"https://github.com/msaari/relevanssi/commit/3dddec3416fbda298e18649127f31557398d10b0"
],
"provider_metadata": {
"cwe_ids": [
"CWE-79"
],
"cna_assigner": "Wordfence",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/97xxx/CVE-2026-97641.json"
}
},
"related_cves": [
{
"value": "CVE-2026-97641",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 517527,
"published_at": "2026-10-02T07:39:23.182+00:00"
}