Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessWrite malicious filename to shared/target directory
-
DeliveryUser navigates to directory and lists or displays files
-
ExploitTerminal application prints filename to screen
-
ExecutioniTerm2 parses filename-embedded DCS 2000p/OSC 135 sequences as conductor protocol
-
ImpactCode execution in iTerm2 context
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V15 - Secure Coding and Architecture Trusted source inclusion only
|
| Exploitation Conditions | Exploitation requires: (1) a file with a specially crafted name matching conductor encoding output patterns (containing substrings like 'ace/c+') present in the working directory the user is traversing, (2) the user displaying the contents of or listing files in that directory (using commands like 'cat', 'ls', or file manager operations that echo filenames), and (3) iTerm2 version 3.6.9 or earlier running on the user's macOS system. The attack is further limited by the need for the attacker to have prior write access to the target directory, and by iTerm2's relatively constrained user base compared to other terminal emulators. Exploitation does not require authentication to the target system beyond local file access; it is a privilege-escalation attack that exploits a trusted application's mishandling of protocol sequences. |
| Impact | The CVSS 6.9 score reflects several mitigating factors that reduce practical exploitability: local-only attack vector (AV:L), high complexity (AC:H), and no privilege escalation required (PR:N). However, the vulnerability requires the convergence of multiple conditions: a user must be tricked into displaying or listing files in a directory containing a malicious filename, and that directory must be traversable by the attacker beforehand. The absence of reported active exploitation (no KEV status, no confirmed POC in references) and the high-complexity rating suggest this is a theoretical attack requiring careful setup rather than a trivially exploitable flaw. The real-world risk depends heavily on deployment context - a developer who regularly 'cat' files from untrusted sources (cloned repositories, downloaded archives) faces higher risk than typical users. The fact that this affects common operations ('cat', 'ls' output) that users perform reflexively does elevate concern despite the complexity requirement. CVSS vector AC:H (high complexity) likely accounts for the need to engineer both a malicious filename and convince a user to traverse that directory, but the impact (C:H, I:H, A:L) on code execution confirms this is a real vulnerability, not a false alarm. |
| Exploit ScenarioDerived | An attacker creates a malicious filename in a shared directory (e.g., a cloned Git repository or shared NAS) with a name like 'ace/c+_payload' that, when printed to the terminal via 'cat README.txt' or 'ls -la', contains or triggers DCS/OSC escape sequences. A user, seeing output that includes this filename, inadvertently processes the embedded sequences through iTerm2's protocol parser, causing arbitrary code execution in the terminal's context. No user action beyond viewing the file listing is required if the escape sequences are triggered by the filename itself during display. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 18, 2026
Remote code execution in iTerm2 through version 3.6.9 allows local attackers to execute arbitrary code by displaying a specially crafted text file when a malicious file with a conductor-protocol-compatible name exists in the working directory. The vulnerability exploits iTerm2's acceptance of SSH conductor protocol sequences (DCS 2000p and OSC 135) from terminal output without validating the source, enabling in-band signaling abuse where filenames themselves become attack vectors. CVSS 6.9 reflects local attack vector and high complexity, but practical exploitation requires user interaction (opening a file) combined with directory-resident malware.
RemediationAI
Update iTerm2 to the patched version released after 3.6.9; refer to https://iterm2.com/downloads.html for the latest release. The upstream fix is documented in commit a9e745993c2e2cbb30b884a16617cd5495899f86 (https://github.com/gnachman/iTerm2/commit/a9e745993c2e2cbb30b884a16617cd5495899f86), which addresses validation of conductor protocol sequences to reject those not originating from legitimate authenticated sessions. Until patching is possible, defensive measures include: avoid displaying or listing files in directories with untrusted or downloaded content, use 'file' or other tools that do not echo filenames verbatim instead of 'cat' on unknown files, and disable or restrict access to terminal paste functionality if available. Users should be cautious when cloning repositories or extracting archives from untrusted sources into home directories where they may later be enumerated.
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
iTerm2 is a macOS terminal emulator that supports advanced terminal protocols including the SSH conductor protocol for authenticated remote session management. The vulnerability stems from improper validation of terminal escape sequences (specifically Device Control String DCS 2000p and Operating System Command OSC 135) that are intended for legitimate conductor protocol sessions. The root cause (CWE-829: Inclusion of Functionality from Untrusted Control Sphere) manifests when iTerm2 processes these protocol sequences from arbitrary terminal output without verifying they originate from an authenticated conductor session. An attacker exploits this by crafting a filename that, when displayed via standard commands like 'cat' on a file with a name matching conductor encoding output (e.g., containing 'ace/c+' substrings), triggers the protocol parser. When the terminal application prints this filename as part of file display or listing, the escape sequences embedded in or induced by the filename are interpreted as legitimate conductor commands, leading to code execution in the iTerm2 process context.
Know when Iterm2 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
AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
DescriptionCVE.org
In iTerm2 through 3.6.9, displaying a .txt file can cause code execution via DCS 2000p and OSC 135 data, if the working directory contains a malicious file whose name is valid output from the conductor encoding path, such as a pathname with an initial ace/c+ substring, aka "hypothetical in-band signaling abuse." This occurs because iTerm2 accepts the SSH conductor protocol from terminal output that does not originate from a legitimate conductor session.
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
Attack Technique
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
An issue was discovered in iTerm2 3.5.x before 3.5.2. Rated critical severity (CVSS 9.8), this vulnerability is remotely
iTerm2 before 3.4.20 allow (potentially remote) code execution because of mishandling of certain escape sequences relate
iTerm2 before 3.4.20 allow (potentially remote) code execution because of mishandling of certain escape sequences relate
A vulnerability exists in the way that iTerm2 integrates with tmux's control mode, which may allow an attacker to execut
iTerm2 3.x before 3.1.1 allows remote attackers to discover passwords by reading DNS queries. Rated high severity (CVSS
iTerm2 through 3.3.6 has potentially insufficient documentation about the presence of search history in com.googlecode.i
In iTerm2 before 3.5.2, the "Terminal may report window title" setting is not honored, and thus remote code execution mi
iTermSessionLauncher.m in iTerm2 before 3.5.0beta12 does not sanitize ssh hostnames in URLs. Rated critical severity (CV
iTermSessionLauncher.m in iTerm2 before 3.5.0beta12 does not sanitize paths in x-man-page URLs. Rated critical severity
iTerm2 before 3.4.18 mishandles a DECRQSS response. Rated critical severity (CVSS 9.8), this vulnerability is remotely e
iTerm2 3.5.6 through 3.5.10 before 3.5.11 sometimes allows remote attackers to obtain sensitive information from termina
EUVD-2026-23656
NVD
CVE.org
EPSS
Vulnrichment
GitHub
VulDB
Exploit-DB