T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:31- Finding
Execution of Mutable, Unverified Code from a Remote Repository
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is not proven malicious, but it asks users to install unverified remote tooling and handle live account cookies in ways that could expose accounts.
Install only if you trust the upstream repository and are comfortable granting broad local tooling access. Do not paste personal account cookies or proxy passwords into an agent chat; use a dedicated low-privilege account if unavoidable, verify exactly what cookies will be stored, and prefer pinned releases or audited source before running the installer.
SKILL.md:31Execution of Mutable, Unverified Code from a Remote Repository
SKILL.md:48Unsafe Handling and Broad Extraction of Browser Session Cookies
pip install directly from a GitHub archive on the main branch performs remote code retrieval from an unpinned moving target, creating a strong supply-chain and arbitrary-code-execution risk. In an agent skill, this is more dangerous because the install step is presented as the default bootstrap path and may be executed automatically by users or agents.
iles, clone repos, or write output in the agent workspace.** Use these directories instead:
| Purpose | Directory |
|---|---|
| Temporary output (subtitles, downloads) | /tmp/ |
| Upstream tool repos | ~/.agent-reach/tools/ |
| Config & tokens | ~/.agent-reach/ |
Violating this will pollute the user's workspace and degrade their agent experience over time.
pip install https://github.com/Panniantong/agent-reach/archive/main.zip
agent-reach install --env=auto
agent-reach doctor
install auto-detects your environment and installs core dependencies (Node.js, mcporter, xreach CLI, gh CLI, yt-dlp, feedparser). Run doctor to see what's active.
agent-reach doctor # channel status overview
agent-reach watch # quick health + update check
agent-reach check-update # check for new versions
agent-reach configure twitter-cookies "auth_token=xxx; ct0=yyy"
agent-reach configure p
The channel-configuration workflow explicitly tells the agent to ask users for cookies as part of setup, making credential collection a first-class behavior. That increases the likelihood of routine secret exfiltration and unsafe storage, especially when users may not understand that cookies are reusable authenticated sessions.
The workflow tells users to export a cookie header string and send it to the agent, but does not clearly warn that these are live session credentials that can grant account access. This can directly enable account takeover, impersonation, or long-lived session abuse if the credentials are logged, retained, or mishandled.
Instructing users to hand cookies to the agent and promoting browser cookie extraction creates a direct credential-harvesting pattern. This is especially dangerous in an agent skill because session tokens may be exposed in prompts, logs, telemetry, or downstream tools, enabling unauthorized access to platform accounts.
The --cookies-from-browser chrome pattern accesses browser-stored session data and can expose authenticated cookies for reuse by tooling. While there can be legitimate scraping use cases, this is credential extraction behavior and is dangerous because it enables silent reuse of web sessions outside the browser's normal security boundaries.
o "/tmp/%(id)s" "URL"
yt-dlp --dump-json "ytsearch5:query"
### Bilibili (yt-dlp)
> ⚠️ 服务器 IP 可能被 Bilibili 拦截(412 错误)。建议通过代理访问,或加 `--cookies-from-browser chrome`。
```bash
# Get video metadata
yt-dlp --dump-json "https://www.bilibili.com/video/BVxxx"
# Download subtitles
yt-dlp --write-sub --write-auto-sub --sub-lang "zh-Hans,zh,en" --convert-subs vtt --skip-download -o "/tmp/%(id)s" "URL"
# If blocked (412 / login required):
yt-dlp --cookies-from-browser chrome --dump-json "URL"
# Read a subreddit
curl -s "https://www.reddit.com/r/python/hot.json?limit=10" -H "User-Agent: agent-reach/1.0"
# Read a post with comments
curl -s "https://www.reddit.com/r/python/comments/POST_ID.json" -H
The skill defines activation triggers in Chinese and later includes section headers and operational guidance in Chinese, but does not state that language choice is optional or user-selected. This can violate language/locale policy expectations when a skill implicitly assumes a specific language without opt-in.
The skill includes collection and reuse of login cookies, including auto-extraction from a local browser, which is a highly sensitive credential-access capability. In the context of a channel installer, this is more dangerous because it normalizes obtaining session credentials as part of routine setup rather than treating them as exceptional secrets.
The skill is presented as an installer/configuration helper, but it also includes direct content publishing commands for XiaoHongShu. That capability expansion is security-relevant because it turns a setup skill into one that can perform outward actions on third-party accounts, increasing the chance of unintended posting or abuse.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
yt-dlp --dump-json "ytsearch5:query"
### Bilibili (yt-dlp)
Using npx mcporter without a pinned version allows execution of whatever package version is currently resolved from the registry at runtime. That creates a supply-chain risk: a compromised or maliciously updated package could execute arbitrary code during use of the skill.
No suspicious patterns detected.