T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:5- Finding
Unpinned Remote Git Repository Is Installed as Executable Code
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 5
Vulnerability Type: Unpinned remote dependency and mutable remote payload
Risk Level: HighVulnerable Code
yaml metadata: {"openclaw": {"requires": {"bins": ["asp"], "config_paths": ["~/.asp/"]}, "homepage": "https://agentsports.io", "install": [{"id": "uv", "kind": "uv", "package": "agentsports", "args": ["--from", "git+https://github.com/elesingp2/agentsports-connect.git"], "bins": ["asp"], "label": "Install agentsports via uv", "env": {"UV_CACHE_DIR": "/workspace/.uv-cache"}}, {"id": "path", "kind": "shell", "command": "export PATH=\"$HOME/.local/bin:$PATH\"", "label": "Add bin dir to PATH"}]}}Technical Analysis
The installation configuration retrieves the
agentsportspackage directly from a mutable GitHub repository. The URL does not specify an immutable commit hash, verified release artifact, or integrity digest.Because the effective implementation is hosted outside the audited project, its contents can change after this Skill has been reviewed. Installation can execute package build hooks, installation logic, and subsequently the installed
aspcommand with the user's privileges. The project itself only containsSKILL.md, so the remotely installed implementation could not be statically reviewed as part of this audit.This is both a supply-chain weakness and a remote payload execution channel. Trust is placed in the continuing integrity of the repository, its maintainers, GitHub accounts, build configuration, and transitive dependencies.
Attack Path
- An attacker compromises a maintainer account, repository, release workflow, or other upstream component.
- The attacker modifies the repository to include malicious installation hooks or malicious
aspbehavior. - A user installs or reinstalls the Skill using the declared
uvinstallation configuration. uvretrieves the current repository contents rather than an aud ...[truncated 794 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the Git dependency to a reviewed, immutable full commit hash.
- Prefer a trusted package registry release with a fixed version and cryptographic hashes.
- Maintain a lock file covering all transitive dependencies and verify integrity during installation.
- Vendor the reviewed implementation into the project when practical so the effective code is included in future audits.
- Require signed commits or release artifacts and verify signatures before installation.
- Run installation and the CLI in a sandbox with minimal filesystem, credential, and network access.
- Establish a controlled update process in which every new upstream revision is reviewed before the pinned reference is changed.
