ft-scout@9.2.0
FrontTerrain — The Onboarding Co-Pilot for New Codebases
AI Security Review
scanned 1mo ago · by lpm-firewall-aiThe dashboard is user-started and has no install hook, but its API runs shell commands and returns the auth session with no authentication, wildcard CORS, and a hardcoded admin secret. That is a concrete critical vulnerability in the running local server, not a proven install-time malware chain.
Decision evidence
public snapshot- The dashboard HTTP server accepts POST /api/cli/exec with no authentication, interpolates the request command into a shell string, and runs it with child_process exec in the current working directory.
- Every dashboard response sets Access-Control-Allow-Origin to * and allows private-network requests, so a remote page can call the local server while the dashboard is running.
- GET /api/status returns the stored auth object, including session tokens, with no authentication check.
- POST /api/agent/task starts an autonomous agent loop and honors the caller autoApprove flag with no authentication check.
- Admin checks accept the hardcoded fallback secret scout_admin_2026 as a valid admin key or bearer token.
- package.json defines only test and build scripts, with no preinstall, install, or postinstall hook.
- The server listens only after the user runs the dashboard command, which calls startDashboardServer on localhost.
- Command execution and agent start are product features of the local dashboard, not an install-time payload.
Source & flagged code
18 flaggedPackage contains a high-severity secret pattern.
bin/src/utils/firebaseAuth.jsView on unpkg · L1Google API key in bin/src/utils/firebaseAuth.js
bin/src/utils/firebaseAuth.jsView on unpkg · L1Package source references child process execution.
bin/src/server/server.jsView on unpkg · L3Findings
Affected versions and remediation
This report applies to ft-scout@9.2.0.
See all versions of ft-scout for other recorded verdicts.
- Review the evidence and your use of ft-scout@9.2.0 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.