CliInvoke: Argument Injection in Extensibility Runner Factory
Key facts
- Attack vector
- Local
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-88.
Summary
CliInvoke and its formerly named `AlastairLundy.CliInvoke` package are .NET libraries for invoking command-line programs and wrapping executable processes. `CliInvoke` versions 2.0.0 through 2.8.4, 2.9.0 through 2.9.3, 2.10.0 through 2.10.4, and 3.0.0-alpha.1 through 3.0.0-beta.1, as well as `AlastairLundy.CliInvoke` versions 2.0.0-alpha.1 through 2.0.0, contain an argument-injection vulnerability in `RunnerProcessFactory` on the 2.x line and `RunnerConfigurationFactory` on the 3.x line. These factories combine runner arguments, a caller-controlled target, and caller-controlled arguments into one `ProcessStartInfo.Arguments` string, allowing a double quote in the target or an argument to terminate an operating-system-level quoted region and inject unintended elements into the runner’s argument vector, potentially resulting in arbitrary command execution when a shell runner is used. The vulnerability is patched in `CliInvoke` versions 2.8.5, 2.9.4, 2.10.5, and 3.0.0-beta.2, and in `AlastairLundy.CliInvoke` version 2.0.2. No complete workaround is available; users unable to upgrade can partially mitigate the issue by removing double quotes from targets and arguments, additionally removing shell metacharacters when using shell runners, or bypassing the vulnerable factory and constructing a `ProcessConfiguration` with an explicit `ArgumentList`.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| alastairlundy | CliInvoke | 2.0.0 – 2.8.4; 2.9.0 – 2.9.3; 2.10.0 – 2.10.4; 3.0.0-alpha.1 – 3.0.0-beta.1 | — | No fix listed | CNA |
| alastairlundy | AlastairLundy.CliInvoke | 2.0.0-alpha.1 – 2.0.0 | — | No fix listed | CNA |
| — | CliInvoke (NuGet) | 2.0.0 to before 2.8.5 | 2.8.5 | Patch available | GHSA-j73w-8hfr-4gc9 |
| — | CliInvoke (NuGet) | 2.9.0 to before 2.9.4 | 2.9.4 | Patch available | GHSA-j73w-8hfr-4gc9 |
| — | CliInvoke (NuGet) | 2.10.0 to before 2.10.5 | 2.10.5 | Patch available | GHSA-j73w-8hfr-4gc9 |
| — | CliInvoke (NuGet) | 3.0.0-alpha.1 to before 3.0.0-beta.2 | 3.0.0-beta.2 | Patch available | GHSA-j73w-8hfr-4gc9 |
| — | AlastairLundy.CliInvoke (NuGet) | 2.0.0-alpha.1 to before 2.0.2 | 2.0.2 | Patch available | GHSA-j73w-8hfr-4gc9 |
- CliInvoke Vendoralastairlundy Affected 2.0.0 – 2.8.4; 2.9.0 – 2.9.3; 2.10.0 – 2.10.4; 3.0.0-alpha.1 – 3.0.0-beta.1 Fixed in — No fix listed CNA
- AlastairLundy.CliInvoke Vendoralastairlundy Affected 2.0.0-alpha.1 – 2.0.0 Fixed in — No fix listed CNA
- CliInvoke (NuGet) Vendor— Affected 2.0.0 to before 2.8.5 Fixed in 2.8.5 Patch available GHSA-j73w-8hfr-4gc9
- CliInvoke (NuGet) Vendor— Affected 2.9.0 to before 2.9.4 Fixed in 2.9.4 Patch available GHSA-j73w-8hfr-4gc9
- CliInvoke (NuGet) Vendor— Affected 2.10.0 to before 2.10.5 Fixed in 2.10.5 Patch available GHSA-j73w-8hfr-4gc9
- CliInvoke (NuGet) Vendor— Affected 3.0.0-alpha.1 to before 3.0.0-beta.2 Fixed in 3.0.0-beta.2 Patch available GHSA-j73w-8hfr-4gc9
- AlastairLundy.CliInvoke (NuGet) Vendor— Affected 2.0.0-alpha.1 to before 2.0.2 Fixed in 2.0.2 Patch available GHSA-j73w-8hfr-4gc9
Remediation
- Fix · GHSA-j73w-8hfr-4gc9 CliInvoke (NuGet) Fixed in 2.8.5 Advisory →
- Fix · GHSA-j73w-8hfr-4gc9 CliInvoke (NuGet) Fixed in 2.9.4 Advisory →
- Fix · GHSA-j73w-8hfr-4gc9 CliInvoke (NuGet) Fixed in 2.10.5 Advisory →
- Fix · GHSA-j73w-8hfr-4gc9 CliInvoke (NuGet) Fixed in 3.0.0-beta.2 Advisory →
- Fix · GHSA-j73w-8hfr-4gc9 AlastairLundy.CliInvoke (NuGet) Fixed in 2.0.2 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-100369
- 2026-10-03 Alias added: GHSA-j73w-8hfr-4gc9
References
Other 6
- https://github.com/alastairlundy/CliInvoke/security/advisories/GHSA-j73w-8hfr-4gc9
- https://github.com/alastairlundy/CliInvoke/commit/1e98582f02eb43e345e5b97b8dd6ff9443806685
- https://github.com/alastairlundy/CliInvoke/commit/fac321c7cc9cf4372919842701829ca2be5e7307
- https://github.com/alastairlundy/CliInvoke
- https://github.com/alastairlundy/CliInvoke/releases/tag/2.10.5
- https://github.com/alastairlundy/CliInvoke/releases/tag/3.0.0-beta.2
More alastairlundy vulnerabilities
- TI-2026-64646 CliInvoke.Specializations: Command injection in PowerShell and Cmd shell wrappers CVSS 3.1HIGH 8.4
Sources
- CVE-2026-100369 · CVE Program
- CVE-2026-100369 · NVD
- FIRST EPSS
- GHSA-j73w-8hfr-4gc9 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences