Back to skill

Security audit

报告汇总构建器基础版

Security checks for vulnerabilities and agentic risk

Overview

This report-building skill is mostly coherent, but it includes under-disclosed network/callback behavior and an unnecessary environment-variable check that can expose secrets.

Review this skill before installing. It can be useful for local report summarization, but only use it with report folders you intend to process, avoid providing callback URLs unless you know exactly what will be sent, and do not run the documented environment-variable enumeration commands. Treat the local-only privacy statement as incomplete because the artifact also references external APIs and network-dependent features.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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
Findings (1)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:188
Finding

Sensitive Environment Credential Enumeration

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 188–193
Vulnerability Type: Excessive access to sensitive environment variables
Risk Level: Medium

Vulnerable Code Snippet:

bash
# Verify whether environment variables are configured
echo "Configuration check:"
env | grep -E "API|KEY|TOKEN|SECRET" | sed "s/=.*/=***/"  # Linux/macOS
# Or PowerShell
# Get-ChildItem Env: | Where-Object {$_.Name -match "API|KEY|TOKEN"} | Format-Table

Technical Analysis

The Skill directs the Agent to enumerate environment variables associated with API keys, tokens, and secrets, even though credential discovery is not necessary for its stated report-aggregation functionality.

The Linux/macOS command redacts values after retrieving them but still discloses the names and existence of sensitive variables. More seriously, the PowerShell command passes complete environment-variable objects to Format-Table without selecting safe properties or redacting values. Its output can therefore contain both variable names and plaintext credential values.

Because the Skill requests exec access, an Agent following these instructions may place credentials in terminal output, execution logs, conversation context, or retained transcripts. This violates least-privilege principles by accessing sensitive process data unrelated to the report-building task.

Attack Path

  1. A user installs or invokes the Skill and follows its environment-validation procedure.
  2. The Agent executes the documented command using its exec capability.
  3. On Windows, PowerShell enumerates all environment variables whose names contain API, KEY, or TOKEN.
  4. Format-Table displays the matching objects without explicit value redaction.
  5. Sensitive values are exposed in the terminal and may also be captured in Agent context, execution logs, transcripts, or downstream monitoring systems.
  6. Any party or subsequent instruction with acces ...[truncated 988 chars]
Remediation
View remediation

Remediation Suggestions

  1. Remove broad environment-variable enumeration because it is unrelated to local report aggregation.
  2. If a credential is genuinely required, check only the exact expected variable and return a boolean status rather than its value.
  3. Explicitly select safe output fields; never pass complete environment-variable objects to formatting or logging commands.
  4. Prevent command output containing secrets from entering Agent responses, execution logs, caches, or telemetry.
  5. Document each required credential, its purpose, and the minimum permissions it needs.
  6. Add automated checks that reject commands which enumerate variables using broad patterns such as KEY, TOKEN, or SECRET.

A safer PowerShell presence check would be:

powershell
if (Test-Path Env:REQUIRED_API_KEY) {
    "REQUIRED_API_KEY is configured"
} else {
    "REQUIRED_API_KEY is not configured"
}

A safer POSIX presence check would be:

bash
if [ -n "${REQUIRED_API_KEY+x}" ]; then
  echo "REQUIRED_API_KEY is configured"
else
  echo "REQUIRED_API_KEY is not configured"
fi

Since the audited Skill does not identify a credential required for its core report-building behavior, the preferred remediation is to delete the environment credential-validation step entirely.

Vulnerability Patterns
  • 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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (7)

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill claims that FREE-version data remains local and is not uploaded, yet elsewhere it documents external API usage and network-dependent features. This creates a dangerous trust mismatch: users may provide sensitive report content under false assumptions, leading to unintended disclosure to remote services or third-party endpoints.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The display name, summary, descriptions, examples, and operating instructions are all presented in Chinese, with no statement that users may choose another language. This can amount to a language-policy issue when a skill effectively forces one language without user opt-in or documented regional justification.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

The manifest presents the skill as a local personal report summarizer, but the documented capabilities expand to external APIs and callback-based notifications. This scope expansion can cause users and host agents to grant trust or permissions inappropriate for the actual behavior, increasing the chance of unanticipated data egress.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill accepts a callback URL for asynchronous notifications without clearly warning that execution results may be transmitted over the network. If report summaries or metadata are sent to a user-supplied or attacker-influenced endpoint, sensitive work information could be exfiltrated.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill describes reading local report directories and writing generated files, but it does not prominently warn users that these file operations will occur automatically. In an agent environment, unclear file-access behavior can lead to unexpected processing of sensitive local documents and unintended creation or overwriting of files.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger condition is broad enough to match general data analysis, reporting, statistics, and visualization requests beyond the skill's stated report-summarization scope. Over-broad invocation can cause the skill to activate unexpectedly and access local files or produce outputs in contexts where the user did not intend to use this tool.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill instructs inspection of environment variables matching API, KEY, TOKEN, and SECRET, which exceeds what a report-building tool should need for normal operation. Even though the example masks values, prompting an agent to enumerate secret-bearing environment variables increases the risk of secret discovery, misuse, or accidental exposure in logs or follow-on steps.

Content

No source excerpt is available for this finding.