spawn/packages/cli/src
A 62e5918078
fix(security): wrap runServer SSH commands with shellQuote in DO and Hetzner (#2843)
DigitalOcean and Hetzner runServer() passed the command string directly
to SSH without shell-quoting, allowing metacharacters (;, |, $(), etc.)
to be interpreted by the remote shell. AWS and GCP already used
`bash -c ${shellQuote(fullCmd)}` — this applies the same pattern to the
two affected modules.

Fixes #2836

Agent: security-auditor

Co-authored-by: B <6723574+louisgv@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-03-20 17:34:43 -07:00
..
__tests__ fix(security): wrap runServer SSH commands with shellQuote in DO and Hetzner (#2843) 2026-03-20 17:34:43 -07:00
aws fix(security): prevent path traversal in uploadFile/downloadFile across all cloud providers (#2844) 2026-03-20 16:48:58 -07:00
commands fix(ux): add spawn link to help output and --fast to KNOWN_FLAGS (#2828) 2026-03-20 08:49:26 -07:00
digitalocean fix(security): wrap runServer SSH commands with shellQuote in DO and Hetzner (#2843) 2026-03-20 17:34:43 -07:00
gcp fix(security): prevent path traversal in uploadFile/downloadFile across all cloud providers (#2844) 2026-03-20 16:48:58 -07:00
hetzner fix(security): wrap runServer SSH commands with shellQuote in DO and Hetzner (#2843) 2026-03-20 17:34:43 -07:00
local fix: standardize ESM import extensions across 35 production files (#2827) 2026-03-20 08:51:40 -07:00
shared fix(security): prevent path traversal in uploadFile/downloadFile across all cloud providers (#2844) 2026-03-20 16:48:58 -07:00
sprite fix(security): prevent path traversal in uploadFile/downloadFile across all cloud providers (#2844) 2026-03-20 16:48:58 -07:00
flags.ts fix(ux): add spawn link to help output and --fast to KNOWN_FLAGS (#2828) 2026-03-20 08:49:26 -07:00
guidance-data.ts refactor: remove dead exports only used within their own files (#2431) 2026-03-10 08:51:15 -04:00
history.ts fix: remove 100-entry history cap — keep all records (#2819) 2026-03-20 06:32:08 -07:00
index.ts fix(types): resolve TypeScript strict mode errors in production code (#2824) 2026-03-20 03:17:04 -07:00
manifest.ts fix(cli): use tryCatch instead of tryCatchIf for JSON.parse callsites (#2770) 2026-03-18 12:54:41 -07:00
picker.ts refactor: remove dead exported types from picker.ts and spawn-config.ts (#2553) 2026-03-12 21:43:05 -04:00
security.ts fix(security): resolve symlinks in prompt file validation to prevent bypass (#2744) 2026-03-17 22:21:11 -07:00
unicode-detect.ts feat: Bun workspace monorepo — packages/cli + packages/shared (#1853) 2026-02-23 22:07:05 -08:00
update-check.ts fix: standardize ESM import extensions across 35 production files (#2827) 2026-03-20 08:51:40 -07:00