CVE-2026-43941: Unvalidated shell.openExternal in electerm allows arbitrary protocol execution via terminal link click
Impact
Electerm's terminal hyperlink handler passes any URL clicked in the terminal directly to shell.openExternal without any protocol validation.
When a user connects to a malicious SSH server, the attacker can print a crafted URI in the terminal output. If the victim clicks the link, shell.openExternal executes it using the operating system's default protocol handler.
This can be abused to: - Trigger dangerous protocol handlers (ms-msdt:, search-ms:) for code execution - Open local files or network shares (file://, UNC paths) to leak NTLM hashes or exfiltrate data - Launch any installed application associated with a custom URI scheme
An attacker who controls terminal output (e.g., via a malicious SSH server, compromised remote host, or malicious plugin rendering terminal content) can thus achieve arbitrary code execution or local file access on the victim's machine, requiring only that the victim clicks a displayed link.
Patches
As of electerm v3.7.9, no official patch has been released. Users should monitor the project’s GitHub releases and security page for an update addressing this issue.
Workarounds
Until a patch is available: - Do not click on any links displayed in terminal sessions connected to untrusted servers. - If possible, disable hyperlink rendering in electerm's terminal settings. - Use a terminal multiplexer (e.g., tmux) or a separate terminal application that filters URI schemes when working with untrusted hosts. - Consider running electerm in a restricted environment (sandbox, AppArmor, SELinux) that limits the spawning of protocol handlers.
Resources
- electerm GitHub Repository - electerm Security Policy - Vulnerability details originally reported by external researcher (confirmed on v3.7.9, Win10).
Other sources
electerm is an open-sourced terminal/ssh/sftp/telnet/serialport/RDP/VNC/Spice/ftp client. In versions 3.8.15 and prior, Electerm's terminal hyperlink handler passes any URL clicked in the terminal directly to shell.openExternal without any protocol validation. An attacker who controls terminal output (e.g., via a malicious SSH server, compromised remote host, or malicious plugin rendering terminal content) can thus achieve arbitrary code execution or local file access on the victim's machine, requiring only that the victim clicks a displayed link. At time of publication, there are no publicly available patches.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-43941?
CVE-2026-43941 is considered a critical vulnerability due to its potential for arbitrary protocol execution.
How do I fix CVE-2026-43941?
To fix CVE-2026-43941, upgrade Electerm to version 3.8.16 or later where the unvalidated protocol handling has been addressed.
What types of attacks can CVE-2026-43941 facilitate?
CVE-2026-43941 can facilitate attacks that execute arbitrary commands or malicious protocols through untrusted URLs clicked in the terminal.
Which versions of Electerm are affected by CVE-2026-43941?
Electerm versions 3.8.15 and earlier are affected by CVE-2026-43941.
Is there a workaround for CVE-2026-43941 if I cannot update right now?
If an immediate update is not possible, avoid clicking on untrusted hyperlinks in the terminal to mitigate the risk of CVE-2026-43941.