Description
Kirby is an open-source content management system. In versions prior to 4.9.1 and 5.4.1, the underlying URL methods for the KirbyTags and image blocks components did not filter out malicious URL values that resolve to script execution. The vulnerability affects four first-party Kirby renderers that produce `<a href="…">` output from editor-supplied field values: the (`link: …)` KirbyTag, the `link`: parameter of the `(image: …)` KirbyTag when it does not resolve to a known file or `self`, the `link` field of the built-in image block, and the HTML importer for the `blocks` field (which accepted the same malicious input as the image block `link` field). While simple `avascript:` URLs were already deactivated by treating them as a relative path and prepending a single slash to the URL, the use of URLs of the format `javascript://x%0A…` bypasses this protection. The `vbscript:`, `data:`, `livescript:`, `mocha:` and `jar:` schemes are affected by the same underlying gap. This issue has been fixed in versions 4.9.1 and 5.4.1.
Published: 2026-07-16
Score: 8.4 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability is a cross‑site scripting flaw that permits attacker‑controlled URLs to bypass URL filtering in four Kirby renderers that produce `<a href>` links. The flaw resides in the URL methods for KirbyTags and image blocks, which fail to filter malicious URL schemes such as `javascript://`, `vbscript://`, `data://`, `livescript://`, `mocha://`, and `jar://`. Notably, the `(link: …)` KirbyTag, the `link` parameter of the `(image: …)` tag when it does not resolve to a known file or `self`, the `link` field of the built‑in image block, and the HTML importer for the `blocks` field all accept these problematic URLs, bypassing the earlier deactivation of plain `javascript:` URLs. Based on the description, it is inferred that an authenticated editor who can add or edit content can embed such URLs, resulting in arbitrary script execution in all site visitors’ browsers, potentially exposing credentials, defacing content, or exfiltrating data. This weakness is CWE‑79, and the issue has been addressed in releases 4.9.1 and 5.4.1.

Affected Systems

Vulnerable installations of the Kirby content management system that use the link KirbyTag, the link parameter of the image KirbyTag when it does not resolve to a file or self, the link field of the image block, and the HTML importer for the blocks field are affected. The issue applies to all releases prior to 4.9.1 on the Kirby 4 series and prior to 5.4.1 on the Kirby 5 series, including any front‑end pages that render editor‑supplied content.

Risk and Exploitability

The CVSS score is 8.4, indicating a high‑severity problem. The EPSS score is less than 1 %, pointing to a very low probability of exploitation as of the current data. Kirby is not listed in CISA KEV. Based on the description, it is inferred that attackers can exploit the flaw by inserting crafted URLs into editor‑supplied content such as pages, posts, or blocks; no specialized environment is required, and the vulnerability is reachable from the public‑facing front‑end of the site. Once a user visits a page containing the malicious link, the script executes in the victim's browser, enabling the attacker to run arbitrary code with the victim's permissions.

Generated by OpenCVE AI on July 31, 2026 at 01:12 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Kirby to version 4.9.1 or 5.4.1, or later, where the URL filtering is fixed.
  • If an upgrade is not possible, explicitly remove or escape any link URLs in Kirby tags and image blocks that use unsupported schemes; consider disabling the link field or sanitizing it to allow only http, https, and mailto schemes.
  • Scan current site content for javascript://, vbscript://, data://, livescript://, mocha://, jar:// patterns and delete them; exercise vigilance for any newly added content before deployment.

Generated by OpenCVE AI on July 31, 2026 at 01:12 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-qvjf-922g-pj44 Kirby CMS vulnerable to cross-site scripting (XSS) from links in KirbyTags and image blocks in the site frontend
History

Sat, 18 Jul 2026 04:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 16 Jul 2026 23:45:00 +0000

Type Values Removed Values Added
First Time appeared Getkirby
Getkirby kirby
Vendors & Products Getkirby
Getkirby kirby

Thu, 16 Jul 2026 22:15:00 +0000

Type Values Removed Values Added
Description Kirby is an open-source content management system. In versions prior to 4.9.1 and 5.4.1, the underlying URL methods for the KirbyTags and image blocks components did not filter out malicious URL values that resolve to script execution. The vulnerability affects four first-party Kirby renderers that produce `<a href="…">` output from editor-supplied field values: the (`link: …)` KirbyTag, the `link`: parameter of the `(image: …)` KirbyTag when it does not resolve to a known file or `self`, the `link` field of the built-in image block, and the HTML importer for the `blocks` field (which accepted the same malicious input as the image block `link` field). While simple `avascript:` URLs were already deactivated by treating them as a relative path and prepending a single slash to the URL, the use of URLs of the format `javascript://x%0A…` bypasses this protection. The `vbscript:`, `data:`, `livescript:`, `mocha:` and `jar:` schemes are affected by the same underlying gap. This issue has been fixed in versions 4.9.1 and 5.4.1.
Title Kirby: Cross-site scripting (XSS) from links in KirbyTags and image blocks in the site frontend
Weaknesses CWE-79
References
Metrics cvssV4_0

{'score': 8.4, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-18T03:18:56.903Z

Reserved: 2026-05-12T00:51:29.085Z

Link: CVE-2026-45368

cve-icon Vulnrichment

Updated: 2026-07-18T03:18:52.740Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-31T01:15:18Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')