CVE-2026-27120

Leaf-kit html escaping does not work on characters that are part of extended grapheme cluster

State
Published
Severity
6.1 Medium
Published
Feb 20, 2026
Updated
Feb 24, 2026
Reserved
Feb 17, 2026

Read the record on cve.org

Description

Leafkit is a templating language with Swift-inspired syntax. Prior to 1.4.1, htmlEscaped in leaf-kit will only escape html special characters if the extended grapheme clusters match, which allows bypassing escaping by using an extended grapheme cluster containing both the special html character and some additional characters. In the case of html attributes, this can lead to XSS if there is a leaf variable in the attribute that is user controlled. This vulnerability is fixed in 1.4.1.

Scores

CVSSScoreVectorSource
3.16.1 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:NGitHub_M

Weaknesses

  • CWE-75 Failure to Sanitize Special Elements into a Different Plane (Special Element Injection)
  • CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
  • CWE-87 Improper Neutralization of Alternate XSS Syntax

Affected Products

ProductVersions
leaf-kitvapor
  • < 1.4.1Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.