Zero Radar
← feed
CriticalVulnerabilityCVE-2026-119716updated 30 Oct 2026, 20:26 UTC

pybars3 template engine lets crafted templates run Python code

If an app uses pybars3 to render templates that come from users or other untrusted sources, someone could hide Python commands in the template and make the server run them. That can mean full control of the server.

Official, 2 sources
SeverityCriticalCVSS 9.2 of 10
Being exploited?UnclearNo reports either way yet
Fix available?UnclearNo fixed version published in the sources yet
How sure is this?Official, 2 sourcesBacked by an official source

How the attack works simplified

  1. 1Crafted templateAttacker writes a Handlebars template
  2. 2App renders templateApplication passes template to pybars3
  3. 3Injection triggersBracketed segment breaks out of string literal
  4. 4Python executesCode runs inside the application process
  5. ResultAttacker runs code on the server

What happened

pybars3 through 0.9.7 has a code injection flaw in pybars/_compiler.py: unescaped bracketed path segments in Handlebars templates can break out of string literals and execute Python in the application process.

Why it is dangerous: An attacker who can supply or influence template content can run arbitrary Python with the application's privileges, potentially reading data, changing files, or taking over the host.

Are you affected?

You are affected if you run pybars3 version 0.9.7 or earlier and render Handlebars templates that include untrusted input, such as user-authored templates or template content taken from external sources.

pybars3 through 0.9.7

What to do

  1. Check whether your application uses pybars3 and which version is installed.
  2. Stop rendering templates that come from untrusted users until the issue is resolved.
  3. Upgrade pybars3 to a version newer than 0.9.7 once a fixed release is confirmed in the official advisory.
  4. Review any templates already stored or accepted from untrusted sources for suspicious bracketed path segments.

Timeline

  1. 30 Oct 2026, 16:17 UTC
    Publicly disclosed
  2. 30 Oct 2026, 16:17 UTC
    Reported by NVD · NVD
  3. 30 Oct 2026, 16:18 UTC
    Picked up by Zero Radar
  4. 30 Oct 2026, 20:26 UTC
    GitHub Advisory reported on it · GitHub Advisory

Sources 2 reports, oldest first

Official vendor, government CERT or advisory database

Technical details

ID
CVE-2026-119716 · GHSA-xvx4-89q3-mchg
CVSS
9.2 / 10
EPSS
0.4% chance of exploitation within 30 days
Disclosed
30 Oct 2026, 16:17 UTC
On Zero Radar
30 Oct 2026, 16:18 UTC (1 min after disclosure)
Last change
30 Oct 2026, 20:26 UTC

The plain-language parts and the attack diagram were written by an AI model (anthropic/claude-haiku-5.5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works

pybars3 template engine lets crafted templates run Python code · Zero Radar