Back to skill

Security audit

抖音-达人粉丝画像 | 青虎AI

Security checks for vulnerabilities and agentic risk

Overview

The skill’s Douyin audience-analysis purpose is clear, but it asks the agent to make persistent local tool, runtime, and token-configuration changes that users should review before installing.

Install only if you are comfortable letting this skill add or update npm tooling, store or use a Qinghu API token, and make persistent local environment changes. Prefer a platform-managed, pinned qhkit installation and review paid-call consent before running queries.

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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
Findings (7)

YARA rule 'agent_skill_mcp_tool_poisoning_metadata': MCP/tool metadata poisoning indicators in tool schemas or skill manifests [agent_skills]

High
Category
YARA Match
Confidence
80% confidence
Finding

YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).

Content

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

md
---
name: qinghu-douyin-fans-portrait
description: "青虎AI 抖音-达人粉丝画像:按主页链接获取抖音账号的粉丝画像:年龄、性别、兴趣、设备、省份城市分布、城市等级。当用户说「这个抖音号的粉丝都是什么人」「粉丝年龄性别地域」「达人粉丝画像」或提出同类需求时必须触发。关键词:青虎AI、qhkit、青虎数据、抖音、Douyin、粉丝画像、受众分析、人群画像、查达人粉丝画像。"
user-invocable: true
homepage: https://www.npmjs.com/package/@iqinghu/qhkit
metadata: {"openclaw":{"emoji":"🧑‍🤝‍🧑","requires":{"

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The documentation claims the agent should not configure MCP in the host environment, but later instructs local installation, configuration, and token setup. This contradiction can mislead reviewers and operators, masking the fact that the skill does perform environment-changing actions and persistent configuration.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The instruction says to relay the error message to the user verbatim, and the surrounding document is written as mandatory Chinese-facing guidance. Combined with line L095 explicitly preferring domestic-site wording, this creates a locale-specific interaction pattern without offering the user a language choice. That can violate language/locale policy when the user's preferred language is not Chinese.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill goes beyond describing a query workflow and directs the agent to install Node, install a CLI globally, configure tokens, and modify the host environment. This materially expands the attack surface from a data lookup skill into host-level software installation and credential handling, which is dangerous if the skill content is wrong, compromised, or abused.

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 pinning a specific package version, allowing execution of whatever version is current at runtime. In an agent context this increases supply-chain risk and reduces reproducibility, especially because the package is later used to access external services and handle credentials.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
93% confidence
Finding

This duplicate finding identifies the same persistence behavior: unpacking Node into a user directory and exporting a modified PATH. Even though the script mentions current-shell scope, the documented option to append into shell startup files encourages lasting environment changes that exceed the skill's business purpose.

Content

Scanner excerpt · SKILL.md (reported line 88)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
93% confidence
Finding

This duplicate finding identifies the same persistence behavior: unpacking Node into a user directory and exporting a modified PATH. Even though the script mentions current-shell scope, the documented option to append into shell startup files encourages lasting environment changes that exceed the skill's business purpose.

Content

Scanner excerpt · SKILL.md (reported line 88)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

Static analysis

No suspicious patterns detected.