Back to skill

Security audit

AI电商图文广告 | 图文广告 | 营销图文 | 广告海报生成 | LinkPix

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent ad-asset generator, but it asks agents to install and upgrade third-party tooling and persist API credentials on the host without clear user confirmation or containment.

Review before installing. This skill appears purpose-aligned, but it can install or update Node/npm tooling, run an unpinned qhkit package, and store a qhkit API token on the machine. Prefer a preinstalled, version-pinned qhkit in a disposable or managed environment, provide tokens through scoped secret handling where possible, and confirm before allowing global installs, upgrades, or shell-profile changes.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (7)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger language says the skill must activate for broad, common e-commerce content requests, which can cause unintended invocation. Over-broad mandatory triggering is dangerous because it may route benign content tasks into a skill that performs installation, configuration, network access, and third-party service interaction the user did not specifically request.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This skill includes extensive environment bootstrap and software installation steps unrelated to the narrow task of generating ad assets, including installing Node, globally installing packages, and upgrading tooling. Expanding agent behavior from content generation into host modification increases attack surface, enables arbitrary third-party code execution, and violates least-privilege expectations for a user-invocable skill.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
86% confidence
Finding

The skill instructs use of npx @iqinghu/qhkit without a pinned version, allowing whatever package version is current at execution time to be fetched and run. That creates a supply-chain risk and makes behavior non-reproducible; if the upstream package is compromised or changes unexpectedly, the agent could execute unreviewed code.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
90% confidence
Finding

This duplicated finding identifies the same persistence behavior: unpacking Node into a user-controlled directory and exporting a modified PATH. In the context of a user-invocable marketing asset skill, durable environment changes are unjustified and widen the blast radius of any compromised dependency or mistaken invocation.

Content

Scanner excerpt · SKILL.md (reported line 70)May include surrounding context.

Linux 二进制安装(装到用户目录,无需 root;先校验官方 SHA256 再解包):

cd /tmp && curl -fsSLO https://nodejs.org/dist/v22.22.3/node-v22.22.3-linux-x64.tar.xz cd /tmp && curl -fsSL https://nodejs.org/dist/v22.22.3/SHASUMS256.txt | grep ' node-v22.22.3-linux-x64.tar.xz$' | sha256sum -c - mkdir -p "$HOME/.local/lib" && tar -xJf /tmp/node-v22.22.3-linux-x64.tar.xz -C "$HOME/.local/lib" export PATH="$HOME/.local/lib/node-v22.22.3-linux-x64/bin:$PATH"

text

Session Persistence

Medium
Category
Rogue Agent
Confidence
90% confidence
Finding

This duplicated finding identifies the same persistence behavior: unpacking Node into a user-controlled directory and exporting a modified PATH. In the context of a user-invocable marketing asset skill, durable environment changes are unjustified and widen the blast radius of any compromised dependency or mistaken invocation.

Content

Scanner excerpt · SKILL.md (reported line 70)May include surrounding context.

Linux 二进制安装(装到用户目录,无需 root;先校验官方 SHA256 再解包):

cd /tmp && curl -fsSLO https://nodejs.org/dist/v22.22.3/node-v22.22.3-linux-x64.tar.xz cd /tmp && curl -fsSL https://nodejs.org/dist/v22.22.3/SHASUMS256.txt | grep ' node-v22.22.3-linux-x64.tar.xz$' | sha256sum -c - mkdir -p "$HOME/.local/lib" && tar -xJf /tmp/node-v22.22.3-linux-x64.tar.xz -C "$HOME/.local/lib" export PATH="$HOME/.local/lib/node-v22.22.3-linux-x64/bin:$PATH"

text

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill directs the agent to set persistent authentication credentials via qhkit config set or environment variables, causing secrets to be stored or modified on the host. This can leak credentials across sessions, affect other workflows, and normalize an agent handling long-lived tokens for a third-party service without clear isolation or consent.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The instructions require using the domestic iqinghu.com site, require site to be cn, and direct the agent not to use the international configuration unless the user explicitly states they use it. This imposes a locale-specific policy by default rather than offering the user a language/region choice.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.