Back to skill

Security audit

Azure Toolkit Free

Security checks for vulnerabilities and agentic risk

Overview

This Azure management skill is not malicious, but it requests powerful local and cloud-administration capabilities while describing overly broad use cases and weak safeguards for destructive Azure actions and credentials.

Review this skill carefully before installing. Use it only for explicit Azure resource-management tasks, run it with least-privileged Azure credentials, avoid broad subscriptions, protect AZURE_CLIENT_SECRET, and manually confirm any create, stop, delete, upload, or network-change operation before execution.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:143
Finding

Unpinned Runtime Dependency Installation

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 143 and 240–243
Vulnerability Type: Unpinned third-party Python dependencies installed from the default package index
Risk Level: Medium

Vulnerable Code

bash
pip install azure-mgmt-compute azure-mgmt-storage azure-identity
text
| azure-identity | Python library | Required | `pip install azure-identity` |
| azure-mgmt-compute | Python library | Required | `pip install azure-mgmt-compute` |
| azure-mgmt-storage | Python library | Required | `pip install azure-mgmt-storage` |
| azure-mgmt-network | Python library | Required | `pip install azure-mgmt-network` |

Technical Analysis

The Skill instructs users to install mutable package versions from pip's configured package index without exact version constraints, cryptographic hashes, a lockfile, or documented repository validation. As a result, the artifacts installed during execution cannot be reproduced or verified against versions reviewed by the Skill publisher.

Python package installation can execute package-controlled build or installation logic. If a named dependency, one of its transitive dependencies, the configured package index, or the user's package-resolution configuration is compromised, attacker-controlled code could execute during installation. The documented package names are consistent with the Skill's Azure-management purpose, and the audited artifact contains no evidence that these packages are currently malicious; the finding concerns the unsafe dependency acquisition process.

Attack Path

  1. A user follows the environment-preparation instructions in SKILL.md.
  2. The user runs one or more documented pip install commands.
  3. pip resolves the latest compatible releases and transitive dependencies from its configured index because no versions or hashes are specified.
  4. An attacker compromises a resolved package, its release process, an index or mirror, ...[truncated 1127 chars]
Remediation
View remediation

Remediation Suggestions

  1. Replace unconstrained installation commands with dependencies pinned to exact, reviewed versions.
  2. Maintain dependencies in a lockfile or requirements file containing cryptographic hashes, and install them with:
    bash
    python3 -m pip install --require-hashes -r requirements.txt
    
  3. Include all transitive dependencies in the reviewed lockfile so resolution cannot silently introduce unreviewed versions.
  4. Document and enforce a trusted package index, preferably an organization-controlled mirror that scans and approves artifacts.
  5. Install dependencies in an isolated virtual environment rather than the system Python environment.
  6. Run installation and subsequent operations under a least-privileged operating-system account.
  7. Avoid exposing Azure client secrets during package installation. Prefer short-lived, managed, or workload identities where supported.
  8. Add automated dependency vulnerability scanning and a controlled process for reviewing and updating pinned versions.
  9. Supply the referenced implementation scripts in the package so their dependency usage and Azure operations can be audited before execution.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest advertises code-generation, programming assistance, debugging, and deployment use cases, but the documented behavior is Azure resource administration. This scope mismatch can cause an agent to invoke the skill in inappropriate contexts and grant it file/exec access plus cloud-administration authority when the user only requested coding help, increasing the chance of unintended cloud actions.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

The skill documents destructive operations such as deleting virtual machines and managing cloud resources without prominent warnings, confirmation requirements, or impact notes. In a cloud-administration context, this makes accidental or over-broad execution more dangerous because actions can incur downtime, data loss, or unexpected charges.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The capability-coverage statement explicitly claims support for all description keywords, including code-generation and programming-assistance scenarios that are not actually implemented. This can mislead orchestration logic or users into over-trusting the skill's applicability, causing execution in unsafe or irrelevant contexts where it still has write/exec abilities and access to cloud-management workflows.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The authentication guidance instructs use of Azure service-principal credentials and environment variables but does not give a clear user-facing warning about handling secrets safely. Because this skill is designed to run with exec/read/write capabilities in administrative cloud workflows, weak guidance around client secrets raises the risk of credential exposure, privilege misuse, and compromise of Azure resources.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.