Back to skill

Security audit

vmware-log-insight

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent read-only VMware log-query skill with disclosed credential, audit, and optional MCP serving behavior, but users should treat the configured account and logs as sensitive.

Install only with a least-privilege read-only Log Insight account. Prefer injecting the password from a secret manager instead of keeping it in .env, and expose the MCP server over the network only when you need remote clients, with bearer tokens, TLS, host/origin restrictions, and role limits configured.

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
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Rogue AgentSelf-Modification, Session Persistence
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (13)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
70% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · references/cli-reference.md (reported line 57)May include surrounding context.

doctor / mcp / version

bash
vmware-log-insight doctor [--skip-auth]   # config, .env perms, network, auth, version, query API (/fields), MCP import
vmware-log-insight mcp                     # start stdio MCP server (no network during startup)
vmware-log-insight version                 # installed skill version

Credential Access

High
Category
Privilege Escalation
Confidence
88% confidence
Finding

The guide instructs users to place a plaintext password in a local .env file, and the later base64 rewrite is explicitly only obfuscation, not encryption. If that file is exposed through backups, local compromise, misconfigured home-directory permissions, or accidental disclosure, the Log Insight account credentials are immediately recoverable and reusable outside the skill.

Content

Scanner excerpt · references/setup-guide.md (reported line 44)May include surrounding context.

Passwords are never stored in config.yaml. Set the per-target env var:

bash
# ~/.vmware-log-insight/.env  (chmod 600)
VMWARE_LOG_INSIGHT_PROD_PASSWORD=yourpassword

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · references/cli-reference.md (reported line 57)May include surrounding context.

text

```bash
chmod 600 ~/.vmware-log-insight/.env

The env var name is VMWARE_LOG_INSIGHT_<TARGET>_PASSWORD where <TARGET> is the

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · references/setup-guide.md (reported line 49)May include surrounding context.

text

```bash
chmod 600 ~/.vmware-log-insight/.env

The env var name is VMWARE_LOG_INSIGHT_<TARGET>_PASSWORD where <TARGET> is the

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

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

md
| Metadata | `list_log_fields`, `get_log_insight_version` | 2 | Read |
| Alerts | `list_log_alerts`, `get_log_alert`, `get_log_alert_history` | 3 | Read |

**7 tools, all read-only.** No ingest, no alert creation/edit/delete — zero write surface.

## Quick Install

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

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

md
## Audit & Safety

Read-only by construction (no write tools). MCP tools run through
`@vmware_tool(risk_level="low")`, which records each call to the shared audit DB
(`~/.vmware/audit.db`). Targets may declare `environment:` (`production` /
`staging` / `lab`) in `config.yaml` to scope policy rules; reads are never gated

Unsafe Defaults

Medium
Category
Tool Misuse
Confidence
80% confidence
Finding

Tool defaults are unsafe or overly permissive (e.g. disabled TLS verification, no authentication, world-writable permissions). Unsafe defaults widen the attack surface.

Content

Scanner excerpt · references/cli-reference.md (reported line 57)May include surrounding context.

doctor / mcp / version

bash
vmware-log-insight doctor [--skip-auth]   # config, .env perms, network, auth, version, query API (/fields), MCP import
vmware-log-insight mcp                     # start stdio MCP server (no network during startup)
vmware-log-insight version                 # installed skill version

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

Scanner excerpt · references/setup-guide.md (reported line 7)May include surrounding context.

bash
uv tool install vmware-log-insight==2.4.1
mkdir -p ~/.vmware-log-insight
cp config.example.yaml ~/.vmware-log-insight/config.yaml

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

Scanner excerpt · references/setup-guide.md (reported line 36)May include surrounding context.

md
Every tool this skill ships is read-only, and reads are never gated — so the
label changes nothing for Log Insight today. Set it anyway to keep the family's
config files consistent, so a future write tool is correctly scoped. Run
`vmware-audit policy` to see the rules in force.

## Credentials

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

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

Content

Scanner excerpt · references/setup-guide.md (reported line 44)May include surrounding context.

Passwords are never stored in config.yaml. Set the per-target env var:

bash
# ~/.vmware-log-insight/.env  (chmod 600)
VMWARE_LOG_INSIGHT_PROD_PASSWORD=yourpassword

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

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

Content

Scanner excerpt · references/setup-guide.md (reported line 49)May include surrounding context.

Passwords are never stored in config.yaml. Set the per-target env var:

bash
# ~/.vmware-log-insight/.env  (chmod 600)
VMWARE_LOG_INSIGHT_PROD_PASSWORD=yourpassword

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

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

Content

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

md
1. **Source Code** — https://github.com/vmware-skills/VMware-Log-Insight (MIT).
2. **Config file contents** — `config.yaml` holds only host/port/username/provider;
   no passwords or tokens. Secrets live only in `.env` (`chmod 600`).
3. **Webhook data scope** — none. This skill makes no outbound calls except to the
   configured Log Insight appliance.
4. **TLS verification** — on by default (`verify_ssl: true`); disable only for

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

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

Content

Scanner excerpt · references/setup-guide.md (reported line 139)May include surrounding context.

md
1. **Source Code** — https://github.com/vmware-skills/VMware-Log-Insight (MIT).
2. **Config file contents** — `config.yaml` holds only host/port/username/provider;
   no passwords or tokens. Secrets live only in `.env` (`chmod 600`).
3. **Webhook data scope** — none. This skill makes no outbound calls except to the
   configured Log Insight appliance.
4. **TLS verification** — on by default (`verify_ssl: true`); disable only for

Static analysis

No suspicious patterns detected.