Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as channel-admin user
-
DeliveryEnumerate/guess target attachment ID
-
ExploitEmbed img tag in signature body
-
ExecutionSystem copies attachment without authz check
-
PersistDownload signature-owned copy
-
ImpactRead restricted group attachment data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Requires an authenticated Zammad account holding at least one channel-admin permission: admin.channel_email, admin.channel_google, admin.channel_microsoft365, or admin.channel_microsoft_graph. The attacker uses the email-signature create/update feature and must reference an existing attachment's ID via an inline HTML img tag. Limiting factors: high privilege prerequisite (channel administration), impact confined to reading (copying) attachments the actor cannot otherwise access - no write/modify or DoS - and it applies to Zammad instances prior to 7.1.2. No end-user interaction and no non-default configuration are required beyond having the admin channel permission. |
| Impact | This is a low-to-moderate real-world risk despite being network-exploitable. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:N/VA:N, 5.1) correctly captures the two dominant limiting factors: the attacker must already hold high privileges (one of the admin.channel_email, admin.channel_google, admin.channel_microsoft365, or admin.channel_microsoft_graph permissions), and the impact is confidentiality-only and rated Low. This is a horizontal/broken-object-level authorization flaw (CWE-639 IDOR): a channel-admin can read attachments outside their group scope, but only reads - no integrity or availability impact. Exploitation status: no public exploit identified at time of analysis - there is no KEV listing, no EPSS score, and no POC provided; note that the fix commit (f3e4da83) and the GHSA advisory publicly reveal the exact mechanism (an img tag referencing an arbitrary attachment ID), which lowers the barrier to reproduction. No SSVC data was supplied. The PR:H requirement means the actor is already a trusted administrative operator, so this is primarily a privilege-boundary/insider or compromised-admin-account concern rather than mass-exploitable exposure. Signal alignment: CVSS, CWE, and the source diff all agree this is an authorization gap, not an authentication bypass as the input tag claims. |
| Exploit ScenarioDerived | A user holding a Zammad channel-admin permission (e.g. admin.channel_email) but who is NOT a member of a given ticket group creates or edits an email signature whose HTML body contains an <img> tag pointing at the numeric attachment ID of a restricted ticket or knowledge-base attachment. Zammad copies that attachment into a new signature-owned record without checking the actor's access to the original, and the channel-admin then downloads the copy - reading data they were denied. No public exploit code is known, but the fix commit publicly documents the technique. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 25, 2026
Zammad helpdesk versions prior to 7.1.2 let an authenticated channel administrator read attachments outside their authorized groups by embedding an existing attachment ID in an email signature. The signature processor copies the referenced attachment into a signature-owned record and then serves it based on the copy's ownership rather than the original ticket or knowledge-base object, creating an authorization bypass (CWE-639). The vendor fixed this in 7.1.2; exploitation requires one of the channel-admin permissions and no public exploit code has been identified at time of analysis.
RemediationAI
Apply the vendor-released patch by upgrading to Zammad 7.1.2 or later; the fix is in version 7.1.2. Refer to the vendor advisory at https://github.com/zammad/zammad/security/advisories/GHSA-pp8r-x7pp-5qj5 and the upstream commit at https://github.com/zammad/zammad/commit/f3e4da83621efad8443a4e9fe6bd87befad47c44. If immediate upgrade is not possible, the primary compensating control is to restrict the admin.channel_email, admin.channel_google, admin.channel_microsoft365, and admin.channel_microsoft_graph permissions to fully trusted administrators, because exploitation requires one of those roles and the ability to create or update email signatures; this reduces exposure but limits legitimate channel-admin functionality and does not protect against a malicious user who retains those permissions. Audit existing email signatures for inline img tags that reference attachment IDs outside intended scope and remove them, noting that already copied signature-owned attachment records may remain accessible until deleted and that removing legitimate signature images may break email formatting. Monitor audit logs for signature create/update operations and newly created signature-owned attachments by channel admins.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Zammad is a Ruby on Rails-based helpdesk/customer support application. The affected component is the HTML sanitizer scrubber for inline images (lib/html_sanitizer/scrubber/inline_images.rb), which processes img tags in email signature bodies. When a signature contains an img tag pointing to an existing attachment, such as /api/v1/attachments/<id>, vulnerable versions copy the attachment into a new signature-owned store record without checking whether the current user is authorized to view the original attachment. Because attachment access is later evaluated against the copy's owner (the signature) rather than the original ticket or knowledge-base article, a user with channel-admin permissions can retrieve the copied file. The root cause class is CWE-639, Authorization Bypass Through User-Controlled Key: the attachment ID is attacker-controlled and authorization is bound to the wrong object. The upstream fix adds a Pundit.authorize(UserInfo.current_user, attachment, :show?) check when a current user is present, while preserving userless command-line contexts. Zammad products matching CPE cpe:2.3:a:zammad:zammad:*:*:*:*:*:*:*:* with versions before 7.1.2 are affected. The assessed CVSS 3.1 vector is AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:N/A:N, reflecting network reachability but a high-privilege prerequisite and confidentiality-only impact.
Know when Zammad gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
PR:H because a channel-admin permission is required; C:L for cross-group attachment disclosure with no integrity or availability impact, unchanged scope.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Zammad is a web based open source helpdesk/customer support system. Prior to 7.1.2, when creating or updating an email signature, Zammad processes inline images referenced in the signature body. If a signature body contains an HTML img tag pointing to any existing attachment, the system copies that attachment into a new signature-owned record, without checking whether the user has permission to access the original attachment. The newly created copy is then downloadable by the same channel-admin user, because attachment access is determined by the copy's owner (the signature), not the original object (e.g., a ticket or knowledge-base article). This allows a user with any of the admin.channel_email, admin.channel_google, admin.channel_microsoft365, or admin.channel_microsoft_graph permissions to read attachments they would otherwise be denied access to, such as ticket attachments belonging to groups they are not a member of. This issue is fixed in version 7.1.2.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Session hijacking in self-hosted Zammad 6.3.0 through 6.5.4 allows remote, unauthenticated attackers to take over a legi
Local privilege escalation in Zammad lets an attacker who already controls the unprivileged 'zammad' service account ele
An issue was discovered in Zammad before 1.0.4, 1.1.x before 1.1.3, and 1.2.x before 1.2.1. Rated critical severity (CVS
An issue was discovered in Zammad before 1.0.4, 1.1.x before 1.1.3, and 1.2.x before 1.2.1, caused by lack of a protecti
Zammad 5.2.0 is vulnerable to privilege escalation. Rated critical severity (CVSS 9.8), this vulnerability is remotely e
An issue was discovered in Zammad before 4.1.1. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo
An issue was discovered in Zammad before 4.1.1. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo
An issue was discovered in Zammad before 3.4.1. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo
An issue was discovered in Zammad before 6.3.0. Rated critical severity (CVSS 9.1), this vulnerability is remotely explo
Zammad's SSO auto-linking logic can be abused to take over any existing local account, including agent and administrator
An access control issue in Zammad v5.0.3 allows attackers to write entries to the CTI caller log without authentication.
An issue was discovered in Zammad before 4.1.1. Rated critical severity (CVSS 9.1), this vulnerability is remotely explo
EUVD-2026-87257
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB