CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-managed-identity

Azure Managed Identity abuse — IMDS at 169.254.169.254 from compromised VM / App Service / Function, token exchange for Graph/ARM/KeyVault, federated workload identity abuse, hybrid AAD Connect MSOL credential extraction.

63

Quality

75%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Critical

Do not install without reviewing

Fix and improve this skill with Tessl

tessl review fix ./packages/decepticon/decepticon/skills/standard/cloud/azure-managed-identity/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

76%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a tight, highly actionable Azure MI abuse cheat sheet with excellent conciseness, held back mainly by missing validation checkpoints around batch/destructive pivots and one partial AAD Connect snippet. Structure is clean and self-contained.

Suggestions

Add validation checkpoints before high-impact batch/destructive steps — e.g. verify the token's audience/permissions before fleet-wide RunCommand, and confirm Key Vault access before mass secret reads.

Complete the AAD Connect MSOL section with an end-to-end executable sequence (or explicitly justify that AADInternals handles it and show the exact invocation plus expected output).

Consider moving the audience and pivot-pattern tables into a references/ file and linking from the body to improve progressive disclosure now that the document has grown past a one-pager.

DimensionReasoningScore

Conciseness

The body is lean: direct curl/Invoke-RestMethod snippets, a compact audience table, pivot table, and OPSEC bullets, with no padding or explanation of concepts Claude already knows. Every section earns its place, matching the 'lean and efficient' anchor.

5 / 5

Actionability

Most sections give copy-paste-ready bash/powershell (IMDS curl, ARM enumeration, Key Vault secret reads, STS token exchange), but the AAD Connect block is partially pseudocode — `$key = (New-Object ...AesManaged).Key` does nothing on its own and defers to AADInternals. That minor gap keeps it at 4 rather than 5.

4 / 5

Workflow Clarity

A sequence is present (steal token → enumerate → read secrets → pivot), but there are no validation checkpoints before batch or destructive operations (fleet-wide RunCommand, reading every secret, self-granting Owner), which the rubric caps at 3. It is above 2 because the steps are concretely ordered rather than rough.

3 / 5

Progressive Disclosure

Content is well-organized into clear single-level sections (Steal, Use, Pivot, Workload Identity, AAD Connect, OPSEC, References) with no nested or buried references and no monolithic walls. It is not 5 because the document exceeds the ~50-line simple-skill threshold and a few reference-style blocks (audience/pivot tables) could live in a separate file.

4 / 5

Total

16

/

20

Passed

Description

75%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is specific, technically rich, and clearly niched to Azure Managed Identity abuse, but it omits an explicit 'Use when…' trigger clause, which caps its completeness. Adding a usage trigger would round it out.

Suggestions

Append an explicit 'Use when…' clause, e.g. 'Use when attacking Azure compute resources (VM, App Service, Function, AKS) to steal or abuse Managed Identity tokens.'

Soften the dense technical list with one or two natural phrasings users would actually say (e.g. 'steal Azure token', 'Azure RCE pivot') to broaden trigger matching.

Mention both system-assigned and user-assigned identity in the description text itself (currently only in metadata) to improve trigger coverage.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — IMDS token theft at 169.254.169.254, token exchange for Graph/ARM/KeyVault, federated workload identity abuse, and AAD Connect MSOL credential extraction — giving comprehensive coverage of the domain. It is not a 4 because coverage spans the full abuse chain rather than showing only minor gaps.

5 / 5

Completeness

The 'what' is clear and detailed, but there is no explicit 'Use when…' or equivalent trigger clause, so per the rubric guideline completeness is capped at 3. It is not a 2 because the 'what' is concrete and specific rather than vague.

3 / 5

Trigger Term Quality

It packs in strong domain keywords (managed identity, IMDS, Graph/ARM/KeyVault, workload identity, AAD Connect, MSOL) a practitioner would naturally say, though it leans technical and omits plainer phrasings like 'steal Azure token' or 'Azure RCE'. It is above 3 due to breadth of coverage but below 5 because some natural variations are missing.

4 / 5

Distinctiveness Conflict Risk

This carves out a precise niche — Azure Managed Identity abuse via specific techniques — with distinct triggers and minimal overlap risk against other skills. It is not a 4 because the specialization is sharp enough to avoid even minor conflict with adjacent cloud-credential skills.

5 / 5

Total

17

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository
PurpleAILAB/Decepticon
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.