launch-editor: Editor CLI flag misinterpretation causing arbitrary command execution for some editors
### Summary `launch-editor` forwarded file paths directly to editors without sanitization. If a path resembles a CLI flag, editors like Vim may interpret it as a command, potentially causing unintended file overwrites or command execution. ### Impact #### Direct `launch-editor` users Only apps that match all of the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working directory - The user uses or the app specifies any of the following editors: - Vim (including gVim) - MacVim - Emacs (including Emacsclient) - Notepad++ (only if using a plugin exposing dangerous operations via plugin messages) - The first argument of `launchEditor` can start with `+` or `-` or the user is using WSL #### `launch-editor-middleware` users Only apps that match the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working directory - The user uses or the app specifies any of the following editors: - Vim (including gVim) - MacVim - Emacs (including Emacsclient) - Notepad++ (only if using a plugin exposing dangerous operations via plugin messages) - launch-editor older than v2.2.0 is used, or the user is using WSL #### Vite users Only apps that match the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working
- Products
- launch-editor, vite, vite-plus
- Affected versions
- Not specified
- Fixed versions
- 1.1.0, 2.14.2, 6.4.4, 7.3.7, 8.1.6, 8.2.4, 8.3.3
- CVEs
- CVE-2026-112944
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 13:20 UTC · Revision 1
Source evidence
launch-editor: Editor CLI flag misinterpretation causing arbitrary command execution for some editors
core-osv · Original sourcePublished 20 Oct 2026, 19:51 UTC
### Summary `launch-editor` forwarded file paths directly to editors without sanitization. If a path resembles a CLI flag, editors like Vim may interpret it as a command, potentially causing unintended file overwrites or command execution. ### Impact #### Direct `launch-editor` users Only apps that match all of the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working directory - The user uses or the app specifies any of the following editors: - Vim (including gVim) - MacVim - Emacs (including Emacsclient) - Notepad++ (only if using a plugin exposing dangerous operations via plugin messages) - The first argument of `launchEditor` can start with `+` or `-` or the user is using WSL #### `launch-editor-middleware` users Only apps that match the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working directory - The user uses or the app specifies any of the following editors: - Vim (including gVim) - MacVim - Emacs (including Emacsclient) - Notepad++ (only if using a plugin exposing dangerous operations via plugin messages) - launch-editor older than v2.2.0 is used, or the user is using WSL #### Vite users Only apps that match the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working
osv:GHSA-r825-w8mm-5pxw
launch-editor
Fixed versions: 2.14.2
vite
Fixed versions: 8.3.3
vite
Fixed versions: 8.2.4
vite
Fixed versions: 8.1.6
vite
Fixed versions: 7.3.7
vite
Fixed versions: 6.4.4
vite-plus
Fixed versions: 1.1.0
Complete source record
{
"id": "ad844dbcd6ce819df436f66222ce6713576d25a79f64665d2551c90d8d861fe4",
"url": "https://osv.dev/vulnerability/GHSA-r825-w8mm-5pxw",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "launch-editor: Editor CLI flag misinterpretation causing arbitrary command execution for some editors",
"summary": "### Summary `launch-editor` forwarded file paths directly to editors without sanitization. If a path resembles a CLI flag, editors like Vim may interpret it as a command, potentially causing unintended file overwrites or command execution. ### Impact #### Direct `launch-editor` users Only apps that match all of the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working directory - The user uses or the app specifies any of the following editors: - Vim (including gVim) - MacVim - Emacs (including Emacsclient) - Notepad++ (only if using a plugin exposing dangerous operations via plugin messages) - The first argument of `launchEditor` can start with `+` or `-` or the user is using WSL #### `launch-editor-middleware` users Only apps that match the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working directory - The user uses or the app specifies any of the following editors: - Vim (including gVim) - MacVim - Emacs (including Emacsclient) - Notepad++ (only if using a plugin exposing dangerous operations via plugin messages) - launch-editor older than v2.2.0 is used, or the user is using WSL #### Vite users Only apps that match the following conditions are affected: - The attacker is able to create a file system entry (e.g. a file or directory) starting with `+` or `-` in the working ",
"evidence": "osv:GHSA-r825-w8mm-5pxw",
"products": [
{
"name": {
"value": "launch-editor",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2.14.2",
"evidence": "/affected/0/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vite",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "8.3.3",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vite",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "8.2.4",
"evidence": "/affected/2/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vite",
"evidence": "/affected/3/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "8.1.6",
"evidence": "/affected/3/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vite",
"evidence": "/affected/4/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "7.3.7",
"evidence": "/affected/4/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vite",
"evidence": "/affected/5/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "6.4.4",
"evidence": "/affected/5/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "vite-plus",
"evidence": "/affected/6/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "1.1.0",
"evidence": "/affected/6/ranges"
}
],
"affected_versions": []
}
],
"severity": "medium",
"structured": {
"id": "GHSA-r825-w8mm-5pxw",
"aliases": [
"CVE-2026-112944",
"GHSA-r825-w8mm-5pxw"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N"
}
],
"affected": [
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
},
{
"fixed": "2.14.2"
}
]
}
],
"package": {
"name": "launch-editor",
"purl": "pkg:npm/launch-editor",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 2.14.1"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "8.3.0"
},
{
"fixed": "8.3.3"
}
]
}
],
"package": {
"name": "vite",
"purl": "pkg:npm/vite",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 8.3.2"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "8.2.0"
},
{
"fixed": "8.2.4"
}
]
}
],
"package": {
"name": "vite",
"purl": "pkg:npm/vite",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 8.2.3"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "8.0.0"
},
{
"fixed": "8.1.6"
}
]
}
],
"package": {
"name": "vite",
"purl": "pkg:npm/vite",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 8.1.5"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "7.0.0"
},
{
"fixed": "7.3.7"
}
]
}
],
"package": {
"name": "vite",
"purl": "pkg:npm/vite",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 7.3.6"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
},
{
"fixed": "6.4.4"
}
]
}
],
"package": {
"name": "vite",
"purl": "pkg:npm/vite",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 6.4.3"
}
},
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0"
},
{
"fixed": "1.1.0"
}
]
}
],
"package": {
"name": "vite-plus",
"purl": "pkg:npm/vite-plus",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-r825-w8mm-5pxw/GHSA-r825-w8mm-5pxw.json",
"last_known_affected_version_range": "<= 1.0.0"
}
}
],
"modified": "2026-10-20T20:00:04.608907013Z",
"provider": "osv",
"references": [
"https://github.com/vitejs/launch-editor/security/advisories/GHSA-r825-w8mm-5pxw",
"https://nvd.nist.gov/vuln/detail/CVE-2026-112944",
"https://github.com/vitejs/launch-editor/pull/156",
"https://github.com/vitejs/launch-editor/commit/f6e6701bb1f16f2dd242b321374f1b6cca6eb6d4",
"https://github.com/vitejs/launch-editor",
"https://github.com/vitejs/launch-editor/releases/tag/v2.14.2"
],
"provider_metadata": {
"cwe_ids": [
"CWE-88"
],
"severity": "MODERATE",
"github_reviewed": true,
"nvd_published_at": "2026-10-20T15:17:17Z",
"github_reviewed_at": "2026-10-20T19:51:52Z"
}
},
"related_cves": [
{
"value": "CVE-2026-112944",
"evidence": "/aliases"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 390363,
"published_at": "2026-10-20T19:51:52+00:00"
}