Back to skill

Security audit

pr-reviewer

Security checks across malware telemetry and agentic risk

Overview

This PR review skill is mostly transparent, but it handles untrusted pull request filenames in a way that could let a crafted PR influence local Python execution during review.

Install only if you are comfortable with a review-bucket risk. Use least-privilege GitHub credentials, keep PR_REVIEW_STATE and PR_REVIEW_OUTDIR inside the repository or a dedicated data directory, review generated reports before posting, and avoid running it on untrusted PRs until filename handling is changed to pass file lists through stdin, JSON, or arguments instead of embedding them in Python source.

SkillSpector

By NVIDIA
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 (1)

Lp3

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding
The skill documentation explicitly states that it writes a state file and markdown reports, but no corresponding permission declaration is present. Undeclared file-write capability is dangerous because it prevents users and policy systems from accurately understanding the skill’s side effects, increasing the risk of unexpected modification of local files or abuse if the script path or environment variables are manipulated.

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

Detected: suspicious.dynamic_code_execution

Dynamic code execution detected.

Critical
Code
suspicious.dynamic_code_execution
Location
scripts/pr-review.sh:168