T08 · Insecure Dependencies
- Location
SKILL.md:118- Finding
Execution of an Unverified Local CLI Dependency
- Content
View full analysis
``` The dependency table at line 253 declares `grain-crawler CLI` as required and states that it is bundled with the Skill or installed according to documentation. However, the audited package contains only `SKILL.md`; it does not include the CLI, installation documentation, a pinned version, a cryptographic checksum, or a signature. ### Technical Analysis The Skill grants command-execution capability and instructs the Agent to invoke `grain-crawler` by its bare executable name. A shell normally resolves such a name through the host's `PATH`. Because the package does not provide a verifiable CLI implementation or identify a pinned and authenticated distribution source, the Agent cannot establish which executable will run. An attacker who controls an earlier `PATH` directory, a local installation location, or the dependency distribution process could provide a malicious executable named `grain-crawler`. This is a supply-chain trust-boundary weakness. The documentation does not itself contain a malicious payload, but it directs the Agent to execute an external component whose identity and integrity cannot be verified from the audited project. ### Attack Path 1. An attacker places a malicious executable named `grain-crawler` in a directory searched before the legitimate installation directory, or distributes a compromised package under that name. 2. A user asks the Agent to search or inspect the local Granola archive. 3. Following `SKILL.md`, the Agent executes a command such as `grain-crawler search ...`. 4. The operating system resolves the attacker-controlled ex ...[truncated 989 chars]- Remediation
View remediation
