Back to skill

Security audit

Video Inpainting — Pro Pack on RunComfy

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent RunComfy video-editing integration, but it needs review because it asks agents to install and run an unpinned third-party CLI with access to local credentials and media-editing workflows.

Review this skill before installing. It appears purpose-aligned, but install the RunComfy CLI only from a trusted, pinned version where possible, avoid unattended npx execution, use a revocable least-privilege RunComfy token, and only submit video URLs and prompts you are comfortable sending to RunComfy.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:41
Finding
Unpinned Third-Party CLI Installation and Execution## Vulnerability Details **File Location**: `SKILL.md`, lines 41–44 **Vulnerability Type**: Unpinned npm dependency installation and execution **Risk Level**: Medium ### Vulnerable Code ```bash # 1. Install (see runcomfy-cli skill for details) npm i -g @runcomfy/cli # or: npx -y @runcomfy/cli --version ``` ### Technical Analysis The skill instructs agents to install or execute `@runcomfy/cli` without specifying a reviewed version. Both commands resolve the package version from the npm registry at execution time: - `npm i -g @runcomfy/cli` installs the currently resolved package globally and may execute npm lifecycle scripts. - `npx -y @runcomfy/cli --version` downloads and executes the resolved package without interactive confirmation. The project provides no lockfile, integrity hash, signature-verification procedure, vendored source, or local implementation through which the installed CLI can be audited. Consequently, the effective code executed by the skill can change after this skill file has been reviewed. This finding does not establish that the current npm package is malicious. The vulnerability is the unsafe trust model: compromise of the package, publisher account, registry resolution path, or a future release could turn the documented installation command into an arbitrary-code-execution vector. ### Attack Path 1. An attacker compromises the npm package, its publisher account, or its release pipeline. 2. The attacker publishes a malicious version under the legitimate `@runcomfy/cli` package name. 3. An agent follows the skill instructions and runs the unpinned global installation or automatic `npx -y` command. 4. npm resolves the attacker-controlled release because no exact version or integrity value is required. 5. Malicious lifecycle scripts or CLI initialization code execute with the privileges of the invoking user. 6. The malicious code may access available RunComfy credentials, local configur ...[truncated 829 chars]
Remediation
## Remediation Suggestions 1. Pin the CLI to an exact reviewed version, for example: ```bash npm install --global @runcomfy/cli@X.Y.Z ``` 2. Publish and verify the expected npm integrity hash or signed release provenance before installation. 3. Avoid `npx -y` because it automatically downloads and executes registry content without confirmation. 4. Prefer a project-local dependency governed by a committed lockfile instead of a global installation. 5. Install with lifecycle scripts disabled when compatible: ```bash npm install --ignore-scripts --save-exact @runcomfy/cli@X.Y.Z ``` 6. Execute the CLI in a sandbox or container with narrowly scoped filesystem and network access. 7. Provide the RunComfy token only to the individual invocation that requires it, and use a minimally privileged, revocable token. 8. Document a controlled update process requiring source review, provenance validation, and integrity-value updates before adopting a new CLI release.
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (3)

Vague Triggers

Medium
Confidence
94% confidence
Finding
The trigger list contains broad natural-language phrases such as 'clean up video', 'remove from video', and 'frame-by-frame edit', which are generic enough to match ordinary user requests outside the intended scope. Over-broad activation can cause the wrong skill to run, leading to unintended external API calls, token use, data transfer of user media, or edits performed on the wrong content.

Rp1

Medium
Category
MCP Rug Pull
Confidence
96% confidence
Finding
The skill recommends executing `npx -y @runcomfy/cli` without pinning an exact package version, which allows whatever version is current on the registry at execution time to run in the user's environment. If the package is compromised, a malicious version is published, or a breaking change is introduced, the agent could execute unreviewed code with the user's privileges.

Rp1

Medium
Category
MCP Rug Pull
Confidence
96% confidence
Finding
This second occurrence repeats the same unsafe installation guidance: `npx -y @runcomfy/cli` fetches and executes the latest package version at runtime without version pinning. That creates a supply-chain execution risk because the exact code run is not stable or pre-reviewed.

Static analysis

No suspicious patterns detected.