Back to skill

Security audit

Podcast Clipper ( Subscut )

Security checks for vulnerabilities and agentic risk

Overview

This skill does what it claims, but it can send a Subscut API key to any configured HTTPS API endpoint, which needs review before installation.

Install only if you are comfortable sending the provided video URL and related processing request to Subscut. Keep SUBSCUT_API_BASE_URL at the default https://subscut.com unless you are deliberately testing with a separate non-production key, and do not let untrusted content choose --api-base-url. Rotate the API key if it may have been used with an untrusted endpoint.

Vulnerability Patterns
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Error
Location
scripts/generate-podcast-clips.js:57
Finding

Configurable API Endpoint Can Receive the Bearer Credential

Content
View full analysis
` to the selected origin. Consequently, any attacker-controlled HTTPS server accepted by the parser can receive the Subscut API credential and the submitted request ...[truncated 2096 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding

The skill declares environment and network capabilities but does not define an explicit tool scope such as permissions or allowed-tools. That creates ambiguity about what the runtime may permit, increasing the risk of overbroad access or unintended execution paths when the skill is invoked.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill does not clearly warn that the user-provided video URL and associated content will be sent to Subscut's external API for processing. This can cause unintentional disclosure of private or sensitive media, especially if users assume processing is local or do not realize third-party transfer occurs.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
79% confidence
Finding

The script exports an API key value directly, which involves handling sensitive credentials, but there is no confirmation, warning, or explanatory note about protecting secrets or replacing the placeholder securely. In a code file, access to sensitive environment variables or credentials should include some visible disclosure unless clearly covered by the skill description or comments.

Content

No source excerpt is available for this finding.

Vague Triggers

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

This JSON manifest describes the skill's purpose in broad natural language but does not specify concrete activation phrases, exclusion conditions, or negative examples. In manifest files, such ambiguity can cause the skill to be matched for general requests about clips, captions, or videos beyond the intended narrow use case.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

This code performs an outbound HTTP POST to a remote service and includes both a bearer token and the user-supplied video URL in the request body. Although the help text documents required arguments and environment variables, the script does not explicitly warn the user at execution time or in comments/docstrings that media metadata will be transmitted to an external service.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.