Frappe Framework before 15.111.0 and 16.x before 16.21.0 Server-Side Template Injection via Message Fields
Impact
Frappe Framework versions before 15.111.0 and 16.x before 16.21.0 have a server-side template injection vulnerability. An authenticated attacker can inject template expressions via user-controlled message fields. This allows evaluation in an unrestricted context.
Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.Affected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
frappe · VulnCheck
frappe
2 ranges
frappe · VulnCheck
frappe
Package identity
pkg:pypi/frappeExplore frappe →Identity supplied by VulnCheck. Version matching requires compatible range evidence.
Compare with this publisher’s ranges. This does not inspect your installation.
affected
16.0.0 → before 16.21.0
semver versions
unaffected
16.21.0
semver versions
Other versions: unaffected
frappe · VulnCheck
frappe
2 ranges
frappe · VulnCheck
frappe
Package identity
pkg:pypi/frappeExplore frappe →Identity supplied by VulnCheck. Version matching requires compatible range evidence.
Compare with this publisher’s ranges. This does not inspect your installation.
affected
0 → before 15.111.0
semver versions
unaffected
15.111.0
semver versions
Other versions: unaffected
Original source description
Frappe Framework before 15.111.0 and 16.x before 16.21.0 contains a server-side template injection vulnerability because user-controlled message fields are rendered as templates without neutralization. An authenticated attacker holding a common operational role can inject template expressions that the server evaluates in an unrestricted context.
Inside the record
Evidence available
Describes the evidence in this view, not whether the product is safe.
Original records
CVE-2026-119144View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.
cve.new JSON →Environment requirements
These conditions apply together as specified by the publisher. A matching product name alone does not establish exposure.
VulnCheck · platform conditions
Any condition may hold
Vulnerable product
cpe:2.3:a:frappe:frappe:*:*:*:*:*:*:*:*From (inclusive): 16.0.0
Before: 16.21.0
Any condition may hold
Vulnerable product
cpe:2.3:a:frappe:frappe:*:*:*:*:*:*:*:*Before: 15.111.0
Original applicability statements
[
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:frappe:frappe:*:*:*:*:*:*:*:*",
"versionEndExcluding": "16.21.0",
"versionStartIncluding": "16.0.0"
}
]
}
]
},
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:frappe:frappe:*:*:*:*:*:*:*:*",
"versionEndExcluding": "15.111.0"
}
]
}
]
}
]Contributing organizations · 1
Assigning organization
What changed
Follow changesLarge field values are marked as truncated previews. Original source snapshots remain retained.