mcpField
C
competition-dpapi-credential-chain

competition-dpapi-credential-chain

github.com/zhaoxuya520Security43.7k93 installsUpdated 5w ago
Repository

About competition-dpapi-credential-chain

A focused skill for CTF Windows credential analysis, used after `$ctf-sandbox-orchestrator` to trace DPAPI secrets from protected data to accepted access. It distinguishes successful decryption from service acceptance and emphasizes a minimal evidence chain.

Key features

  1. 01Map DPAPI artifacts and contexts
  2. 02Distinguish user, machine, and domain scopes
  3. 03Verify acceptance of plaintext credentials
  4. 04Reduce findings to a reproducible access chain
  5. 05Record SIDs, masterkeys, and store paths

Use cases

  1. 01Trace secrets in Credential Manager or browsers
  2. 02Test whether decrypted credentials access a target service
  3. 03Analyze application wrapping around DPAPI

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/zhaoxuya520/reverse-skill --skill competition-dpapi-credential-chain

After installing, type/competition-dpapi-credential-chainin Claude Code to confirm it loaded.

Bundled filesagents/openai.yamlreferences/dpapi-credential-chain.md

Details

From the project README

Competition Dpapi Credential Chain

Use this skill only as a downstream specialization after $ctf-sandbox-orchestrator is already active and has established sandbox assumptions, node ownership, and evidence priorities. If that has not happened yet, return to $ctf-sandbox-orchestrator first.

Use this skill when the decisive Windows secret is DPAPI-protected and the hard part is proving which context unwraps it and where the plaintext is accepted.

Reply in Simplified Chinese unless the user explicitly requests English.

Quick Start

  1. Separate protected blob, masterkey, decrypting context, and final accepting service.
  2. Record SID, user or machine context, masterkey path, vault or browser store, and target replay point before broad conclusions.
  3. Keep DPAPI source artifact, unwrap step, plaintext secret, and acceptance edge in one chain.
  4. Distinguish local user DPAPI, machine DPAPI, domain backup key use, and application-specific wrapping.
  5. Reproduce the smallest DPAPI-to-accepted-access path that proves the decisive edge.

Workflow

1. Map Protected Secret And DPAPI Context
  • Record blob source, masterkey location, SID, protector scope, profile path, credential store, and any application wrapper such as browser encryption or vault metadata.
  • Note whether the decisive value lives in Credential Manager, Vault, browser cookies, browser passwords, Wi-Fi profiles, RDP files, or custom app storage.
  • Keep protected artifact, masterkey candidate, and account or machine context tied together.
2. Prove Unwrap And Acceptance
  • Show how the secret is decrypted: user logon material, machine context, domain backup key, or another recovered protector.
  • Record plaintext type, target host or service, replay method, and resulting session, token, or data access.
  • Distinguish successful blob decryption from actual accepted access.
3. Reduce To The Decisive DPAPI Chain
  • Compress the result to the smallest sequence: protected artifact -> masterkey or unwrap context -> plaintext secret -> accepted replay or access -> resulting capability.
  • State clearly whether the decisive edge lives in masterkey recovery, DPAPI scope confusion, application wrapper handling, or the service that accepts the recovered secret.
  • If the task broadens into generic LSASS ticket material or full Windows pivoting, hand back to the tighter host or pivot skill.

Read This Reference

  • Load references/dpapi-credential-chain.md for the blob checklist, masterkey checklist, and evidence packaging.

What To Preserve

  • Blob paths, masterkey paths, SIDs, protector scope, store names, and application wrapper details
  • The exact accepting service or dataset unlocked by the recovered plaintext
  • One minimal protected-artifact-to-accepted-access sequence that proves the edge

Comments

Markdown supported