T03 · Remote Payload Retrieval and Execution
- Location
README.md:80- Finding
Unpinned Remote Payload Installed into the User's Command Path
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 80-83
Vulnerability Type: Remote payload retrieval and execution
Risk Level: HighThe documented installation process clones a mutable remote repository and creates a symbolic link to an executable that is not included in the audited artifact.
bash # Clone the skill git clone https://github.com/hopyky/self-reflection.git ~/.openclaw/skills/self-reflection # Add to PATH ln -sf ~/.openclaw/skills/self-reflection/bin/self-reflection ~/bin/self-reflectionThe retrieved command is subsequently intended to be invoked automatically through the heartbeat instructions documented in
README.md, lines 109-116:markdown ## Self-Reflection Check (required) Run `self-reflection check` at each heartbeat. - If **OK**: Continue normally. - If **ALERT**: Run `self-reflection read`, reflect, then `self-reflection log`.Technical Analysis
The
git clonecommand retrieves the repository's mutable default branch without pinning a commit, release tag, cryptographic checksum, or verified signature. The downloadedbin/self-reflectionimplementation is absent from the supplied audit artifact, so its behavior cannot be verified by this review.Linking that unreviewed executable into
~/binmakes it available as a normal command. The heartbeat integration then encourages repeated execution. The effective payload can therefore differ from the files reviewed during this audit if the upstream repository changes or is compromised.This most directly matches
T03: Remote Payload Retrieval and Execution: executable code is obtained from an external location, and the code executed by the agent can change after package review.Attack Path
- An attacker compromises the upstream repository, its maintainer account, or the repository's mutable default branch.
- The attacker modifies
bin/self-reflectionto contain malicious commands. - A ...[truncated 1170 chars]
- Remediation
View remediation
Remediation Suggestions
- Include the complete
bin/self-reflectionimplementation in the distributed and reviewed skill artifact so the executed code matches the audited package. - If remote retrieval is unavoidable, pin installation to an immutable, reviewed commit hash rather than cloning the mutable default branch.
- Publish and verify a cryptographic checksum or signed release before making the executable available in
PATH. - Use signed commits or release artifacts and document the trusted signing identity and verification procedure.
- Do not configure recurring heartbeat execution until the retrieved implementation has been integrity-verified and independently reviewed.
- Avoid linking mutable repository working-tree files directly into
~/bin. Copy a verified artifact into a controlled installation directory instead. - Run the command with least privilege and a restricted environment, limiting access to credentials, sensitive files, and unnecessary network resources.
- Ensure updates require an explicit review and verification step rather than silently changing the code invoked by recurring heartbeats.
- Include the complete
