Back to skill

Security audit

freelance-scope-shield

Security checks for vulnerabilities and agentic risk

Overview

This skill is a local freelance scope-tracking tool whose file writes and stored client-request data match its stated purpose.

Install only if you are comfortable keeping project scope, client request text, requester names, hours, rates, and dispute/status history in a local scope.json file. Avoid putting highly sensitive legal or confidential client details into the registry unless the project directory is appropriately protected.

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
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • 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)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
93% confidence
Finding

The skill advertises executable workflows that read and write local files and may invoke network-capable tooling, but it does not declare any tool scope or permissions boundaries in the skill metadata. That creates an authorization gap where an agent or runtime may grant broader capabilities than the user expects, increasing the risk of unintended file access, overwrite, or external data transmission if the referenced scripts are present or substituted.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

The save() helper silently writes structured project data to scope.json, and that data includes request titles, request text, requester names, and status history. Although file persistence is core to the tool's purpose, there is no user-facing disclosure in the command interface or nearby code that classify/record operations will store potentially sensitive client information locally.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.