T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:22
- Finding
- Unpinned Third-Party Dependencies Create a Supply-Chain Risk<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:22`; also present in `references/WEBHOOKS.md:84` **Vulnerability Type**: Unpinned and unverified third-party dependency installation **Risk Level**: Medium ### Vulnerable Code `SKILL.md:22`: ```bash pip install agentmail python-dotenv ``` `references/WEBHOOKS.md:84`: ```bash pip install agentmail flask ngrok python-dotenv ``` ### Technical Analysis The installation instructions do not constrain dependency versions or verify package integrity. Consequently, users following the documentation receive whichever package versions the package index resolves at installation time. This behavior creates a supply-chain risk because installation and import of a compromised future release could execute attacker-controlled code with the permissions of the user running the Skill. The affected packages may also gain access to `AGENTMAIL_API_KEY`, webhook content, email messages, attachments, and other environment variables available to the process. The audit found no evidence that the currently named packages are malicious, and there is no apparent dependency-confusion or typosquatting attempt in the package names. The vulnerability is the absence of reproducible, integrity-verified dependency management. ### Attack Path 1. An upstream package account, release process, or package-index distribution channel is compromised. 2. An attacker publishes a malicious version under one of the documented package names. 3. A user follows the Skill instructions and runs the unpinned `pip install` command. 4. The package manager resolves and installs the compromised version. 5. Malicious installation-time or import-time code executes in the user's environment. 6. The malicious dependency can access credentials and email data available to the Skill process or perform actions with the invoking user's filesystem and network privileges. ### Impact Assessment Successful exploitation provides code execution under the acco ...[truncated 681 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin every direct dependency to a reviewed version, for example: ```bash pip install \ agentmail==REVIEWED_VERSION \ python-dotenv==REVIEWED_VERSION ``` 2. Maintain a lock or requirements file containing exact transitive versions. 3. Generate and enforce cryptographic hashes: ```bash pip install --require-hashes -r requirements.txt ``` 4. Review package provenance, publisher identity, release history, and source repository before selecting versions. 5. Use an isolated virtual environment with only the permissions and environment variables necessary for AgentMail operations. 6. Run dependency vulnerability and license scanning during release preparation. 7. Update both `SKILL.md` and `references/WEBHOOKS.md` so users are not directed to bypass the reproducible installation process. ]]>
