CVE-2026-2415 Unsafe variable evaluation in email templates
Attackers can inject code into email templates to exfiltrate sensitive system configuration data, including database passwords and API keys.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-2415?
CVE-2026-2415 is a high-severity code injection vulnerability in pretix, published on 16 Feb 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Emails sent by pretix can utilize placeholders that will be filled with customer data. For example, when {name} is used in an email template, it will be replaced with the buyer's name for the final email. This mechanism contained two security-relevant bugs:
* It was possible to exfiltrate information about the pretix system through specially crafted placeholder names such as {{event.__init__.__code__.co_filename}}. This way, an attacker with the ability to control email templates (usually every user of the pretix backend) could retrieve sensitive information from the system configuration, including even database passwords or API keys. pretix does include mechanisms to prevent the usage of such malicious placeholders, however due to a mistake in the code, they were not fully effective for the email subject.
* Placeholders in subjects and plain text bodies of emails were wrongfully evaluated twice. Therefore, if the first evaluation of a placeholder again contains a placeholder, this second placeholder was rendered. This allows the rendering of placeholders controlled by the ticket buyer, and therefore the exploitation of the first issue as a ticket buyer. Luckily, the only buyer-controlled placeholder available in pretix by default (that is not validated in a way that prevents the issue) is {invoice_company}, which is very unusual (but not impossible) to be contained in an email subject template. In addition to broadening the attack surface of the first issue, this could theoretically also leak information about an order to one of the attendees within that order. However, we also consider this scenario very unlikely under typical conditions.
Out of caution, we recommend that you rotate all passwords and API keys contained in your pretix.cfg https://docs.pretix.eu/self-hosting/config/ file.
Weakness: CWE-627
Which versions are affected by CVE-2026-2415?
7 open source packages ship an affected version, including pretix. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
pretix PyPI | All versions | 2025.9.4 |
pretix PyPI | All versions | 2025.9.4 |
pretix PyPI | From 2025.10.0 | 2025.10.2 |
pretix PyPI | From 2025.10.0 | 2025.10.2 |
pretix PyPI | From 2026.1.0 | 2026.1.1 |
pretix PyPI | From 2026.1.0 | 2026.1.1 |
1 more packages
pretix PyPI | From 4.16.0 | 2026.1.1 |
Products include Pretix Pretix.
How do I fix CVE-2026-2415?
Upgrade pretix to a fixed version for your release line: 2025.9.4, 2025.10.2 or 2026.1.1.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2026-2415 being exploited?
There is no known exploitation of CVE-2026-2415 in the wild and no public exploit code.
Other vulnerabilities in pretix
Sources
Also known as GHSA-r8p8-qw9w-j9qv, PYSEC-2026-110.