Back to skill

Security audit

1.2.0

Security checks for vulnerabilities and agentic risk

Overview

This skill is a small, disclosed support-queue workflow aid; its main issue is weak packaging around a misleading static healthcheck, not evidence of harmful behavior.

Before installing, treat this as a lightweight workflow prompt rather than a complete support-system integration. Review the suggested support commands before running them against real ticket queues, and do not rely on the bundled healthcheck until its component name and validation logic are corrected.

Vulnerability Patterns
  • Tool Hijacking and SpoofingModifies or replaces tools so legitimate-looking calls execute attacker logic
  • 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)

T07 · Tool Hijacking and Spoofing

Note
Location
scripts/healthcheck.sh:1
Finding
Unconditional and Misidentified Health-Check Result## Vulnerability Details **File Location**: `scripts/healthcheck.sh`, lines 1–2 **Vulnerability Type**: Health-check spoofing and component identity mismatch **Risk Level**: Low **Complete Code Snippet**: ```bash #!/usr/bin/env bash echo "ok: pipiwu-benchmark-beta-skill 1.2.0" ``` ### Technical Analysis The health-check script always prints an `ok` result and exits successfully without validating the availability, configuration, dependencies, or operation of the declared Skill. It also reports the identity `pipiwu-benchmark-beta-skill`, while the package metadata identifies the component as `support-queue-operations`. This creates a spoofed health signal: monitoring or orchestration software invoking the script may treat the package as healthy solely because the shell process returns success. The identity mismatch can additionally cause operators or automated systems to associate the result with the wrong component. ### Attack Path 1. An operator, deployment process, or monitoring system invokes `scripts/healthcheck.sh`. 2. The script performs no substantive health or integrity validation. 3. It prints a successful result for an unrelated component name. 4. The script exits with status code zero because the `echo` command succeeds. 5. Downstream automation accepts the package as healthy or records the incorrect identity, potentially allowing a broken or substituted artifact to remain undetected. ### Impact Assessment Exploitation does not directly grant additional operating-system privileges or enable arbitrary code execution. The affected scope is the integrity of local health monitoring, package validation, deployment decisions, and component identification. Systems that rely on this script may incorrectly accept an unavailable, misconfigured, or incorrectly packaged Skill as operational.
Remediation
## Remediation Suggestions - Replace the unrelated identifier with the declared component name, `support-queue-operations`. - Validate concrete requirements, such as the presence and readability of required templates and scripts. - If the Skill depends on external commands, verify that they are installed and executable. - Print diagnostic failures to standard error and return a nonzero exit status whenever a check fails. - Consider verifying the declared version against `SKILL.md` rather than duplicating an unchecked hardcoded value. - Add automated tests confirming that the health check fails when required files or dependencies are absent and that its reported identity matches package metadata.
Vulnerability Patterns
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (2)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding
The declared description suggests functionality for handling customer support ticket triage and handoff workflows. However, the supplied code does not implement any such behavior, access any relevant resources, or define any operational triggers. It only echoes a version identifier. That makes the primary purpose materially different from the declared description, so this is a mismatch.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding
There is a clear description-behavior mismatch. The declared purpose describes a customer support queue triage/handoff skill, but the only provided code is a healthcheck script that echoes a static status message. This code does not access ticket systems, process queue items, perform routing, or implement any support-related logic. While a healthcheck could be a supporting detail, no code reflecting the declared primary purpose is present in the supplied chunk.

Static analysis

No suspicious patterns detected.