T06 · System Persistence
- Location
SKILL.md:60- Finding
Persistent Background Service Installation in the Default Setup Workflow
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 60-63
Vulnerability Type: Persistent service installation
Risk Level: HighVulnerable Code:
bash npm install -g openclaw@latest openclaw onboard --install-daemon openclaw gatewayTechnical Analysis
The default installation template invokes
openclaw onboard --install-daemon, which explicitly installs OpenClaw as a background daemon. Unlike foreground execution, a daemon can remain active after the initiating terminal or skill interaction ends and may be configured to start automatically in later sessions.The workflow does not require explicit informed consent before creating the persistent service. It also does not provide the generated service definition, explain the daemon's operating privileges, restrict its service account, or document how to disable and remove it. This makes the persistent host modification insufficiently transparent.
Persistence becomes particularly consequential because the daemon is installed immediately after acquiring a mutable package version through
openclaw@latest. If that package or its dependency chain is compromised, the installed code can retain cross-session execution through the daemon.Attack Path
- A user asks the skill for OpenClaw installation or setup instructions.
- The skill supplies the default installation commands shown above.
- The user or an automation agent executes the commands.
- OpenClaw is installed globally and
openclaw onboard --install-daemoncreates a persistent background service. - The installed package continues operating after the original shell or skill session ends.
- If the installed package is compromised or behaves unexpectedly, its code retains execution through the daemon until the service is explicitly disabled and removed.
Impact Assessment
The daemon can obtain persistent execution with the privileges of the account under which the serv ...[truncated 594 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove
--install-daemonfrom the default quick-start workflow and use foreground execution by default. - Present daemon installation as a separate, optional step that requires explicit user consent.
- Before installation, show the service definition, startup behavior, executable path, service account, filesystem permissions, and network exposure.
- Run the daemon under a dedicated least-privileged account rather than an administrator or broadly privileged user.
- Restrict access to configuration files and credentials used by the service.
- Provide verified commands for stopping, disabling, and completely uninstalling the daemon.
- Require users to review the package version and provenance before enabling persistent execution.
- Document how to inspect service logs and confirm that the daemon is not exposed on unintended network interfaces.
- Remove
