Back to skill

Security audit

consulting-delivery

Security checks for vulnerabilities and agentic risk

Overview

This consulting skill is mostly coherent, but it should be reviewed because it can automatically publish sensitive consulting materials to Notion and asks for broad local tool access.

Install only if you are comfortable with a consulting-document skill that may process sensitive client, financial, personnel, and interview materials. Before using it with confidential work, disable or tightly control Notion publication, require explicit approval before every external write, confirm the destination workspace/page, redact sensitive content, and avoid granting unrestricted Shell unless the runtime can sandbox or constrain it.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (2)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:8
Finding

Unnecessary Unrestricted Shell Permission

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 8-16
Vulnerability Type: Excessive system permission
Risk Level: Medium

Complete Code Snippet:

yaml
allowed-tools:
  - Read
  - Grep
  - Glob
  - Shell
  - Edit
  - Write

Technical Analysis

The Skill consists entirely of Markdown instructions and templates and includes no packaged scripts requiring operating-system command execution. Its documented computational operations are report generation, data extraction, and numerical analysis. Nevertheless, the configuration grants unrestricted access to Shell.

This violates the principle of least privilege. A general-purpose shell can execute arbitrary local commands, access files available to the Agent process, launch other programs, alter project data, and potentially initiate network requests. The permission therefore exposes substantially more capability than is necessary for the declared consulting workflow.

Uploaded reports, spreadsheets, transcripts, and externally retrieved research are potentially attacker-controlled inputs. If such content contains prompt-injection instructions that influence tool selection, unrestricted Shell access could turn a document-processing attack into arbitrary command execution within the Agent's security context.

Attack Path

  1. A user or external source supplies a malicious document containing instructions designed to induce command execution.
  2. The Skill reads the document while processing a report, interview transcript, or research task.
  3. The embedded instructions influence the Agent to invoke Shell.
  4. The Agent executes arbitrary commands with the filesystem, process, and network privileges of its runtime account.
  5. The attacker may access or modify data reachable by that account, subject to the surrounding sandbox and operating-system controls.

Impact Assessment

Successful exploitation could permit command execution un ...[truncated 488 chars]

Remediation
View remediation

Remediation Suggestions

  1. Remove Shell from allowed-tools unless a concrete workflow requires it.
  2. Replace general shell access with a constrained calculation or code-execution environment that has:
    • No unrestricted host filesystem access.
    • No network access by default.
    • Resource and execution-time limits.
    • An isolated temporary working directory.
  3. If shell access is unavoidable, allowlist specific executables and validated argument patterns rather than permitting arbitrary commands.
  4. Require explicit user confirmation before commands that read outside the task workspace, modify files, invoke network clients, or launch additional processes.
  5. Treat uploaded documents and web content strictly as untrusted data and prohibit instructions found inside them from authorizing tool calls.
  6. Log shell invocations and reject commands containing chaining, redirection, command substitution, or dynamic code evaluation unless independently justified.

T09 · Insecure Skill Coding Practices

Warning
Location
references/interview-notes.md:17
Finding

Automatic Notion Publication Can Expose Sensitive Interview Information

Content
View full analysis

Vulnerability Details

File Location: references/interview-notes.md, lines 17-24 and 95-99
Vulnerability Type: Unsafe handling and external publication of sensitive data
Risk Level: Medium

Complete Code Snippet — Sensitive Inputs:

markdown
Confirm the following metadata, asking the user if it is absent from the source:

1. Interview subject: name, title, company, and industry background
2. Interview type: expert, client, internal, or expert-network interview
3. Interview date and duration
4. Project background: associated project and research question
5. Interviewer: team member who conducted the interview
6. Confidentiality requirement: whether the Chatham House Rule applies
7. Original-record format: transcript, handwritten notes, live notes, or recollection

Complete Code Snippet — Publication Behavior:

markdown
If Notion is connected:
1. Automatically publish the standardized interview notes to Notion
2. Preserve the note structure and labels
3. Return the document link so the project team can share, annotate, and supplement verification information

Technical Analysis

The workflow processes names, job titles, companies, interview statements, confidential business information, and potentially material non-public information. It then instructs the Agent to publish the standardized notes automatically whenever a Notion connector is available.

The publication flow does not require explicit approval for each transfer, display the destination workspace or page, verify the destination's sharing permissions, or mandate a final redaction review. Preserving all labels is also insufficient protection: marking content as confidential does not prevent that content from being transferred to the external workspace.

This behavior conflicts with the template's own confidentiality rules, which state that confidential information must remain limited to the project team and that Cha ...[truncated 1616 chars]

Remediation
View remediation

Remediation Suggestions

  1. Make local Markdown output the default, even when Notion is connected.
  2. Require explicit user confirmation immediately before every publication.
  3. Show the exact destination workspace, parent page, page title, and effective sharing scope before requesting approval.
  4. Add a mandatory pre-publication review that detects:
    • Names and direct identifiers.
    • Identifiable combinations of title, company, and demographic information.
    • Content labeled confidential.
    • Chatham House material.
    • Trade secrets and potential material non-public information.
  5. Exclude confidential content from external publication by default rather than merely preserving its label.
  6. Automatically anonymize Chatham House material and ask the user to approve the redacted preview.
  7. Validate destination permissions and reject publication to public pages, broadly shared workspaces, or unapproved external collaborators.
  8. Record the user's approval, destination, redactions, timestamp, and resulting page identifier in an audit log.
  9. Provide separate internal and external versions so sensitive project-team notes cannot be accidentally included in a broadly shared deliverable.
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
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (26)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The user-facing documentation is entirely in Chinese and presents all triggers and usage instructions only in that language, without offering a language choice or noting that the skill is intentionally region-specific. This can constitute a language/locale policy issue because it implicitly requires users to interact in a specific language without opt-in.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The README says users can trigger the skill through natural conversation and "just state the need" for automatic matching, which implies broad activation criteria. In a general-purpose assistant, this can cause unintended routing on ordinary business language and invoke the skill on sensitive or irrelevant content without clear user intent.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The natural-language description, trigger phrases, workflow, and output templates are all specified in Chinese, and the skill presents this as the required operating mode rather than an option. There is no statement that users may choose another language or that the language restriction is required for a region-specific compliance reason.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest advertises very broad trigger phrases such as '写报告', '周报', and '帮我调研一下', which overlap heavily with ordinary user requests. This can cause unintended skill activation and routing, increasing the chance that the agent follows this skill's workflow when the user did not explicitly request it, potentially overshadowing safer or more appropriate behaviors.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The routing logic relies on ambiguous scenario matching and 'highest match' selection without clear precedence boundaries. When multiple subskills partially match, the agent may choose an unintended template, leading to misrouting, inappropriate data handling, or execution of broader instructions than the user intended.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill advertises automatic publication of benchmarking reports to Notion as an enhancement, but does not warn that report contents may include confidential client strategy, internal metrics, interview notes, or non-public financial data being sent to a third-party service. In a consulting-delivery context, this omission is risky because users may assume output stays local unless explicitly told otherwise, leading to unintended external disclosure.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The execution flow instructs the agent to automatically publish the completed benchmarking report to Notion if connected, without requiring a confirmation step or checking whether the report contains sensitive business information. Because this skill is designed for consulting deliverables, the generated artifacts are especially likely to contain confidential client data, making silent or automatic external sharing materially dangerous.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill explicitly supports automatically publishing research reports to Notion but does not require an explicit user confirmation or warn that report contents may be sent to an external third-party service. Because desktop research can include uploaded customer materials, internal analyses, or sensitive business context, this can cause unintended data disclosure outside the primary chat environment.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The file is titled and written as a Chinese-language CEO briefing skill, and the instructions consistently prescribe Chinese output conventions without any opt-in or language-selection mechanism. Under the stated policy, forcing a specific language is a natural-language policy issue unless the skill offers a choice or clearly documents a justified region-specific constraint.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill instructs automatic publication of executive summaries and backup pages to Notion without requiring explicit user confirmation or warning that sensitive project, financial, personnel, or strategy data will be transmitted to an external service. In this skill’s context, the content is likely to include highly confidential business information, so silent or assumed export materially increases data leakage and compliance risk.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill is presented as a consulting framework generator, but it also advertises automatic publishing to Notion, which is an external write action. That creates a capability/expectation mismatch and can cause user data to be sent to a third-party system without sufficiently explicit consent and scope control.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The document describes automatic publishing to Notion but does not provide a clear user-facing warning that project content may be transferred to an external service. In a consulting context, generated materials may contain confidential client strategy, financial, or interview data, so silent or weakly disclosed transfer materially increases data leakage risk.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The instruction "所有输出使用中文" forces a specific language/locale for all outputs. Under the policy, language constraints are only acceptable when the user is given a choice or the restriction is clearly justified as region-specific, neither of which is present here.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill declares code execution for market sizing and financial modeling even though its primary role is producing consulting framework skeletons. Unnecessary code execution increases attack surface, especially if user-provided files or prompts can influence computations or trigger unsafe processing flows.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill explicitly promotes automatic publication of interview notes to Notion for team sharing and annotation, but it handles highly sensitive material including confidential business information, Chatham House Rule content, and possible insider information. Without an explicit user-facing consent step, sensitivity check, or warning about external sharing, users may unintentionally transmit restricted content to a third-party platform, causing confidentiality, privacy, or compliance breaches.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The output workflow operationalizes auto-publishing to Notion as a normal step, which increases the likelihood that sensitive interview notes are shared externally by default. In this skill context, the notes may contain trade secrets, identities, regulated information, and non-public statements, so omission of a clear warning, review gate, and least-sharing default is dangerous.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill advertises automatic publication of completed consulting reports to Notion, which can contain confidential business strategy, financial data, interview notes, and client-sensitive material, but it does not require explicit user consent or warn that content will be transmitted to an external third-party service. In a consulting-delivery context, this increases the risk of unintended data exfiltration, privacy violations, and breach of client confidentiality obligations.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The output-and-publish workflow instructs the agent to automatically publish the full report to Notion and return a link, but it omits safeguards such as consent prompts, sensitivity checks, or restrictions for confidential client deliverables. Because the generated artifact may aggregate sensitive source material from uploaded files, interviews, and research, automatic third-party publication materially raises the chance of unauthorized disclosure.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill offers automatic publication of structured weekly reports to Notion without requiring an explicit user warning that potentially sensitive project, client, staffing, or cost information will be transmitted to an external service. In this skill's context, weekly reports may contain confidential internal or client data, so silent export materially increases data leakage and compliance risk.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The manifest positions this skill as 项目周报/项目进展/status report generation. L202 expands the skill to proactively search external industry dynamics and policy changes, which is not an obvious requirement for turning user-supplied project updates into a structured weekly report.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill states it can read uploaded work plans, prior reports, and meeting notes without warning that these files may contain sensitive client information, internal budgets, staffing details, or contractual material. Because the skill is explicitly designed for consulting delivery, the surrounding context makes the documents especially likely to contain confidential business data, increasing the severity of unannounced processing.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
80% confidence
Finding

L204 states that Python code execution may be used for progress calculation, burn-rate analysis, and trend forecasting. While simple calculations can support reporting, exposing a general code-execution capability is broader than what the manifest describes for a consulting delivery weekly-report skill.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The fallback policy says decision items may be rewritten as open-ended questions when concrete options are unavailable, directly contradicting the earlier red-line rule forbidding open-ended decision requests. This inconsistency can degrade output quality and decision safety, especially in escalated red-status reporting where leaders may act on ambiguous or incomplete requests.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

The natural-language instructions throughout the file are entirely in Chinese, which can amount to forcing a specific language without user opt-in. No user-selectable language option or documented region-specific justification is provided in the skill description.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
73% confidence
Finding

manifest 中“方案框架”主要描述为方案设计、Issue Tree 等结构化咨询输出,而这里额外引入了搜索行业报告和公司公开信息的外部检索能力。尽管这对咨询工作有帮助,但对当前文件所定义的“方案框架”子技能而言,这是一项额外能力,而非其直接、唯一必要的核心行为。

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.