Back to skill

Security audit

netmiko ssh

Security checks for vulnerabilities and agentic risk

Overview

This SSH skill is purpose-aligned, but it needs Review because it can run remote commands with plaintext credentials and gives too little scoping, secret-handling, and retention guidance.

Install only if you intend to let the agent administer authorized SSH targets. Use least-privilege accounts, avoid reusable production passwords, prefer key or secret-manager based authentication where possible, review and pin the mcp2skill dependency before global installation, and treat session and command history as sensitive data.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (3)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:36
Finding

Unpinned Third-Party Dependency and Unverified Mutable Update Path

Content
View full analysis
--args ''` to call a tool. Use `mcp2skill update-skill --skill ` to check for and apply updates to this skill (where is the path to this skill's directory). ``` ### Technical Analysis The skill requires a globally installed third-party tool obtained through a mutable GitHub repository. It does not specify an immutable release, commit hash, package version, checksum, digital signature, or provenance-verification procedure. The documented `update-skill` operation can also modify the already reviewed skill directory. Consequently, the behavior observed during this audit is not guaranteed to remain the behavior executed after an update. If the dependency repository, distribution account, or update source is compromised, later content could introduce arbitrary instructions or executable behavior. This is a supply-chain weakness rather than evidence that the currently referenced repository is malicious. ### Attack Path 1. An attacker compromises the dependency repository, its maintainer account, its package-distribution channel, or the update infrastructure. 2. The attacker publishes a modified version of `mcp2skill` or malicious skill-update content. 3. A user installs the dependency globally or runs the documented `update-skill` command. 4. Because no immutable version or integrity value is checked, the modified content is accepted. 5. The malicious dependency executes with the privileges of the user running it, o ...[truncated 538 chars]
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Warning
Location
references/TOOLS.md:44
Finding

SSH Passwords Can Be Exposed Through Generic Tool and Command-Line Arguments

Content
View full analysis
--args ''` to call a tool. ``` `references/TOOLS.md:44-79`: ```json { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": true, "properties": { "device_type": { "default": "cisco_ios", "type": "string" }, "host": { "type": "string" }, "password": { "type": "string" }, "port": { "default": 22, "type": "integer" }, "session_id": { "type": "string" }, "username": { "type": "string" } }, "required": [ "host", "username", "password", "session_id" ], "type": "object" } ``` `references/TOOLS.md:103-145`, from the `execut ...[truncated 2023 chars]
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Note
Location
references/TOOLS.md:43
Finding

Security-Sensitive Tool Schemas Permit Arbitrary Undeclared Properties

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (6)

Missing User Warnings

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

This skill enables remote SSH access and accepts usernames and passwords, yet the description provides no warning about the sensitivity of credentials or the consequences of running commands on remote systems. Users may unknowingly expose secrets or authorize destructive actions, making misuse significantly more dangerous in this context than in a non-privileged read-only skill.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The documentation states that active sessions and command/session histories can be listed, but it does not warn that these records may contain sensitive operational details such as hostnames, commands, identifiers, and possibly credential-adjacent metadata. Without disclosure and retention guidance, users may unintentionally create a sensitive audit trail that could be exposed to other users or components.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The statement that the skill is 'automatically invoked when tools from this MCP server are required' is too broad and gives no clear boundaries for when remote SSH capabilities may be engaged. In a skill that can create SSH sessions and execute arbitrary remote commands, vague auto-triggering increases the risk of unintended remote access or command execution without sufficiently explicit user intent.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The tool reference explicitly documents collection of SSH credentials and execution of arbitrary remote commands, but provides no warning about handling secrets, authorization requirements, logging exposure, or the security impact of running commands on remote systems. In an agent skill context, this omission is risky because users may submit production credentials or destructive commands without understanding privacy, audit, or misuse implications.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

Most tool descriptions and argument explanations are presented in Portuguese, while the surrounding document is in English, and there is no opt-in or note that the skill is intentionally locale-specific. This can violate language/locale policy because the skill effectively forces a language for key operational details without user choice or justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

The natural-language tool descriptions are written entirely in Portuguese while the surrounding document structure is in English, and there is no indication that Portuguese is optional or required for a region-specific purpose. This can violate the language/locale policy when a specific language is imposed without user opt-in.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.