T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:37
- Finding
- Installation of a Mutable Remote Skill Without Integrity Verification<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 37-46 **Vulnerability Type**: Remote payload retrieval from an unpinned external repository **Risk Level**: High ### Vulnerable Code ```markdown ### 1. Installation ```bash /install https://github.com/kflohr/telecom-agent-skill ``` ### 2. Setup ```bash telecom onboard # Follow the wizard to link your Twilio account. ``` ``` ### Technical Analysis The installation instruction retrieves a Skill directly from a mutable GitHub repository. It does not pin the source to an immutable commit, verify a cryptographic checksum, validate a signature, or include the retrieved implementation in the audited project. Consequently, the code or instructions ultimately loaded by `/install` can differ from what was available during this audit. The local artifact contains only `SKILL.md`, so the external Skill implementation and the resulting `telecom` executable could not be inspected. The subsequent onboarding step directs the user to link a Twilio account. This creates a sensitive trust boundary because a remotely retrieved component may receive access to a billable telecommunications service. The document also advertises bulk calling, global dialing, recordings, transcripts, and remote administration, increasing the potential impact of an upstream compromise. ### Attack Path 1. An attacker compromises the referenced GitHub account or repository, or otherwise gains the ability to modify its default branch. 2. The attacker inserts malicious Skill instructions, installation logic, or executable components into the repository. 3. A user or agent follows `SKILL.md` and runs `/install` against the mutable repository URL. 4. The installer retrieves the attacker-controlled revision because no immutable commit, signature, or checksum is required. 5. The user runs `telecom onboard` and links a Twilio account. 6. The malicious component operates with whatever local and Twilio permissions were granted, potentia ...[truncated 786 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin installation to a specific, reviewed Git commit rather than a mutable repository branch. 2. Publish and verify a cryptographic checksum or signed release before loading or executing the Skill. 3. Vendor the reviewed implementation into the project so its scripts, dependencies, and runtime behavior can be audited together with `SKILL.md`. 4. Require explicit confirmation before executing downloaded code or linking any external service account. 5. Use narrowly scoped Twilio credentials with only the permissions required for the intended operations. 6. Apply destination restrictions, call-rate limits, spending caps, and alerts at the Twilio account level. 7. Separate read-only monitoring credentials from credentials capable of placing calls or changing configuration. 8. Document the files installed by `/install`, the permissions requested during onboarding, and the storage and access controls for recordings, transcripts, and logs. 9. Re-audit every upstream revision before updating the pinned commit. ]]>
