T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:13- Finding
Unpinned Remote Repository Is Downloaded and Executed Locally
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 13–15
Vulnerability Type: Remote payload retrieval and supply-chain execution
Risk Level: HighVulnerable Code
bash git clone https://github.com/geminimir/stripemeter && cd stripemeter cp .env.example .env && docker compose up -d && pnpm -r build pnpm db:migrate && pnpm devTechnical Analysis
The quick-start workflow clones the mutable default branch of an external Git repository and immediately executes content obtained from it. No immutable commit or release tag, checksum, cryptographic signature, or provenance verification is specified.
The subsequent commands create several execution channels for remotely controlled content:
docker compose up -dprocesses downloaded Compose configuration and starts referenced images.pnpm -r buildmay execute package lifecycle and build scripts.pnpm db:migrateruns downloaded migration logic with database access.pnpm devstarts the downloaded application.
The external repository and its dependencies are not included in the audited artifact, so their safety cannot be established from this project. The effective payload may also change after this Skill has been reviewed.
Attack Path
- An attacker compromises the referenced repository, its maintainer account, a dependency, or a container image.
- The attacker places malicious logic in a package lifecycle script, build command, migration, application startup path, Compose configuration, or referenced image.
- A user follows the documented quick-start instructions and clones the current default branch.
- Docker or pnpm executes the attacker-controlled content without an integrity or provenance check.
- The malicious process accesses resources available to the user's account or containers, potentially including environment files, Stripe credentials, database credentials, Redis credentials, source code, and reachable services.
Impact Assessment
Successful ...[truncated 727 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin the repository to a reviewed, immutable commit hash rather than relying on its default branch:
bash git clone https://github.com/geminimir/stripemeter cd stripemeter git checkout --detach VERIFIED_COMMIT_SHA -
Publish the expected commit identifier through a trusted channel and verify signed commits or release tags.
-
Pin container images by immutable digest and verify image signatures or attestations before startup.
-
Require a committed lockfile and install dependencies with frozen-lockfile enforcement.
-
Audit package lifecycle scripts, migration files, Dockerfiles, Compose files, volume mounts, capabilities, and network exposure before execution.
-
Run the stack under a dedicated, unprivileged account and use rootless containers where possible.
-
Do not mount the Docker socket, broad host directories, SSH agents, cloud credentials, or unrelated secrets into containers.
-
Supply narrowly scoped development credentials only after the downloaded source has been verified.
-
Separate build, migration, and startup steps so users can review each stage before execution.
-
