CtrlK
BlogDocsLog inGet started
Tessl Logo

abusing-shadow-credentials-for-privesc

Take over Active Directory accounts by writing attacker-controlled public keys to msDS-KeyCredentialLink (Shadow Credentials) with pyWhisker, Whisker, or Certipy, then authenticate via PKINIT to recover the target's NT hash without a password reset. Use when BloodHound shows GenericWrite/GenericAll/AddKeyCredentialLink over a target, as a stealthier alternative to ForceChangePassword, during authorized red-team engagements.

74

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

85%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.

A well-sequenced, highly actionable workflow with validation and cleanup for a destructive account-takeover chain. The main weakness is progressive disclosure: the body inlines tool detail and does not surface the existing bundle files via clear one-level-deep links.

Suggestions

Add a 'References' section that links to references/api-reference.md, references/standards.md, and scripts/agent.py so the bundle files are discoverable from SKILL.md.

Move the full per-flag command detail into references/api-reference.md and keep only the canonical example per step inline, reducing overlap between the body and the reference file.

Trim the Overview's explanation of Windows Hello for Business / Azure AD device registration / PKINIT mechanics to only what is needed to understand the attack, since Claude already knows these concepts.

DimensionReasoningScore

Conciseness

Largely efficient with tight, executable commands, but the Overview explains AD internals (Windows Hello for Business, Azure AD device registration, PKINIT mechanics) that partly restate knowledge Claude has and could be trimmed.

4 / 5

Actionability

Fully executable, copy-paste-ready commands throughout (pywhisker add/list/remove, certipy shadow auto, PKINITtools gettgtpkinit/getnthash, nxc pass-the-hash) covering user and computer accounts plus Kerberos and password auth variants.

5 / 5

Workflow Clarity

Eight clearly sequenced steps each with a purpose line, an explicit validation checkpoint in Step 1 (confirm write access via list), a cleanup step, and a final Validation Criteria checklist — meeting the bar for destructive operations with feedback loops.

5 / 5

Progressive Disclosure

Section structure is clean, but the body never links to the local bundle files (references/api-reference.md, references/standards.md, scripts/agent.py), and inline command detail overlaps the api-reference; the references are present but not clearly signaled from SKILL.md.

3 / 5

Total

17

/

20

Passed

Description

100%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.

A precise, third-person description that names concrete actions, natural trigger phrases, and explicit when-to-use guidance tied to BloodHound edges and red-team scope. It hits all four anchor-5 criteria with no padding.

DimensionReasoningScore

Specificity

Multiple concrete actions are named explicitly — 'writing attacker-controlled public keys to msDS-KeyCredentialLink', 'authenticate via PKINIT to recover the target's NT hash', 'without a password reset' — giving comprehensive coverage of the technique chain.

5 / 5

Completeness

It explicitly answers both 'what' (write keys → PKINIT → recover NT hash → takeover) and 'when' via the 'Use when BloodHound shows GenericWrite/GenericAll/AddKeyCredentialLink... during authorized red-team engagements' trigger clause.

5 / 5

Trigger Term Quality

Natural terms a red-teamer would actually say are present: 'Shadow Credentials', 'GenericWrite/GenericAll/AddKeyCredentialLink', 'ForceChangePassword', and tool names pyWhisker/Certipy, with synonyms across the technique's common names.

5 / 5

Distinctiveness Conflict Risk

The niche anchors (msDS-KeyCredentialLink, Shadow Credentials, PKINIT) and the BloodHound-edge trigger make it clearly distinguishable from other AD skills with minimal conflict risk; voice is third person.

5 / 5

Total

20

/

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

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
mukul975/Anthropic-Cybersecurity-Skills
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.