Back to skill

Security audit

vx-troubleshooting

Security checks for vulnerabilities and agentic risk

Overview

This is mostly a vx troubleshooting guide, but it includes high-impact install and reset commands without enough safeguards for agent-run use.

Review this skill before installing. It is not evidence of theft or hidden malware, but do not let an agent run the remote install scripts, sudo commands, or the complete ~/.vx reset automatically. Require explicit approval, inspect downloaded scripts first, and back up ~/.vx before any deletion.

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
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
Findings (13)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
98% confidence
Finding

Although the static matcher also noted a broader rm -rf ~ pattern, the actual command shown deletes ~/.vx, which is still a high-risk destructive action. The skill context makes it more dangerous because it is presented as a standard recovery step in a troubleshooting guide that an agent may follow mechanically.

Content

Scanner excerpt · SKILL.md (reported line 318)May include surrounding context.

md
cp -r ~/.vx ~/.vx.backup

# Remove everything
rm -rf ~/.vx

# Reinstall
vx install node go uv

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
98% confidence
Finding

Although the static matcher also noted a broader rm -rf ~ pattern, the actual command shown deletes ~/.vx, which is still a high-risk destructive action. The skill context makes it more dangerous because it is presented as a standard recovery step in a troubleshooting guide that an agent may follow mechanically.

Content

Scanner excerpt · SKILL.md (reported line 318)May include surrounding context.

md
cp -r ~/.vx ~/.vx.backup

# Remove everything
rm -rf ~/.vx

# Reinstall
vx install node go uv

Chaining Abuse

High
Category
Tool Misuse
Confidence
99% confidence
Finding

Piping curl output directly into bash removes the opportunity to inspect content and combines retrieval with execution in one step. This chaining pattern materially increases the risk of unnoticed arbitrary code execution from a compromised or changed remote script.

Content

Scanner excerpt · SKILL.md (reported line 374)May include surrounding context.

text
1. "command not found: vx"
   → vx is not installed. Run the install script.
   → Linux/macOS: curl -fsSL https://raw.githubusercontent.com/vx-org/vx/main/install.sh | bash
   → Windows: powershell -c "irm https://raw.githubusercontent.com/vx-org/vx/main/install.ps1 | iex"

2. "Failed to download" / "network error" (exit code 5)

File System Enumeration

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Code scans file system directories looking for sensitive files. This could be reconnaissance for credential theft.

Content

Scanner excerpt · SKILL.md (reported line 57)May include surrounding context.

bash
# Check VX_HOME permissions
ls -la ~/.vx

# Fix permissions (Unix)
chmod -R u+rw ~/.vx

File System Enumeration

Medium
Category
Data Exfiltration
Confidence
60% confidence
Finding

Code scans file system directories looking for sensitive files. This could be reconnaissance for credential theft.

Content

Scanner excerpt · SKILL.md (reported line 388)May include surrounding context.

bash
# Check VX_HOME permissions
ls -la ~/.vx

# Fix permissions (Unix)
chmod -R u+rw ~/.vx

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
89% confidence
Finding

The guide suggests running sudo vx install node as a fallback, even though it notes this is not recommended. Encouraging privileged execution of a package/tool installer increases the blast radius of mistakes or compromise, potentially modifying system-owned paths or installing attacker-controlled content as root.

Content

Scanner excerpt · SKILL.md (reported line 63)May include surrounding context.

chmod -R u+rw ~/.vx

Run with elevated permissions if needed

sudo vx install node # Not recommended, use user installation

text

### Version Issues

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 169)May include surrounding context.

md
# Install system dependencies
# Ubuntu/Debian
sudo apt-get install build-essential libssl-dev

# macOS (via Homebrew)
brew install openssl

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 390)May include surrounding context.

md
# Install system dependencies
# Ubuntu/Debian
sudo apt-get install build-essential libssl-dev

# macOS (via Homebrew)
brew install openssl

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The complete reset procedure includes destructive actions such as deleting ~/.vx and overwriting/restoring configuration, but it lacks an explicit warning about data loss, scope, and verification steps. In an agent-executed context, this can cause accidental loss of user state, cached artifacts, or custom local configuration without informed consent.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The guide recommends piping remote content directly into a shell/PowerShell interpreter without any integrity verification or warning. This is dangerous because compromise of the upstream source, transport, or repository content would immediately yield arbitrary code execution on the user's machine.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

This section discusses delivery surfaces, PR comments, issue trackers, merged/released/deployed state, and public-safe communication practices. That capability is organizational workflow guidance rather than troubleshooting for vx installation, version conflicts, PATH issues, or other vx runtime/configuration problems.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
87% confidence
Finding

The manifest describes a troubleshooting guide for vx installation, version, PATH, and related vx problems. The section on vx gh run view and GitHub Actions log triage adds a CI/GitHub operational capability that is not clearly justified by the stated local troubleshooting purpose, especially because it reaches into remote workflow-run inspection rather than vx-specific local diagnostics.

Content

No source excerpt is available for this finding.

External Script Fetching

Low
Category
Supply Chain
Confidence
98% confidence
Finding

Fetching and executing an install script directly from a remote URL delegates full trust to external content at runtime. If the repository, CDN path, or network path is compromised, the user will execute arbitrary attacker-supplied code immediately.

Content

Scanner excerpt · SKILL.md (reported line 374)May include surrounding context.

text
1. "command not found: vx"
   → vx is not installed. Run the install script.
   → Linux/macOS: curl -fsSL https://raw.githubusercontent.com/vx-org/vx/main/install.sh | bash
   → Windows: powershell -c "irm https://raw.githubusercontent.com/vx-org/vx/main/install.ps1 | iex"

2. "Failed to download" / "network error" (exit code 5)