Back to skill

Security audit

AstrBot plugin dev skill

Security checks for vulnerabilities and agentic risk

Overview

This is a documentation-only AstrBot plugin-development skill with purpose-aligned examples and no hidden execution, exfiltration, or destructive behavior found.

This skill is reasonable to install for AstrBot plugin development. When using it to generate real plugins, review any features involving API keys, persistent storage, LLM hooks, proactive messages, platform-specific APIs, or agent loops, and make sure those behaviors are user-requested and documented in the plugin README/config.

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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • System Prompt LeakageDirect Leakage, Indirect Extraction, Tool-Based Exfiltration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (6)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The example modifies the system prompt with the instruction '请保持简洁。', which forces Chinese-language behavior in an LLM interaction. There is no indication that this is optional, user-selected, or justified as a region-specific requirement, so it appears to impose a language preference unilaterally.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

This markdown file documents storing event.unified_msg_origin and later using it to send proactive messages, but it does not warn users that subscription state/session identifiers may be persisted or that the skill can message them later without a new prompt. Because markdown files should disclose behaviors affecting privacy or user experience, this omission qualifies as a missing user warning.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The checklist requires specific Chinese phrases for the issue title and declaration statements, which imposes a language/locale requirement in natural-language instructions. The file does not offer an alternative language option or explain that this requirement is limited to a region-specific workflow, so it fits the language-policy violation category.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

This markdown file includes user-facing natural-language content in Chinese within otherwise English documentation, such as the hint text example. The file does not state that the document is intended for Chinese-speaking users only or offer any language/locale choice, which can conflict with language/locale policy requirements.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
96% confidence
Finding

The example response string 请求失败,请稍后再试。 presents a fixed Chinese-language user message with no indication that language is configurable or chosen by the user. This can violate a language/locale policy when the skill guidance is otherwise general-purpose and not documented as region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
79% confidence
Finding

The example metadata uses a Chinese-only description value (desc: 一个示例插件). In a policy-sensitive context, this can be read as prescribing a specific language for plugin metadata without offering a choice or explaining that the example is locale-specific.

Content

No source excerpt is available for this finding.