electerm
Ecosystem: npm
Downloads: 7.24 K
- 7CriticalAffects 7 versions
- 4HighAffects 4 versions
- 0MediumAffects 0 versions
- 2ModerateAffects 2 versions
- 0LowAffects 0 versions
- Critical7 (53.8%)
- High4 (30.8%)
- Medium0 (0.0%)
- Moderate2 (15.4%)
- Low0 (0.0%)
Monthly breakdown
- Critical
- High
- Medium
- Moderate
- Low
- 2 vulnerabilities
- Critical: 0
- High: 2
- Medium: 0
- Moderate: 0
- Low: 0
- 8 vulnerabilities
- Critical: 4
- High: 2
- Medium: 0
- Moderate: 2
- Low: 0
- 2 vulnerabilities
- Critical: 2
- High: 0
- Medium: 0
- Moderate: 0
- Low: 0
- 1 vulnerabilities
- Critical: 1
- High: 0
- Medium: 0
- Moderate: 0
- Low: 0
Vulnerabilities (13)
Known vulnerabilities affecting electerm, based on data from OSV.
| ID | Severity | Summary | Affected versions | Published | Source |
|---|---|---|---|---|---|
| GHSA-38j7-23hf-9mhc | High | electerm has Path Traversal in Zmodem and Trzsz Download Filename Handling### Impact A path traversal vulnerability exists in the Zmodem and Trzsz file download handlers in electerm. When receiving files via Zmodem or Trzsz protocols, electerm uses the remote-supplied filename directly in `path.join()` with the user-selected download directory without sanitization. A malicious SSH server or remote shell process can send a specially crafted filename such as `../escaped.txt` to escape the user-selected download directory and write files to arbitrary locations on the user's filesystem, subject to process permissions. **Attack scenario:** 1. User connects to a malici |
| GitHub (opens in a new tab) | |
| GHSA-v5ff-xmfp-p245 | High | electerm has Command Injection in File System Operations (rmrf, mv, cp)### Impact A command injection vulnerability exists in electerm's file system operations (`rmrf`, `mv`, `cp`) in `src/app/lib/fs.js`. These functions construct shell commands by interpolating file paths directly into command strings without escaping shell metacharacters. **Vulnerable functions:** - `rmrf()` - Uses `rm -rf "${path}"` (double quotes, vulnerable to `"` injection) - `mv()` - Uses `mv '${from}' '${to}'` (single quotes, vulnerable to `'` injection) - `cp()` - Uses `cp -r "${from}" "${to}"` (double quotes, vulnerable to `"` injection) **Attack scenario:** 1. Attacker controls a ma |
| GitHub (opens in a new tab) | |
| GHSA-7p5m-v798-f8vv | Critical | Electerm Local code through electerm's single-instance socket### Impact _Local code execution without UI interaction: any same-user process can send a JSON payload to electerm's single-instance socket/pipe, causing the app to create tabs and potentially spawn attacker-controlled local processes. Affects electerm single-instance installs on the machine._ ### Patches - https://github.com/electerm/electerm/commit/0599e67069b00e376a2e962649aaad6096e63507 ### Workarounds - Do not run unsafe command ### References - Report / credit: https://github.com/Curly-Haired-Baboon - Electerm releases: https://github.com/electerm/electerm/releases |
| GitHub (opens in a new tab) | |
| GHSA-g29v-q6h7-76wh | Moderate | electerm's encrypt method not safe enough### Impact _Insecure sync encryption: deterministic AES-192-CBC with a fixed zero IV, constant KDF salt, and no MAC leads to confidentiality and integrity failures for synced bookmark/profile data. Attackers can crack common passwords across installs and perform undetected ciphertext bit-flips to alter config/bookmarks._ ### Patches - https://github.com/electerm/electerm/commit/9dd8295e37d53396b980cd45dfc5ed11ad79b937 ### Workarounds - No ### References - Report / credit: https://github.com/Curly-Haired-Baboon - Electerm releases: https://github.com/electerm/electerm/releases |
| GitHub (opens in a new tab) | |
| GHSA-jgg9-rw32-44pj | Critical | Electerm: Importing unsafe bookmark data could lead to unsafe operation when clicking local type bookmark### Impact _Persistent local-pty code execution via imported bookmarks or compromised sync targets. Affects users who import bookmark JSON files or who have electerm sync configured (gist/WebDAV). The attacker can inject `exec*` fields or global config to cause remote code to run when a bookmark is opened or when sync is applied._ ### Patches Not yet ### Workarounds - Do not import unsafe data ### References - Report / credit: https://github.com/Curly-Haired-Baboon - Electerm releases: https://github.com/electerm/electerm/releases |
| GitHub (opens in a new tab) | |
| GHSA-37j4-88rp-2f6h | Moderate | Electerm's full process.env exposed to renderer via window.pre.env### Impact The `getConstants()` IPC handler in `src/app/lib/ipc-sync.js` serialises the entire `process.env` object and sends it to the renderer. The data is stored as `window.pre.env` and is accessible from any JavaScript running in the renderer (e.g., via the DevTools console or a compromised webview context). On developer and CI machines, `process.env` routinely contains secrets such as: - `AWS_SECRET_ACCESS_KEY` / `AWS_SESSION_TOKEN` - `GITHUB_TOKEN` / `NPM_TOKEN` - `OPENAI_API_KEY` / `DOCKER_AUTH` - Internal service credentials, API keys, and database URLs An attacker who achieves any |
| GitHub (opens in a new tab) | |
| GHSA-f77v-9vpc-6pjm | Critical | Electerm runWidget has a path traversal that leads to arbitrary code execution### Impact The `runWidget` function in `src/app/widgets/load-widget.js` constructs a file path by directly concatenating user‑supplied widget identifiers without any sanitisation: ```javascript const file = `widget-${widgetId}.js` const widget = require(path.join(__dirname, file)) ``` Because `runWidget` is exposed to the renderer process via an asynchronous IPC handler with no input validation, an attacker who achieves JavaScript execution inside the renderer (for example, through a malicious plugin or a cross‑site scripting flaw in the built‑in webview) can abuse a **path traversal** (`../ |
| GitHub (opens in a new tab) | |
| GHSA-fwf6-j56g-m97c | High | Electerm has an unvalidated shell.openExternal that 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 |
| GitHub (opens in a new tab) | |
| GHSA-mpm8-cx2p-626q | Critical | Electerm users can run dangrous code through link or command line### Impact _Arbitrary local code execution via deep links, CLI `--opts`, or crafted shortcuts. Affected users: electerm installs that accept protocol URLs or CLI options (affected versions listed in the original report). Exploit requires clicking a crafted `electerm://...` link or opening a crafted shortcut/command that launches electerm with attacker-controlled `opts`._ ### Patches Fixed in version > 3.8.8 commits: - https://github.com/electerm/electerm/commit/8a6a17951e96d715f5a231532bbd8303fe208700 - https://github.com/electerm/electerm/commit/a79e06f4a1f0ac6376c3d2411ef4690fa0377742 - h |
| GitHub (opens in a new tab) | |
| GHSA-q4p8-8j9m-8hxj | High | Electerm Security Vulnerability: RCE via malicious SSH server filename in openFileWithEditor### Impact A code execution (RCE) vulnerability exists in electerm's SFTP open with system editor or "Edit with custom editor" feature. When a user opts to edit a file using open with system editor or open with a custom editor, the filename is passed directly into a command line without sanitization. A malicious actor controlling the SSH server or user OS can exploit this by crafting a filename containing shell metacharacters. If a victim subsequently attempts to edit this file, the injected commands are executed on their machine with the user's privileges. This could allow the attacker to r |
| GitHub (opens in a new tab) |
- GHSA-38j7-23hf-9mhcHighelecterm has Path Traversal in Zmodem and Trzsz Download Filename Handling
< 3.11.11
### Impact A path traversal vulnerability exists in the Zmodem and Trzsz file download handlers in electerm. When receiving files via Zmodem or Trzsz protocols, electerm uses the remote-supplied filename directly in `path.join()` with the user-selected download directory without sanitization. A malicious SSH server or remote shell process can send a specially crafted filename such as `../escaped.txt` to escape the user-selected download directory and write files to arbitrary locations on the user's filesystem, subject to process permissions. **Attack scenario:** 1. User connects to a malici
CVE: CVE-2026-49253
- GHSA-v5ff-xmfp-p245Highelecterm has Command Injection in File System Operations (rmrf, mv, cp)
< 3.11.11
### Impact A command injection vulnerability exists in electerm's file system operations (`rmrf`, `mv`, `cp`) in `src/app/lib/fs.js`. These functions construct shell commands by interpolating file paths directly into command strings without escaping shell metacharacters. **Vulnerable functions:** - `rmrf()` - Uses `rm -rf "${path}"` (double quotes, vulnerable to `"` injection) - `mv()` - Uses `mv '${from}' '${to}'` (single quotes, vulnerable to `'` injection) - `cp()` - Uses `cp -r "${from}" "${to}"` (double quotes, vulnerable to `"` injection) **Attack scenario:** 1. Attacker controls a ma
CVE: CVE-2026-49255
- GHSA-7p5m-v798-f8vvCriticalElecterm Local code through electerm's single-instance socket
>= 3.0.6, < 3.9.0
### Impact _Local code execution without UI interaction: any same-user process can send a JSON payload to electerm's single-instance socket/pipe, causing the app to create tabs and potentially spawn attacker-controlled local processes. Affects electerm single-instance installs on the machine._ ### Patches - https://github.com/electerm/electerm/commit/0599e67069b00e376a2e962649aaad6096e63507 ### Workarounds - Do not run unsafe command ### References - Report / credit: https://github.com/Curly-Haired-Baboon - Electerm releases: https://github.com/electerm/electerm/releases
CVE: CVE-2026-45353
- GHSA-g29v-q6h7-76whModerateelecterm's encrypt method not safe enough
< 3.9.5
### Impact _Insecure sync encryption: deterministic AES-192-CBC with a fixed zero IV, constant KDF salt, and no MAC leads to confidentiality and integrity failures for synced bookmark/profile data. Attackers can crack common passwords across installs and perform undetected ciphertext bit-flips to alter config/bookmarks._ ### Patches - https://github.com/electerm/electerm/commit/9dd8295e37d53396b980cd45dfc5ed11ad79b937 ### Workarounds - No ### References - Report / credit: https://github.com/Curly-Haired-Baboon - Electerm releases: https://github.com/electerm/electerm/releases
CVE: CVE-2026-45787
- GHSA-jgg9-rw32-44pjCriticalElecterm: Importing unsafe bookmark data could lead to unsafe operation when clicking local type bookmark
<= 3.8.8
### Impact _Persistent local-pty code execution via imported bookmarks or compromised sync targets. Affects users who import bookmark JSON files or who have electerm sync configured (gist/WebDAV). The attacker can inject `exec*` fields or global config to cause remote code to run when a bookmark is opened or when sync is applied._ ### Patches Not yet ### Workarounds - Do not import unsafe data ### References - Report / credit: https://github.com/Curly-Haired-Baboon - Electerm releases: https://github.com/electerm/electerm/releases
CVE: CVE-2026-45058
- GHSA-37j4-88rp-2f6hModerateElecterm's full process.env exposed to renderer via window.pre.env
<= 3.8.15
### Impact The `getConstants()` IPC handler in `src/app/lib/ipc-sync.js` serialises the entire `process.env` object and sends it to the renderer. The data is stored as `window.pre.env` and is accessible from any JavaScript running in the renderer (e.g., via the DevTools console or a compromised webview context). On developer and CI machines, `process.env` routinely contains secrets such as: - `AWS_SECRET_ACCESS_KEY` / `AWS_SESSION_TOKEN` - `GITHUB_TOKEN` / `NPM_TOKEN` - `OPENAI_API_KEY` / `DOCKER_AUTH` - Internal service credentials, API keys, and database URLs An attacker who achieves any
CVE: CVE-2026-43942
- GHSA-f77v-9vpc-6pjmCriticalElecterm runWidget has a path traversal that leads to arbitrary code execution
< 3.7.16
### Impact The `runWidget` function in `src/app/widgets/load-widget.js` constructs a file path by directly concatenating user‑supplied widget identifiers without any sanitisation: ```javascript const file = `widget-${widgetId}.js` const widget = require(path.join(__dirname, file)) ``` Because `runWidget` is exposed to the renderer process via an asynchronous IPC handler with no input validation, an attacker who achieves JavaScript execution inside the renderer (for example, through a malicious plugin or a cross‑site scripting flaw in the built‑in webview) can abuse a **path traversal** (`../
CVE: CVE-2026-43940
- GHSA-fwf6-j56g-m97cHighElecterm has an unvalidated shell.openExternal that allows arbitrary protocol execution via terminal link click
<= 3.8.15
### 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
CVE: CVE-2026-43941
- GHSA-mpm8-cx2p-626qCriticalElecterm users can run dangrous code through link or command line
>= 3.0.6, < 3.8.8
### Impact _Arbitrary local code execution via deep links, CLI `--opts`, or crafted shortcuts. Affected users: electerm installs that accept protocol URLs or CLI options (affected versions listed in the original report). Exploit requires clicking a crafted `electerm://...` link or opening a crafted shortcut/command that launches electerm with attacker-controlled `opts`._ ### Patches Fixed in version > 3.8.8 commits: - https://github.com/electerm/electerm/commit/8a6a17951e96d715f5a231532bbd8303fe208700 - https://github.com/electerm/electerm/commit/a79e06f4a1f0ac6376c3d2411ef4690fa0377742 - h
CVE: CVE-2026-43944
- GHSA-q4p8-8j9m-8hxjHighElecterm Security Vulnerability: RCE via malicious SSH server filename in openFileWithEditor
< 3.7.9
### Impact A code execution (RCE) vulnerability exists in electerm's SFTP open with system editor or "Edit with custom editor" feature. When a user opts to edit a file using open with system editor or open with a custom editor, the filename is passed directly into a command line without sanitization. A malicious actor controlling the SSH server or user OS can exploit this by crafting a filename containing shell metacharacters. If a victim subsequently attempts to edit this file, the injected commands are executed on their machine with the user's privileges. This could allow the attacker to r
CVE: CVE-2026-43943