Skip to main content

Zammad CVE-2026-56735

| EUVDEUVD-2026-87215 MEDIUM
Improper Neutralization of Script in Attributes of IMG Tags in a Web Page (CWE-82)
2026-09-25 GitHub_M
5.3
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Send email with crafted img srcset
  2. Delivery
    Sanitizer passes external srcset URL
  3. Exploit
    Agent opens ticket in browser
  4. Execution
    Browser silently loads attacker URL
  5. Impact
    Leak agent IP/User-Agent/Referer/view-time

Vulnerability Assessment

Weakness
CWE
Exploitation Conditions

Exploitation requires only that the attacker send an HTML email to a Zammad instance running a version prior to 7.0.2 / 7.1.0, using an <img> tag whose srcset attribute references an external (http/https/ftp/protocol-relative) URL - the HtmlSanitizer::Strict allowlisted srcset for img but, unlike src, never applied the external-URL block. The limiting factor is required user interaction (UI:P): the leak only fires when a support agent actually opens the ticket containing the malicious image in a browser that honors srcset; it also depends on the instance being unpatched. No authentication is needed (PR:N - anyone who can email the helpdesk qualifies), and the default configuration is vulnerable.

Impact

This is a genuine but low-severity privacy/information-disclosure issue, not a code-execution or data-theft flaw. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N, score 5.3) correctly captures network delivery, no attacker authentication, and required user interaction (an agent must open the ticket), but VI:L (integrity) is overstated - the described impact is purely disclosure of the viewing agent's metadata (IP address, User-Agent, Referer, and exact view timestamp) with no modification of any system data. There is NO EPSS score, NO CISA KEV listing, and NO public exploit code identified at time of analysis, so this is 'no public exploit identified at time of analysis.' The practical bar is trivial to trigger (attacker only sends an email with a crafted srcset), which makes exploitation reliable, but the payoff is limited to tracking-pixel-grade reconnaissance rather than compromise. Net: a real, easily-triggered privacy leak but a low real-world priority - a modest-CVSS, modest-impact issue confined to a niche self-hosted product. No conflicting signals across sources; the description, commit diff, and CVSS all agree on scope.

Exploit ScenarioDerived

An attacker emails the helpdesk an ordinary-looking support message whose HTML body contains an <img> tag with a srcset attribute pointing to an attacker-controlled server. Zammad's Strict sanitizer strips external URLs from src but not srcset, so when a support agent opens the ticket their browser silently fetches the attacker URL, leaking the agent's IP address, User-Agent, Referer, and the precise time the ticket was read. No public exploit code exists, but the attack requires only sending an email and works against unpatched default installs.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 25, 2026

Information disclosure in Zammad lets any sender capable of emailing a helpdesk instance embed an arbitrary external URL in the srcset attribute of an image, so that the agent's browser silently fetches attacker-controlled content the moment the ticket is viewed. Zammad's HtmlSanitizer::Strict blocked external URLs in the src attribute but left the equally allowlisted srcset attribute unchecked, leaking the agent's IP address, User-Agent, Referer and the precise viewing time to the sender. All releases before 7.0.2, and 7.1.x releases before 7.1.0, are affected; fixes are available in 7.0.2 and 7.1.0, and no public exploit code was identified at time of analysis. The impact is a privacy/tracking leak rather than code execution or data theft, and it depends on an agent actually opening the crafted ticket in a browser that honours srcset.

RemediationAI

Vendor-released patch: upgrade to Zammad 7.0.2 or 7.1.0, which extend HtmlSanitizer::Strict to strip external URLs from srcset candidates (see advisory GHSA-7fwx-3xr4-qm6w, commit 02c1ff8dc65961352dc047013bece9dff1f2ffb7, and release pages for 7.0.2 and 7.1.0). If immediate upgrade is not possible, the most effective compensating control is to stop Zammad from rendering inbound e-mail HTML at all, or to pre-strip srcset from message bodies before tickets are created - this removes the vector entirely but degrades rich e-mail rendering and can hide legitimate inline images. A weaker but lower-friction option is to have agents view tickets with browser image loading, remote content and referrer sending disabled for the Zammad origin; this blocks the callback but relies on per-agent configuration and on the browser honouring those settings for srcset. Egress filtering or a forward proxy that blocks agent workstations from reaching arbitrary external hosts would also neutralise the beacon, at the cost of breaking legitimate outbound browsing unless the rule is scoped to the Zammad client hosts. Note that these workarounds reduce, but do not eliminate, the leak of viewing metadata once any external request succeeds, so patching remains the recommended course and no compensating control should be treated as equivalent to the vendor fix.

Affected VersionsENISA

Zammad < 7.0.2

Affected Packages

euvd zammad fix: 7.0.2

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 helpdesk/ticketing platform that renders inbound e-mail HTML after passing it through an internal sanitizer (lib/html_sanitizer/scrubber/wipe.rb, HtmlSanitizer::Strict). That scrubber maintains an attribute allowlist, and for image tags it permitted both src and srcset. The src path was already hardened by remove_unsafe_src, which rejected javascript/livescript/vbscript protocols and, more importantly, flagged any remote URL beginning with http://, https://, ftp:// or a protocol-relative // as remote content. The srcset path had no equivalent logic, so an attacker could simply place the external URL in srcset instead of src and defeat the remote-content protection. The assigned CWE-82 (improper neutralization of script in attributes of img tags) describes the attribute-level sanitization gap, though the practical consequence here is passive privacy leakage rather than script execution. The vendor fix adds remove_unsafe_srcset, which parses the srcset value using the HTML specification's srcset parsing state machine (correctly handling candidate URLs, descriptors such as width/density, commas inside data: URLs, and URL-encoded characters), drops any candidate whose decoded URL uses an unsafe protocol or resolves to a remote host, removes the srcset attribute if nothing safe remains, and removes the whole node if it then has no src. Supporting helpers (unsafe_protocol?, unsafe_link_protocol?, remote_url?) were factored out of the existing link/src checks, and the scrubber's style/class handling was refactored in the same commit (02c1ff8dc65961352dc047013bece9dff1f2ffb7). The affected CPE entry, cpe:2.3:a:zammad:zammad:*:*:*:*:*:*:*:*, is an unversioned wildcard, so version scoping must come from the advisory rather than the CPE string.

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

Vendor (GitHub_M) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Unauthenticated attacker sends email (PR:N, AV:N, AC:L) but leak fires only when an agent views the ticket (UI:R); impact is limited metadata disclosure (C:L) with no integrity or availability effect.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Sep 25, 2026 - 18:19 EUVD

DescriptionCVE.org

Zammad is a web based open source helpdesk/customer support system. Prior to 7.0.2 and 7.1.0, zammad's HTML sanitizer (HtmlSanitizer::Strict) blocks external URLs in to prevent remote content loading, but the srcset attribute, also allowlisted for , is not subject to the same check. This oversight allows an attacker to embed arbitrary external URLs in the srcset attribute just by sending an e-mail, effectively bypassing the external content protection. When an agent views the ticket containing the malicious srcset, the browser will silently load the attacker-controlled URL, resulting in the leakage of the agent's IP address, User-Agent, Referer, and the exact time the ticket was viewed. HtmlSanitizer::Strict got extended to block external URLs in the srcset attribute of tags. This was done to prevent tracking pixels and external content loading, which could compromise user privacy. This issue is fixed in versions 7.0.2 and 7.1.0.

Threat Intelligence Overview

EPSS Score
0.4%
Top 66% exploitable
Prevalence
Low
niche self-hosted open-source helpdesk, limited enterprise footprint
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Zammad

View all
CVE-2026-102489 CRITICAL POC
9.4 Sep 30

Session hijacking in self-hosted Zammad 6.3.0 through 6.5.4 allows remote, unauthenticated attackers to take over a legi

CVE-2026-102490 CRITICAL POC
9.4 Sep 30

Local privilege escalation in Zammad lets an attacker who already controls the unprivileged 'zammad' service account ele

CVE-2017-5619 CRITICAL
9.8 Mar 13

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

CVE-2017-6080 CRITICAL
9.8 Mar 13

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

CVE-2022-35490 CRITICAL
9.8 Aug 08

Zammad 5.2.0 is vulnerable to privilege escalation. Rated critical severity (CVSS 9.8), this vulnerability is remotely e

CVE-2021-42090 CRITICAL
9.8 Oct 07

An issue was discovered in Zammad before 4.1.1. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo

CVE-2021-42094 CRITICAL
9.8 Oct 07

An issue was discovered in Zammad before 4.1.1. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo

CVE-2020-26030 CRITICAL
9.8 Dec 28

An issue was discovered in Zammad before 3.4.1. Rated critical severity (CVSS 9.8), this vulnerability is remotely explo

CVE-2024-33668 CRITICAL
9.1 Apr 26

An issue was discovered in Zammad before 6.3.0. Rated critical severity (CVSS 9.1), this vulnerability is remotely explo

CVE-2026-84458 CRITICAL
9.1 Sep 25

Zammad's SSO auto-linking logic can be abused to take over any existing local account, including agent and administrator

CVE-2022-27332 CRITICAL
9.1 Apr 27

An access control issue in Zammad v5.0.3 allows attackers to write entries to the CTI caller log without authentication.

CVE-2021-42091 CRITICAL
9.1 Oct 07

An issue was discovered in Zammad before 4.1.1. Rated critical severity (CVSS 9.1), this vulnerability is remotely explo

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy