Description
DjangoCRM's massmail module renders user-controlled EmlMessage fields (subject, content) through Django's Template() constructor with no sanitization, in at least three locations: message_previews.py builds an f-string embedding message.subject/message.content directly into a Template() call; email_creators.py passes eml_message.subject directly as a template string to Template(); and helpers.py contains the same f-string interpolation pattern. An authenticated user with mass-mail message edit rights can inject Django template syntax ({{ }} / {% %}) that executes at render time, enabling disclosure of other users' data and password hashes via request context variables, CSRF token forgery, and inclusion of arbitrary registered templates.
Published: 2026-08-05
Score: 8.1 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability arises from the massmail module rendering user‑controlled message subject and content fields through Django's Template() constructor without any sanitization. In message_previews.py, email_creators.py, and helpers.py, f‑strings embed the raw subject or content directly into a Template() call. An authenticated user who has rights to edit mass‑mail messages can inject Django template syntax ({{ }}, {% %}) which is evaluated when the message is rendered. This enables the attacker to read other users’ data, exfiltrate password hashes via the request context, forge CSRF tokens, or include arbitrary templates.

Affected Systems

The affected product is DjangoCRM’s django‑crm, specifically the massmail module. The CVE data does not list specific version ranges, indicating that all releases that include the vulnerable code paths are impacted. No version information is available, so administrators should consider all installations of django‑crm that contain the massmail component as potentially affected.

Risk and Exploitability

With a CVSS score of 8.8 the vulnerability is considered High severity. The EPSS score is not available, and it is not listed in CISA’s KEV. Exploitation requires an authenticated user with mass‑mail edit permissions; hence the attack vector is internal or privileged rather than remote. Despite the limited scope of the attacker’s privileges, the impact on data confidentiality and integrity is significant, making prompt remediation essential.

Generated by OpenCVE AI on August 5, 2026 at 12:25 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to the latest django‑crm release that removes unsanitized Template() usage in mass‑mail rendering.
  • If an immediate upgrade is not possible, limit mass‑mail edit rights to a narrowly defined administrator role and ensure that only trusted users can modify message subjects and content.
  • Implement input sanitization or remove the use of Django's Template() constructor for rendering user‑supplied message fields; consider escaping or using a safer rendering alternative.

Generated by OpenCVE AI on August 5, 2026 at 12:25 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

References
History

Wed, 05 Aug 2026 13:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Wed, 05 Aug 2026 13:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N'}

cvssV3_1

{'score': 8.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N'}


Wed, 05 Aug 2026 11:15:00 +0000

Type Values Removed Values Added
Description DjangoCRM's massmail module renders user-controlled EmlMessage fields (subject, content) through Django's Template() constructor with no sanitization, in at least three locations: message_previews.py builds an f-string embedding message.subject/message.content directly into a Template() call; email_creators.py passes eml_message.subject directly as a template string to Template(); and helpers.py contains the same f-string interpolation pattern. An authenticated user with mass-mail message edit rights can inject Django template syntax ({{ }} / {% %}) that executes at render time, enabling disclosure of other users' data and password hashes via request context variables, CSRF token forgery, and inclusion of arbitrary registered templates.
Title DjangoCRM: Server-Side Template Injection in Mass Mail Message Rendering
Weaknesses CWE-1336
References
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-05T12:56:18.098Z

Reserved: 2026-08-05T10:53:53.175Z

Link: CVE-2026-71239

cve-icon Vulnrichment

Updated: 2026-08-05T12:56:08.198Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T12:30:12Z

Weaknesses
  • CWE-1336

    Improper Neutralization of Special Elements Used in a Template Engine