T08 · Insecure Dependencies
- Location
SKILL.md:47- Finding
Unpinned Third-Party Skill Installation Creates Supply-Chain Risk
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a coherent cloud-cost setup guide, but it enables high-impact agent behavior without enough safeguards around cloud changes, outbound reporting, trust setup, and dependency installation.
Review this before installing in any real cloud environment. Use a safe prefix containing only simple hostname characters, pin and verify every dependent skill, limit each role's cloud credentials, require human approval before shutdown, terminate, or rightsizing actions, and restrict reporter destinations to approved Slack, email, or webhook targets.
SKILL.md:47Unpinned Third-Party Skill Installation Creates Supply-Chain Risk
SKILL.md:44Unvalidated Prefix Interpolation Can Enable Shell Command Injection
The README describes an optimizer that can shut down or terminate resources as part of cost savings, but it does not clearly warn operators about service disruption, data loss, or the need for explicit approval gates. In a FinOps automation skill, destructive actions are especially sensitive because users may treat the setup guide as production-ready and enable actions that affect live workloads.
The trust model auto-approves communication once both sides send a handshake, with no manual verification step or authenticated out-of-band approval described. In a multi-agent system that can trigger optimization actions, this increases the risk of unauthorized pairing, spoofed peers, or accidental trust establishment that could lead to command injection into downstream agents.
Agents are private by default. Each pair that communicates must exchange handshakes. When both sides send a handshake, trust is auto-approved -- no manual step needed.
# scanner <-> analyzer (resource metrics flow)
The optimizer role is described as executing approved optimizations, but the skill description does not prominently warn that such actions can change or terminate infrastructure resources. In a cloud-cost context, optimization actions may be operationally destructive if recommendations are wrong, approvals are weak, or downstream skills automate execution too broadly.
The reporter role is designed to transmit cost reports to external systems via Slack, email, or webhooks, but the skill description does not clearly warn users about this outbound data flow. That omission can cause unintentional exfiltration of potentially sensitive billing, resource, and savings data to third-party destinations if a user enables the reporter without understanding its network behavior.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
clawhub install pilot-webhook-bridge pilot-slack-bridge pilot-announce
**Step 3:** Set the hostname and write the manifest:
```bash
pilotctl --json set-hostname <prefix>-<role>
mkdir -p ~/.pilot/setups
The reporter is described as sending cost summaries and savings reports to Slack and email without warning that these channels may expose billing, resource inventory, anomaly, or optimization data to third parties or broad internal audiences. While not inherently unsafe, omitting a privacy and data-handling warning can lead to unintended disclosure of sensitive operational and financial information.
This markdown file instructs the user to run commands that create ~/.pilot/setups and write a role-specific manifest, and also to set the hostname. Those actions modify local system state, but the skill description does not include a clear warning or disclosure about these changes.
No suspicious patterns detected.