github-actions[bot]
published Aug 25, 2026, 5:29 AM · updated Aug 25, 2026, 6:35 AM
Sighthound Security Scan — Top Findings
Automated static analysis (Sighthound) flagged 123 actionable findings (33 Critical, 13 High, 77 Medium) outside test paths. Below are the 5 highest-severity findings for triage.
1. Command Injection (Critical, CWE-78)
- File:
pkg/workflow/pip_validation.go:230 - Snippet:
exec.Command(uvPath, "pip", "show", pkgName, "--no-cache") - Remediation: Confirm
pkgNameis validated/sanitized before use (e.g., matched against an allowlist regex for valid package name characters) before being passed toexec.Command. Arguments are already passed as a fixed slice, which mitigates shell injection, but untrusted package names should still be validated.
2. Command Injection (Critical, CWE-78)
- File:
pkg/workflow/pip_validation.go:88 - Snippet:
exec.Command(pipPath, "index", "versions", pkgName, "--pre") - Remediation: Same as above — validate
pkgNameagainst a strict allowlist pattern before invoking pip commands.
3. Command Injection (Critical, CWE-78)
- File:
pkg/workflow/dependabot_manifests.go:282 - Snippet:
exec.Command(npmPath, "install", "--package-lock-only", "--ignore-scripts") - Remediation: Arguments here are static; verify
npmPathresolution isn't influenced by untrusted PATH manipulation. Consider resolving the binary via an absolute, verified path.
4. Command Injection (Critical, CWE-78)
- File:
pkg/cli/grype.go:337 - Snippet:
exec.Command(dockerPath, dockerArgs...) - Remediation: Ensure
dockerArgs(image name, flags) are built from validated/sanitized inputs and not directly from unsanitized user-controlled workflow content before being passed toexec.Command.
5. Command Injection (Critical, CWE-78)
- File:
pkg/cli/upgrade_command.go:507 - Snippet:
exec.Command(exe, newArgs...) - Remediation: Verify
newArgsoriginates only from the process's own trustedos.Args/relaunch logic, not from any external/untrusted source, before re-exec.
Note: all 5 use fixed argument slices (no shell interpolation), which mitigates classic shell injection; confidence is High per the scanner but manual verification of each pkgName/dockerArgs/newArgs source is recommended to confirm untrusted data cannot reach these calls.
Full scan: 165 findings, 123 actionable (33 Critical, 13 High, 77 Medium).
Generated by 🛡️ Sighthound Security Scan · copilot · auto · 11.3 AIC · ⌖ 6.47 AIC · ⊞ 6.9K · ◷