K8s Ops Plugin

Security checks across malware telemetry and agentic risk

Overview

This Kubernetes plugin is purpose-aligned, but it gives an agent broad cluster and credential-backed operational power without enough visible scoping, validation, or reviewable implementation.

Treat this as a powerful cluster-administration plugin. Only use it with a dedicated, least-privilege kubeconfig and limited SSH credentials, review the missing @k8s-ops/core implementation before installing, and require explicit approval for pod exec, rollout, scale, restart, namespace, storage, or other mutating operations.

VirusTotal

VirusTotal engine telemetry is currently stale for this artifact.

View on VirusTotal

Risk analysis

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

#
ASI02: Tool Misuse and Exploitation
High
What this means

An agent could invoke powerful Kubernetes operations with broad inputs, potentially changing workloads, opening access paths, or disrupting services if used incorrectly.

Why it was flagged

Every registered Kubernetes tool accepts arbitrary parameters and passes them directly to a handler. Combined with the documented tools such as pod exec, port-forward, rollout, scale, restart, storage, and namespace management, this lacks visible guardrails for high-impact cluster actions.

Skill content
parameters: Type.Any(),
        async execute(_toolCallId: string, params: unknown) {
          const result = await skill.handler(params, pluginConfig);
Recommendation

Use only with a least-privilege kubeconfig and require explicit user approval for mutating or exec-like actions; the publisher should add per-tool schemas, namespace/context scoping, dry-run support, and confirmation requirements.

#
ASI03: Identity and Privilege Abuse
High
What this means

If the configured kubeconfig has production or admin privileges, the agent may be able to inspect or modify sensitive cluster resources using those privileges.

Why it was flagged

The skill relies on the user's Kubernetes credentials, which may grant broad access to clusters. The artifacts do not define least-privilege expectations, allowed contexts, namespaces, or protections around credential-backed operations.

Skill content
- `kubectl` installed and configured with cluster access
- Valid kubeconfig (defaults to `~/.kube/config`)
Recommendation

Install only with a restricted kubeconfig for the intended cluster and namespace, avoid admin contexts, and verify every mutating operation before allowing the agent to run it.

#
ASI03: Identity and Privilege Abuse
Medium
What this means

Supplying SSH credentials could let the plugin access configured hosts, and unclear handling increases the risk of unintended host access or exposure.

Why it was flagged

The plugin configuration supports SSH targets with passwords or private-key paths. This is sensitive host access, but the reviewed code does not show how those credentials are constrained, protected, or used.

Skill content
"hosts": {
        "type": "array",
        "description": "SSH target hosts for sys-monitor skill",
...
            "password": { "type": "string" },
            "privateKeyPath": { "type": "string", "description": "Path to SSH private key" }
Recommendation

Prefer key-based access with limited accounts, avoid storing passwords where possible, and configure only hosts the agent is explicitly allowed to monitor.

#
ASI04: Agentic Supply Chain Vulnerabilities
High
What this means

Users cannot verify from these artifacts what commands or API calls the 32 Kubernetes tools will actually perform.

Why it was flagged

The plugin's actual tool behavior is delegated to @k8s-ops/core, but that core implementation is not present in the provided file manifest; package.json also declares it as a workspace dependency. This leaves the high-impact Kubernetes handlers unreviewed in the supplied artifacts.

Skill content
import { skillRegistry, type PluginConfig } from "@k8s-ops/core";
...
for (const skill of skillRegistry) {
...
  const result = await skill.handler(params, pluginConfig);
Recommendation

Review and pin the @k8s-ops/core implementation before installation, and require the published package to include the full handler source or a verifiable dependency version.