T06 · System Persistence
- Location
SKILL.md:69- Finding
Persistent Unrestricted SSH Authorization
- Content
View full analysis
Append it to ~/.ssh/authorized_keys and run chmod 600" ``` ```bash echo "" >> ~/.ssh/authorized_keys ``` ### Technical Analysis The Skill directs either the local user or a remote agent to append a supplied SSH public key to `~/.ssh/authorized_keys`. This creates persistent, cross-session shell access to the target account. Passwordless SSH supports the declared file-transfer functionality, but an unrestricted authorized key grants substantially more permission than is required to synchronize specific memory files. The key is not constrained by source address, permitted command, file path, port-forwarding policy, or expiration. The public key may be communicated through the remote agent API. If that API session, bearer token, prompt, or response is compromised, an attacker can substitute their own key. The associated configuration template also uses `root` as its example SSH user, which could turn this persistent access into complete host control. ### Attack Path 1. The user asks an OpenClaw instance to establish multi-instance connectivity. 2. A public key is sent to the remote agent through the API or copied manually. 3. An attacker controlling or tampering with the API interaction substitutes an attacker-owned public key. 4. The remote agent appends the key to the target account's `authorized_keys`. 5. The attacker connects over SSH during any later session. 6. The attacker executes commands, accesses files, and uses all privileges granted to the target account. 7. If the target account is `root`, the a ...[truncated 537 chars]- Remediation
View remediation
