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.
Published: 2026-08-05
Score: 8.1 High
EPSS: < 1% Very Low
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. Based on the description, the attack vector is inferred to be authenticated internal use via mass‑mail editing.

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.1, the vulnerability is considered High severity. The EPSS score is 0.00229, indicating a very low but nonzero likelihood of exploitation. Exploitation requires an authenticated user with mass‑mail edit permissions; based on the description, the attack vector is inferred to be privileged internal use. 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 10, 2026 at 21:53 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 10, 2026 at 21:53 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

References
History

Mon, 10 Aug 2026 12:00: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. 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.

Mon, 10 Aug 2026 11:30:00 +0000

Type Values Removed Values Added
Title DjangoCRM: Server-Side Template Injection in Mass Mail Message Rendering DjangoCRM - Server-Side Template Injection in Mass Mail Message Rendering

Fri, 07 Aug 2026 11:45:00 +0000

Type Values Removed Values Added
First Time appeared Djangocrm
Djangocrm django-crm
Vendors & Products Djangocrm
Djangocrm django-crm

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

Djangocrm Django-crm
cve-icon MITRE

Status: PUBLISHED

Assigner: TuranSec

Published:

Updated: 2026-08-10T11:45:44.417Z

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

Link: CVE-2026-71239

cve-icon Vulnrichment

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

cve-icon NVD

Status : Received

Published: 2026-08-05T11:16:26.750

Modified: 2026-08-10T12:17:26.417

Link: CVE-2026-71239

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-10T22:00:05Z

Weaknesses
  • CWE-1336

    Improper Neutralization of Special Elements Used in a Template Engine