CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

krack-fragattacks

KRACK key-reinstallation (CVE-2017-13077..13082) and FragAttacks fragmentation/aggregation flaws (CVE-2020-24586..24588, CVE-2020-26139..26147) against legacy or embedded 802.11 supplicants with poor patch cadence.

Quality

73%

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/wireless/krack-fragattacks/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%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 an unusually operational, command-dense runbook with good sequencing and explicit attack-confirmation validation. Its weaknesses are the single-file monolithic layout (CVE maps and vendor matrices belong in reference files), one broken repository URL, and the lack of an error-recovery path for failed tests.

Suggestions

Move the KRACK/FragAttacks CVE maps and the per-vendor residual-exposure matrix into a references/ file (e.g. references/cve-map.md) linked from the body, keeping SKILL.md as a lean overview.

Correct the KRACK test-script repository URL (github.com/vanhoef/krackattacks-scripts) and verify fragattacks.py subtest names against the actual tool.

Add a short error-recovery note: what to do when a test reports FAILED, when the channel-based MITM position cannot be established, or when the target disconnects mid-test.

DimensionReasoningScore

Conciseness

The body is dense and operational — commands, CVE maps, and vendor notes with almost no filler or explanation of concepts Claude already knows. Minor trimmable padding exists: the 'How it works' prose re-explains KRACK mechanics Claude largely knows, and the git clone/pip/apt install boilerplate could be compressed. The version numbers and dates are functionally essential (patch-detection matrix) rather than gratuitous time-sensitive content, so they don't drag it below the level-4 anchor.

4 / 5

Actionability

Nearly everything is copy-paste-ready: airodump-ng/tshark recon pipelines, concrete `krack-test-client.py` and `fragattacks.py` invocations with named subtests, an awk-based nonce-reuse detector, and evidence-recording code. Falls short of 5 because the KRACK repo URL (`github.com/vanhoej/krackattacks-scripts`) does not match Vanhoef's actual repository, so that command fails as written, and a couple of fragattacks.py subtest names are unverified against the real tool.

4 / 5

Workflow Clarity

There is a clear sequence — viability gate → scope-viability assessment before any active test → per-family test execution → confirmation of success (per-test SUCCESS/FAILED output, pcap nonce-reuse and injected-ICMP evidence) → evidence recording → OPSEC gating — with validation checkpoints at the attack-confirmation stage. It sits at level 4 rather than 5 because there is no error-recovery loop (what to do on a FAILED test, or when the MITM position isn't achieved) and the recon-to-test handoff (how recon output feeds the chosen test) is implicit.

4 / 5

Progressive Disclosure

The single SKILL.md carries everything inline: ~80 lines of CVE maps and per-vendor residual-exposure tables plus both attack families, with no references/ bundle (only external links and sibling-skill mentions). Section headers are clear, but reference-grade material (the CVE tables, vendor patch matrix) is inlined where the level-4/5 anchors expect it split into well-signaled one-level-deep files — matching 'some structure but content that should be separate is inline' better than 'most content is appropriately placed'.

3 / 5

Total

15

/

20

Passed

Description

65%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 precise and highly distinct, with excellent CVE-level specificity and natural trigger keywords. Its main weakness is the absence of an explicit 'Use when...' clause and of concrete action verbs describing what the skill actually does, which caps both completeness and specificity.

Suggestions

Add an explicit trigger clause, e.g. 'Use when testing Wi-Fi clients or APs for KRACK/FragAttacks vulnerabilities, or when a target runs an unpatched legacy supplicant.'

State the skill's concrete actions (e.g., 'runs Vanhoef test scripts, confirms nonce reuse from pcaps, and maps results to CVEs') instead of only naming the flaw families.

Include natural synonyms such as 'Wi-Fi', 'WPA2', and 'wireless' alongside '802.11 supplicants' to widen trigger coverage.

DimensionReasoningScore

Specificity

The description names a concrete, well-bounded domain ("KRACK key-reinstallation (CVE-2017-13077..13082) and FragAttacks fragmentation/aggregation flaws") and a specific target profile ("legacy or embedded 802.11 supplicants with poor patch cadence"), but it states what the vulnerabilities are rather than what the skill does — there are no action verbs (test, detect, exploit, verify patch state) beyond naming the flaw classes. It fits the 'names domain and 1-2 concrete actions, but not comprehensive' anchor better than level 4, which expects several specific listed actions.

3 / 5

Completeness

The 'what' is clear (KRACK and FragAttacks flaw families with CVE ranges), but there is no 'Use when...' clause or equivalent explicit trigger guidance — "against legacy or embedded 802.11 supplicants with poor patch cadence" is a target qualifier, not usage guidance. Per the judging guidelines, a missing explicit 'when' clause caps completeness at 3; the implicit targeting keeps it at the top of that anchor rather than dropping to 2.

3 / 5

Trigger Term Quality

Strong natural keywords a user would actually say: "KRACK", "FragAttacks", "key reinstallation", "fragmentation", "aggregation attack", plus explicit CVE identifiers. Slightly below the level-5 anchor because common variations like "Wi-Fi", "WPA2", or "wireless" never appear in the description itself — only the more formal "802.11 supplicants" — leaving a few natural synonyms missing.

4 / 5

Distinctiveness Conflict Risk

KRACK and FragAttacks with their exact CVE ranges are a highly distinctive niche with near-zero trigger overlap against generic wireless or scanning skills; sibling skills (PSK capture, deauth) are separate families. This matches the 'clear niche with distinct triggers; minimal conflict risk' anchor exactly.

5 / 5

Total

15

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

metadata_field

'metadata' should map string keys to string values

Warning

Total

14

/

16

Passed

Repository

PurpleAILAB/Decepticon

Path

packages/decepticon/decepticon/skills/standard/wireless/krack-fragattacks/SKILL.md

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.