Back to skill

Security audit

huawei-cloud-cce-kubernetes-event-analyzer

Security checks across malware telemetry and agentic risk

Overview

This skill is a disclosed, read-only Huawei Cloud CCE event analysis tool, with credential and temporary kubeconfig handling that users should understand before use.

Install only if you are comfortable granting the skill read access to CCE Events, related event-referenced Kubernetes resource status, the default Event LogConfig, and LTS event logs. Use a least-privilege Huawei Cloud identity and read-only Kubernetes RBAC, avoid broad all-event queries unless needed, and treat local temp-file kubeconfig handling as sensitive on shared machines.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (6)

Lp3

Medium
Category
MCP Least Privilege
Confidence
90% confidence
Finding
The skill clearly instructs execution of shell commands and use of environment-provided credentials, yet it does not declare corresponding permissions. This creates a capability/permission mismatch that can bypass review expectations and makes it easier for a supposedly low-risk skill to access local secrets or execute commands unexpectedly.

Context-Inappropriate Capability

Medium
Confidence
96% confidence
Finding
The skill metadata says it is for CCE/Kubernetes event analysis, but this function retrieves arbitrary Kubernetes resources by type and name. That expands the skill from event inspection into broader cluster reconnaissance and access, increasing the chance of exposing sensitive workload, secret-adjacent, or configuration data beyond user expectations.

Context-Inappropriate Capability

Medium
Confidence
95% confidence
Finding
Reading LogConfig custom resources is outside the declared event-analysis purpose and may expose logging destinations, filters, namespaces, and observability configuration. In a diagnostic skill, that mismatch in capability creates unnecessary access to potentially sensitive operational metadata.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The code writes a kubeconfig returned by CreateKubernetesClusterCert to a temporary file on disk. Even though it is deleted in finally, the file may be readable by other local processes depending on host controls, may persist briefly on disk, and can remain recoverable in crash or forensic scenarios; because it contains cluster access material, this creates credential-exposure risk.

Credential Access

High
Category
Privilege Escalation
Content
return {"success": False, "error": "CreateKubernetesClusterCert returned no kubeconfig clusters"}
    _prefer_external_context(kubeconfig)

    kubeconfig_file = None
    try:
        with tempfile.NamedTemporaryFile("w", delete=False, suffix=".json") as handle:
            json.dump(kubeconfig, handle)
Confidence
97% confidence
Finding
At this point the code serializes the kubeconfig, which contains cluster access credentials or certificates, into a temporary file. Persisting such material on disk creates a meaningful exposure window and can leak administrative cluster access to local attackers, backups, crash artifacts, or misconfigured temp directories.

Credential Access

High
Category
Privilege Escalation
Content
kubeconfig_file = None
    try:
        with tempfile.NamedTemporaryFile("w", delete=False, suffix=".json") as handle:
            json.dump(kubeconfig, handle)
            kubeconfig_file = handle.name
        result = _run_command(["kubectl", "--kubeconfig", kubeconfig_file, "get", *args, "-o", "json"])
        if result.get("success"):
Confidence
95% confidence
Finding
The temporary filename holding kubeconfig is then passed to kubectl, confirming active use of on-disk credential material. This enlarges the attack surface because other processes or users on the host may observe, race on, or recover the file while it exists.

VirusTotal

61/61 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.