CVE-2026-104881
Published:October 13, 2026
Updated:October 13, 2026
Channel access is enforced ONLY by the DataContainer voters ("NewsletterChannelAccessVoter" / "NewsletterRecipientsAccessVoter", requiring USER_CAN_EDIT_CHANNEL), whose "supportsType()" fires exclusively for Create/Read/Update/DeleteAction subjects dispatched inside DC_Table's create/edit/delete methods. The newsletter custom key-actions are dispatched directly by "Backend::getBackendModule()" (Backend.php:324-327) after only the module-level "USER_CAN_ACCESS_MODULE" check; the DC_Table constructor runs no per-record ReadAction vote for a key-action. "Newsletter.php" contains ZERO "isGranted" / "denyAccess" / "isAdmin" / "hasAccess" calls, and none of the newsletter DCAs have a "checkPermission" onload callback. ## Impact A channel-scoped newsletter editor can inject recipients into, mass-mail, and delete/denylist recipients of channels they are not authorized to edit - defeating the per-channel permission model (integrity + abuse of the mail-sending capability). ## Credits This security vulnerability was found by @HDWSec
Affected Packages
contao/newsletter-bundle (PHP):
Affected version(s) >=5.0.0 <5.3.50Fix Suggestion:
Update to version 5.3.50Related Resources (3)
Do you need more information?
Contact UsCVSS v4
Base Score:
5.3
Attack Vector
NETWORK
Attack Complexity
LOW
Attack Requirements
NONE
Privileges Required
LOW
User Interaction
NONE
Vulnerable System Confidentiality
NONE
Vulnerable System Integrity
LOW
Vulnerable System Availability
NONE
Subsequent System Confidentiality
NONE
Subsequent System Integrity
NONE
Subsequent System Availability
NONE
CVSS v3
Base Score:
4.3
Attack Vector
NETWORK
Attack Complexity
LOW
Privileges Required
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
LOW
Availability
NONE