CtrlK
BlogDocsLog inGet started
Tessl Logo

hunt-k8s

Hunt Kubernetes & Docker — API anonymous access, kubelet 10250 exec (SPDY/WebSocket, NOT plain POST) and the simpler /run primitive, etcd 2379 unauth, dashboard skip-login, RBAC misconfig, secret/SA-token abuse, docker.sock host escape, runc/container-escape (Leaky Vessels CVE-2024-21626), API-server-mediated nodes/proxy RCE, EphemeralContainers node-shell, bound/projected SA-token audience+expiry abuse, admission-controller bypass, Helm/Tiller remnants. Use when target runs containerized infra, exposes K8s ports (6443/10250/10255/2379/8443), or cloud metadata reveals K8s service accounts.

76

Quality

96%

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

SKILL.md
Quality
Evals
Security

Quality

Content

92%

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 lean, highly actionable offensive playbook with strong sequencing and rigorous validation gates, assuming Claude's domain competence throughout. Its one weakness is progressive disclosure: all material lives in one large monolithic file with no external references to offload the deeper CVE and per-phase detail.

Suggestions

Split the per-phase command catalogs and CVE writeups into reference files (e.g. references/kubelet-10250.md, references/etcd-2379.md, references/cve-gates.md) and link them one level deep from a shorter overview, so SKILL.md stays a launchpad.

Extract the CVE/version-gate table (CVE-2018-1002105, CVE-2024-21626, CVE-2019-5736, CVE-2022-0492, CVE-2020-8558, CVE-2022-3294) into a dedicated references/cve-gates.md so version-sensitive detail is isolated and easier to maintain.

Move the 'False-Positive Killers' and 'Validation Checklist' into a references/confirmation-gate.md referenced from the top, keeping the inline confirmation-gate summary as a pointer.

DimensionReasoningScore

Conciseness

The body is dense with executable commands and precise caveats and never explains domain basics Claude already knows (no 'Kubernetes is a container orchestrator'); its length is breadth of attack surface, all signal, fitting 'every token earns its place'.

3 / 3

Actionability

Copy-paste-ready curl/etcdctl/kubectl/kubeletctl commands carry real flags, paths, and payloads — e.g. the docker.sock privileged-container PoC, SelfSubjectRulesReview JSON bodies, and the etcd v3 /v3/kv/range query — the top 'fully executable, copy-paste ready' anchor.

3 / 3

Workflow Clarity

Phases 1–8 give a clear sequence, and validation is explicitly present for these destructive/offensive operations — the 'OOB / Confirmation Gate', per-finding 'Validation Checklist' checkboxes, and 'False-Positive Killers' supply the checkpoints and feedback loops the top anchor requires.

3 / 3

Progressive Disclosure

It is a ~290-line single file with no references/, scripts/, or assets/ bundle and no external links; though well-sectioned into phases, content that could be split (detailed CVE writeups, per-phase command catalogs) is inline, matching 'content that should be separate is inline'.

2 / 3

Total

11

/

12

Passed

Description

100%

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 highly specific, trigger-rich, and complete, naming concrete attack primitives and giving explicit 'Use when' guidance scoped to exposed K8s ports and cloud-metadata pivots. Voice is third-person/imperative with no first- or second-person slips.

DimensionReasoningScore

Specificity

Enumerates many concrete actions — 'API anonymous access', 'kubelet 10250 exec (SPDY/WebSocket, NOT plain POST) and the simpler /run primitive', 'etcd 2379 unauth', 'docker.sock host escape', 'EphemeralContainers node-shell' — matching the 'lists multiple specific concrete actions' anchor.

3 / 3

Completeness

Answers both what (the full vector enumeration) and when via an explicit 'Use when target runs containerized infra, exposes K8s ports (6443/10250/10255/2379/8443), or cloud metadata reveals K8s service accounts.' clause, the top anchor.

3 / 3

Trigger Term Quality

Natural pentest-facing terms dominate — 'Kubernetes & Docker', 'K8s ports (6443/10250/10255/2379/8443)', 'containerized infra', 'cloud metadata reveals K8s service accounts', 'docker.sock' — the terms an assessor would actually say, satisfying 'good coverage of natural terms'.

3 / 3

Distinctiveness Conflict Risk

It carves a clear offensive K8s/Docker hunting niche with distinct port- and primitive-based triggers, making conflict with unrelated skills unlikely.

3 / 3

Total

12

/

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

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
elementalsouls/Claude-BugHunter
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.