Back to skill

Security audit

Onboarding Journey Designer

Security checks for vulnerabilities and agentic risk

Overview

The skill’s main onboarding workflow is local and non-networked, but its bundled script contains under-disclosed audit and scanning modes that do not fit the advertised onboarding purpose.

Review this before installing if you expect a narrowly scoped onboarding-planning skill. The default packaged mode generates a local onboarding Markdown report and does not use the network, but the bundled script also contains dormant audit/scanning code that can inspect local files or directories if enabled by configuration. Use explicit input paths, avoid sensitive directories, and choose a safe output path because --output can create or overwrite a report file.

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
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (16)

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding

声明描述的是一个面向 onboarding 路径设计的业务型能力,重点应是按 Day 1 / Day 7 / Day 30 规划客户或员工旅程。实际代码并未体现任何特定于 onboarding、journey 设计、人员分层或行业差异建模的逻辑。相反,它实现的是一个通用 CLI 报告器/审计工具:可扫描目录、读取 CSV、匹配安全模式、检查 Skill 文件完整性和 frontmatter,并根据外部 spec 配置生成报告。这些能力与声明的业务用途明显不同,且包含未声明的审计/扫描能力。因此描述不能准确代表代码实际行为。

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The code performs security-oriented pattern scanning for secrets, dangerous shell snippets, and private URLs even though the skill is presented as an onboarding journey designer. In this context, hidden scanning functionality is risky because it can inspect arbitrary user files for sensitive material outside user expectations, creating a deceptive scope mismatch and potential privacy exposure.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The script’s dispatch logic enables multiple unrelated audit modes such as directory, CSV, pattern, and skill auditing, which materially exceeds the declared purpose of an onboarding journey designer. This kind of capability mismatch is dangerous because it broadens what the skill can inspect and process, increasing the chance of unauthorized analysis of local files and making the skill harder for users to trust or safely scope.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding

The skill declares no explicit tool scope or permissions, yet its instructions allow use of python3 and reference reading templates/specs and writing output files. This creates an under-specified capability boundary where an invoking agent may permit broader file and shell access than users expect, increasing the risk of unintended local file access or command execution.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

This markdown example output forces a specific language/locale presentation across the whole file, and there is no indication that users can opt into another language or that the skill is intentionally region-specific. Under the policy, language constraints should either be optional for the user or clearly justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

This manifest uses Chinese for the title, category label, summary, examples, and risk text, but does not state that the skill is intended only for Chinese-speaking users or offer a language choice. Per the policy, forcing a specific language without user opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The template content is entirely written in Chinese and the title explicitly defines a Chinese output template, which imposes a language choice on users without indicating that they can select another language. This is a natural-language locale policy concern because no opt-in or justification for the language restriction appears in the file.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The generated report strings are written directly in Chinese, such as "结果", "摘要", and workflow instructions, with no user opt-in or configurable locale. This is a natural-language policy concern because the skill forces a specific language regardless of user preference.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The directory and CSV audit functions enumerate arbitrary files and summarize their contents, which is unrelated to designing day 1/day 7/day 30 onboarding plans. Although this code is not directly exfiltrating data, it expands local data access beyond the advertised purpose and can expose filenames, headings, fields, and other internal context to downstream consumers of the report.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

Directory-report content is emitted entirely in Chinese, including headings like "扫描报告" and "目录概览", with no mechanism for user selection of locale. This enforces a fixed language across another major output path and violates the requirement to avoid forcing a language without opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The CSV reporting path emits headings and explanatory text only in Chinese, such as "数据报告" and "字段概览". Because users are not given a language option, the skill imposes a specific locale in natural-language output.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

This code path generates Chinese-only audit text like "模式扫描" and "发现结果" while lacking any locale configuration. That creates a policy issue because the skill forces one language for findings presentation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

Audit errors and report sections, including "缺少前置 frontmatter", "规范检查", and related guidance, are emitted only in Chinese. There is no explicit user choice or documented regional limitation, so the skill violates the language/locale policy.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
91% confidence
Finding

All user-facing instructions and examples in the README are written in Chinese, and the document does not indicate that the skill is region-specific or that users may choose another language. This can amount to an implicit language constraint without opt-in.

Content

No source excerpt is available for this finding.

Vague Triggers

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

The README lists activation examples such as '设计客户 onboarding 路线' and '按第 1/7/30 天拆任务', but it does not clearly distinguish when this skill should be used versus more general planning or task-breakdown requests. Because the trigger section provides only positive examples and no exclusion criteria, invocation scope may be broader than intended.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

This markdown file includes a command that writes to out.md, which is a file-modifying operation covered by the missing-warning rule for markdown files. The test steps tell the user to run the command and verify output generation, but do not warn that an existing out.md may be created or overwritten.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.