Back to skill

Security audit

WeChat Writing Workflow

Security checks for vulnerabilities and agentic risk

Overview

This skill is a WeChat publishing workflow, but it needs Review because it can guide live posting or mass sending and similarity-obscuring rewrites without adequate safeguards.

Install only if you are comfortable treating this as a manual, human-reviewed publishing workflow. Review every draft before any schedule, publish, or mass-send action; avoid the washing/similarity-evasion rewrite guidance; protect WeChat secrets; and use pinned or isolated dependency installs where possible.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:552
Finding

Unpinned Global npm Package Installation Creates Supply-Chain Risk

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 552 and 557
Vulnerability Type: Unpinned, globally installed third-party dependencies
Risk Level: Medium

Complete Code Snippet:

bash
npm install -g @wenyan-md/cli
bash
npm install -g cheerio

Technical Analysis

The installation instructions resolve unspecified package versions from the npm registry and install them globally. Consequently, the installed code can differ from the version reviewed when this Skill was published.

npm packages can execute lifecycle scripts during installation. If a package release, transitive dependency, maintainer account, or registry resolution is compromised, following these commands could execute attacker-controlled code under the installing user's privileges. The -g option increases exposure by installing packages into the user's or system's global npm environment. Installing cheerio globally is also unnecessary for a package normally consumed as a library.

The documentation references a legitimate upstream project for @wenyan-md/cli; however, that reference does not pin or verify the artifact retrieved by npm. No malicious dependency is currently demonstrated, so this finding concerns unsafe dependency acquisition rather than a confirmed malicious package.

Attack Path

  1. An attacker compromises an npm package, one of its transitive dependencies, its maintainer account, or the applicable registry resolution path.
  2. The attacker publishes a malicious release or adds a malicious installation lifecycle script.
  3. A user follows the Skill documentation and executes an unversioned npm install -g command.
  4. npm resolves the affected release because no reviewed exact version or lockfile constrains resolution.
  5. Malicious lifecycle code executes with the privileges of the user running npm.
  6. The payload may access that user's files and credentials or modify globally installed toolin ...[truncated 653 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin every dependency to an exact, reviewed version rather than resolving the latest release.
  2. Install dependencies locally in a dedicated project directory instead of using -g.
  3. Commit a lockfile and use npm ci to obtain reproducible dependency trees.
  4. Verify registry provenance and package integrity before installation.
  5. Audit both direct and transitive dependencies and regularly review lockfile changes.
  6. Disable lifecycle scripts with --ignore-scripts where package functionality permits; otherwise, review required scripts before installation.
  7. Treat cheerio as a local application dependency rather than a global command-line package.
  8. Run installation as an unprivileged user in an isolated environment and avoid sudo npm install -g.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (7)

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill explicitly documents a '内容改写/洗稿' workflow with steps such as 'AI 去痕迹' and '降重处理', which operationalizes disguised plagiarism rather than legitimate summarization or quotation. Even though a later section says to avoid plagiarism, the concrete workflow normalizes behavior that can facilitate copyright infringement, deceptive attribution, and policy violations.

Content

No source excerpt is available for this finding.

Ssd 4

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The step-by-step rewriting narrative is not a neutral editorial aid; it specifically describes a process for obscuring source provenance and lowering similarity scores. In context, this materially increases the likelihood that users will produce derivative content designed to evade plagiarism detection and copyright safeguards.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The publishing section includes immediate publish and scheduled mass-send commands, but does not warn that these actions can send content to a live audience or require an explicit confirmation gate. In an agent skill, that omission increases the risk of accidental publication, reputational harm, or non-reversible distribution of incorrect or unauthorized content.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The skill instructs analysis of user-profile attributes such as age, gender, region, reading time, and device type without any privacy, consent, retention, or legal-compliance guidance. This can encourage unnecessary processing of personal or demographic data and lead to privacy violations or misuse of audience analytics.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The manifest explicitly advertises an end-to-end workflow that includes publishing and push delivery, but it does not describe any requirement for explicit user confirmation, preview gating, or safe defaults before performing account-affecting actions. In a skill that operates on a WeChat official account, automatic publish behavior can cause unauthorized or accidental public posting, scheduled sends, or mass distribution if invoked by an agent without sufficient human approval.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The publishing stage specifically lists creating drafts, preview checks, and scheduled publish/broadcast actions, yet there is no user-facing warning, approval control, or constraint indicating these actions are gated behind explicit consent. Because these are external side effects on a real publishing platform, an agent could move from content generation to live distribution too easily, increasing the risk of accidental publication, spam, reputational harm, or misuse of connected credentials.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

The configuration section instructs users to export WECHAT_APP_ID and WECHAT_APP_SECRET but does not warn against exposing secrets in logs, commits, screenshots, or shared shells. While common in setup docs, omitting secret-handling guidance can still contribute to credential leakage and subsequent unauthorized account access.

Content

No source excerpt is available for this finding.