T03 · Remote Payload Retrieval and Execution
- Location
Openclaw一键安装.md:27- Finding
Remote Installation Script Executed Directly Through a Shell Pipeline
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is aimed at Xiaohongshu operations, but it can publish to a live account, saves reusable login state in plaintext, and includes broad OpenClaw installation/service setup.
Install only if you are comfortable giving the skill access to a live Xiaohongshu creator account and with OpenClaw gateway setup on the machine. Treat ~/.openclaw/workspace/xhs_user_info.json and gateway tokens as credentials, avoid sharing logs or screenshots, prefer dry-run/private visibility first, and avoid the hard/draft fallback publishers unless you have reviewed the target page state.
Openclaw一键安装.md:27Remote Installation Script Executed Directly Through a Shell Pipeline
Openclaw一键安装.md:87Installation Guide Registers and Starts a Persistent Gateway Service
Openclaw一键安装.md:60Unpinned Global Installation of OpenClaw From the npm Registry
scripts/xhs_login_qr.js:156Reusable Xiaohongshu Authentication State Stored as Unprotected Plaintext
Openclaw一键安装.md:97Gateway Authentication Token Printed in Plaintext
scripts/xhs_publish_draft_direct.js:25Broad Draft Selection and Publish-Button Fallbacks Can Publish Unintended Content
The file’s content is materially unrelated to the declared Xiaohongshu operations skill and instead instructs users to install and administer a separate agent platform with OAuth and gateway/device controls. This mismatch expands the skill’s effective privileges and attack surface, making it easier to smuggle unrelated system-management behavior into a workflow where users would not reasonably expect it.
The script provisions a local agent platform, performs OAuth onboarding, installs and starts a gateway service, and manages devices/tokens, none of which is necessary for ordinary Xiaohongshu posting tasks. In the context of this skill, that is dangerous because it introduces powerful local control-plane capabilities under the guise of social-media operations, increasing the risk of unauthorized access or lateral misuse.
The curl ... | bash pattern creates an immediate code-execution chain from network content to a shell interpreter, removing opportunities for review or integrity validation. In a skill that already requests users to install unrelated agent infrastructure, this significantly amplifies the risk of arbitrary code execution from tampered or substituted content.
fi
echo "[1/6] 安装 nvm..."
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash
# shellcheck disable=SC1090
. "$NVM_DIR/nvm.sh"
}
The script normalizes disclosure of a sensitive gateway credential by extracting it and echoing it during routine verification. In a skill already mismatched to its stated purpose, exposing a live auth token is especially dangerous because anyone with access to the terminal output can potentially connect to or control the local agent gateway.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
A workflow that depends on reusing saved sessions/cookies from the filesystem without declaring that credential access pattern is risky, even if the detailed implementation is external. Hidden reliance on stored authentication material can expose users to unauthorized posting or account misuse if those files are stolen, shared, or invoked unexpectedly.
Referenced artifact was not completely inspected
- `scripts/xhs_publish_with_saved_session.js`:使用保存会话直接发布图文
Referenced artifact was not completely inspected
- `scripts/xhs_publish_with_saved_session.js`:使用保存会话直接发布图文
The documentation explicitly enables direct publishing and automated login flows, including QR/SMS session establishment and immediate posting, but it does not require an explicit user warning or confirmation before taking account-impacting actions. In context, this is dangerous because the skill is designed to operate on a live social media account where a mistaken post, visibility change, or login flow can have immediate reputational and operational consequences.
This code captures the authenticated browser session by exporting cookies plus localStorage and sessionStorage into a JSON file on disk. Those artifacts can contain bearer tokens, session identifiers, and other sensitive state that may allow account takeover or unauthorized reuse of the Xiaohongshu creator session by any process or user with workspace access.
The guide retrieves and prints the gateway authentication token directly to normal terminal output without emphasizing that it is a secret. Displaying credentials in plaintext increases the chance of exposure through shell history, terminal scrollback, screenshots, logs, or shoulder surfing, enabling unauthorized access to the local gateway.
The post-install example instructs users to place the auth token into an environment variable in plaintext for reuse. While common for convenience, this practice increases the risk of accidental leakage via process inspection, shell history, debug output, inherited environments, or copied terminal transcripts.
The skill references environment-modifying behavior (disable_proxy.js) and relies on local session/state artifacts, but it declares no explicit tool scope or permissions boundaries. That makes privileged behavior non-transparent and increases the risk that the skill is invoked with broader access than users or orchestrators expect.
The manifest description is very broad and can cause the skill to be selected for a wide range of Xiaohongshu-related requests, including sensitive account actions like login, publishing, comment replies, and visibility changes. Overbroad routing increases the chance of accidental invocation of automation that affects a real account without sufficiently narrow intent checks.
The skill instructs changing proxy-related environment variables via disable_proxy.js without clearly warning that local network settings may be altered. Even if intended to improve platform reliability, silently modifying environment/network behavior can disrupt other tasks, bypass enterprise routing expectations, or create confusing side effects on the host environment.
The instruction states that language should prioritize a conversational style, effectively forcing a specific output style by default. Because the skill does not present this as a user choice or opt-in, it creates a natural-language policy concern around imposed communication style.
The file is entirely authored in Chinese and targets Chinese platforms and account types, but it does not state that the language/locale restriction is optional or region-specific by design. Under the policy, forcing a specific language or locale without user opt-in is a natural-language policy violation.
The entire skill file is written as Chinese-only reply examples and templates, with no indication that users may choose another language or that the skill is intentionally limited to Chinese-language use. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation.
The file defines the persona entirely for 小红书 posting/reply style and sets a default communication mode in Chinese platform-specific voice. This imposes a specific language/locale by default rather than offering the user a choice or making the locale opt-in.
The script saves QR-code and page screenshots to predictable workspace paths during login. These images may expose login QR codes, account identifiers, or other transient authentication information that can be used by another local actor to observe or interfere with the authentication flow.
Detected: suspicious.dangerous_exec