CtrlK
BlogDocsLog inGet started
Tessl Logo

ad-certipy-esc-chain

ADCS abuse via Certipy — find vulnerable templates (ESC1-ESC15), request a certificate, authenticate as the target, dump the krbtgt. Full chain in 4 commands. Covers ESC1 (any SAN), ESC2 (any-purpose EKU), ESC3 (enrollment-agent), ESC4 (vulnerable ACL), ESC8 (NTLM relay to CA), ESC9/10/11/13.

64

Quality

77%

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/ad/certipy-esc-chain/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

87%

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 concise, highly actionable ADCS-abuse runbook with clean sectioning and executable commands throughout. Its one weakness is the absence of explicit validation/verification checkpoints between the destructive chain steps.

Suggestions

Insert validation checkpoints between chain steps — e.g., after 'certipy req' confirm the .pfx was written, after 'certipy auth' confirm the TGT/NT hash was obtained before proceeding to DCSync.

Add a brief 'Verify compromise' step (e.g., confirm DA membership / krbtgt hash is valid) as the terminal checkpoint of the main chain.

DimensionReasoningScore

Conciseness

Lean runbook of commands and terse notes with no padding explaining ADCS/PKI fundamentals Claude already knows; every section earns its tokens.

3 / 3

Actionability

Provides concrete, executable certipy/impacket commands with real flags and placeholders (e.g., '-upn administrator@target.local', '--adcs --template DomainController'), copy-paste ready.

3 / 3

Workflow Clarity

The 5-step chain is clearly numbered and sequenced, but high-stakes destructive operations (cert request as DA, DCSync) lack explicit validation checkpoints between steps, which caps this at 2 per the rubric.

2 / 3

Progressive Disclosure

Self-contained single-file runbook (~120 lines) with no bundle files present and well-organized sections (find, catalog, exploit, auth, DCSync, OPSEC, references); a clear, self-sufficient overview.

3 / 3

Total

11

/

12

Passed

Description

67%

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, actionable, and clearly niche-scoped, but it lacks an explicit 'when to use' trigger clause and leans on ESC-number enumeration over natural user phrasing. Completeness is the main limiter per the rubric's missing-trigger cap.

Suggestions

Add an explicit 'Use when ...' trigger clause naming natural scenarios (e.g., 'Use when compromising Active Directory via Active Directory Certificate Services / PKI, or when the user mentions ADCS, certificate templates, or ESC1-ESC15').

Trim the inline ESC-number enumeration from the description and rely on the body's ESC catalog table instead, favoring natural terms a user would actually say ('certificate services', 'PKI', 'enterprise CA').

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'find vulnerable templates', 'request a certificate', 'authenticate as the target', 'dump the krbtgt' — each tied to specific ESC primitives, matching the 'multiple specific concrete actions' anchor.

3 / 3

Completeness

Clearly answers 'what' with a full enumerated chain, but there is no 'Use when...' clause or equivalent explicit trigger guidance, which the rubric caps at 2.

2 / 3

Trigger Term Quality

Contains relevant natural terms ('ADCS abuse', 'Certipy', 'certificate', 'NTLM relay', 'krbtgt') but a large share is ESC-number enumeration ('ESC1...ESC13') rather than terms a user would naturally say, and it omits common phrasings like 'PKI' or 'certificate services'.

2 / 3

Distinctiveness Conflict Risk

Targets a clear niche (Certipy/ADCS abuse) with distinct, specific triggers unlikely to overlap with unrelated skills.

3 / 3

Total

10

/

12

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.