Back to skill

Security audit

VIGIL Security Scanner

Security checks across malware telemetry and agentic risk

Overview

This appears to be a real crypto security scanner, but it bundles wallet-changing and reputation-reporting actions despite repeatedly framing the skill as read-only.

Install only if you are comfortable sending wallet and token addresses to the VIGIL hosted service. Do not run the revoke, batch-revoke, or report-scam scripts unless you intentionally want to sign an onchain transaction or submit an external report. Keep Bankr read-write authentication disabled unless you specifically need revocation.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (15)

Lp3

Medium
Category
MCP Least Privilege
Confidence
96% confidence
Finding
The skill executes shell commands (`bash`, `curl`, `jq`, `grep`, `tr`) but does not declare shell permissions. That creates a capability-transparency problem: reviewers or runtime policy may treat it as less privileged than it really is, increasing the chance that networked shell execution is approved without proper scrutiny.

Description-Behavior Mismatch

Medium
Confidence
91% confidence
Finding
The reference documents a `POST /report/submit` capability to send scam reports, which exceeds the stated manifest scope of scanning and revocation. Scope drift in security tooling is dangerous because an agent may invoke undocumented or under-reviewed write actions, causing unexpected external submissions and user-data transmission.

Description-Behavior Mismatch

High
Confidence
95% confidence
Finding
This script performs a state-changing report submission even though the skill is described as a keyless read-only scanner. That mismatch is dangerous because users or downstream agents may invoke the skill under the assumption that it only analyzes data, when it can actually submit external reports and alter community reputation data.

Intent-Code Divergence

Medium
Confidence
91% confidence
Finding
The header comments explicitly advertise scam-report submission behavior, which contradicts the stated read-only scanner purpose of the skill. In an agent setting, this kind of capability mismatch increases the chance of unsafe tool use, accidental reputation-impacting actions, and social engineering through misleading packaging.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The documentation includes revocation build/submit endpoints that result in blockchain transactions but does not place an explicit warning near them about signing, gas costs, irreversible onchain effects, and the need for user confirmation. In an agent context, weak warning language increases the risk that a tool is wired into flows that initiate destructive wallet actions without sufficiently informed consent.

External Transmission

Medium
Category
Data Exfiltration
Content
### 2. Scan approvals (wallet)

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
94% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 3. Scan token safety

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
94% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 4. Check honeypot

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
94% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 5. Get safety score

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
94% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 6. Generate wallet report

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
95% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 7. Monitor wallet (real-time alerts)

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
95% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 8. Token market context (price + liquidity)

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
93% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 9. Deployer reputation (verification + age)

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
93% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 10. Batch scan multiple tokens

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
94% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

External Transmission

Medium
Category
Data Exfiltration
Content
### 11. Multi-source consensus verdict

```bash
RESULT=$(curl -m 30 -s "https://mcp.vigil.codes/tools/call" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
Confidence
93% confidence
Finding
curl -m 30 -s "https://mcp.vigil.codes/tools/call" \ -H "Content-Type: application/json" \ -d

VirusTotal

64/64 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

Detected: suspicious.generated_source_template_injection

User-controlled placeholder is embedded directly into generated source code.

Critical
Code
suspicious.generated_source_template_injection
Location
SKILL.md:47