CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

dns-rebinding

DNS rebinding attack to bypass browser same-origin policy and reach IMDS/localhost/internal services: TTL=0 rebind mechanics, rbndr.us/singularity tooling, browser DNS cache pinning, chaining into AWS/GCP/Azure IMDS credential pivot. Use when SSRF is blocked but a victim browser can be induced to make requests, or when a localhost service is exposed. Triggers on: 'dns rebinding', 'rebind', 'DNS TTL 0', 'singularity', 'rbndr', 'localhost bypass via browser', 'imds via browser', 'SSRF via DNS'.

Quality

83%

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

63%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 a dense, largely executable attack playbook with useful validation (PoC checklist, retry loop) and good internal structure. Its weaknesses are redundancy in the mechanics explanation, an inconsistent Singularity setup path, time-sensitive browser claims without a deprecation section, and a monolithic layout that inlines content suited to reference files.

Suggestions

Collapse the Phase 1-3 narrative and the ASCII sequence diagram into a single statement of the rebind mechanics, and drop the same-origin-policy basics from the intro — this trims the conciseness problem directly.

Fix the Singularity setup to be self-consistent (build the image from source after setting rebindingFn, or use the stock image's manager UI only), and fill the payload placeholders with worked example values so the main path is fully copy-paste ready.

Move the CVSS table, Electron/desktop port table, and defense/bypass matrix into a references/ file (e.g., references/targets-and-scoring.md) linked one level deep from SKILL.md, and relocate browser-version-specific TTL/pinning claims to a clearly labeled version-notes section.

DimensionReasoningScore

Conciseness

The content is mostly dense and useful, but the three-phase narrative and the ASCII sequence diagram restate the same mechanics twice, the intro re-explains same-origin-policy basics Claude already knows, and time-sensitive browser-version claims ('Chrome: pins for ~1min', 'Chrome 124', 'Safari doesn't implement PNA') appear outside any old-patterns/deprecated section. It is not a 4 because the phase/diagram duplication is a real tightening opportunity, not a minor instance; it is not a 2 because the bulk is concrete tables, commands, and code rather than padded prose.

3 / 5

Actionability

Most guidance is executable: the rbndr.us hostname-construction bash runs as-is (with a clearly marked <YOUR_VPS_IP>), and the payload HTML and IMDS fetch JS are near copy-paste ready. It is not a 5 because the Singularity section is internally inconsistent (instructs editing cmd/singularity-server/main.go for rebindingFn, then runs the stock nccgroup/singularity image that would not contain that edit) and several placeholders (<TARGET_PORT>, <ATTACKER_COLLECTOR>) require assembly; it is not a 3 because the core paths (rbndr + payload + IMDS chain) are concrete and executable.

4 / 5

Workflow Clarity

Sections follow a coherent order (applicability → mechanics → tooling → payload → IMDS pivot → Electron → defenses → evidence → scoring → chaining), and validation is explicitly present via the PoC Evidence Checklist ('Show the exfiltrated data', 'Show that without the rebind... the same request fails') and the payload's bounded retry loop. It is not a 5 because no single end-to-end numbered procedure ties tooling, payload hosting, and delivery together — the reader must assemble the sequence from reference-style sections.

4 / 5

Progressive Disclosure

The skill is a single ~220-line file with no bundle files (no references/, scripts/, or assets/ exist) and no pointers to any. Header organization is decent, but self-contained content that would serve better as one-level-deep references — the CVSS table, the Electron port table, the defense/bypass matrix — is inlined in the monolith. It is not a 4 because the <50-line simple-skill exception does not apply at this length and the split opportunities are real; it is not a 2 because internal section structure is clear and navigable, not an unstructured wall.

3 / 5

Total

14

/

20

Passed

Description

96%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 strong description: it states concrete capabilities with named tooling, provides an explicit 'Use when' clause plus a dedicated trigger list with synonyms, and clearly delimits its niche. The only weakness is minor overlap risk with a general SSRF skill via its SSRF-conditional triggers.

Suggestions

Narrow the SSRF-adjacent triggers (e.g., replace 'SSRF via DNS' with 'SSRF blocked, need DNS rebinding fallback') so a generic SSRF request does not fire this skill when rebinding is not intended.

DimensionReasoningScore

Specificity

The description lists multiple concrete capabilities with named specifics: 'bypass browser same-origin policy and reach IMDS/localhost/internal services', 'TTL=0 rebind mechanics', 'rbndr.us/singularity tooling', 'browser DNS cache pinning', and 'chaining into AWS/GCP/Azure IMDS credential pivot' — comprehensive coverage of the domain with no filler. It is not a 4 because coverage of what the skill does is complete across mechanics, tooling, and post-exploit chaining rather than having minor gaps.

5 / 5

Completeness

Both halves are explicit: the 'what' ('DNS rebinding attack to bypass browser same-origin policy and reach IMDS/localhost/internal services: TTL=0 rebind mechanics, rbndr.us/singularity tooling...') and a concrete 'when' ('Use when SSRF is blocked but a victim browser can be induced to make requests, or when a localhost service is exposed. Triggers on: ...'). This matches the anchor for clearly and explicitly answering both what AND when with concrete trigger phrases.

5 / 5

Trigger Term Quality

The explicit trigger list includes natural synonyms and tool names users would actually say: 'dns rebinding', 'rebind', 'DNS TTL 0', 'singularity', 'rbndr', 'localhost bypass via browser', 'imds via browser', 'SSRF via DNS'. It is not a 4 because both the synonym pair (rebinding/rebind) and the specific tool names are present, leaving no significant natural phrasing missing for this niche.

5 / 5

Distinctiveness Conflict Risk

The niche is clear with highly distinct core triggers ('dns rebinding', 'rbndr', 'singularity'), but SSRF-adjacent phrases ('SSRF via DNS', 'Use when SSRF is blocked') create minor overlap risk with a closely related generic SSRF skill. It is not a 5 because those SSRF terms could fire this skill for general SSRF-bypass requests where rebinding is not wanted; it is not a 3 because the dominant trigger vocabulary is unambiguously rebinding-specific.

4 / 5

Total

19

/

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.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

PurpleAILAB/Decepticon

Path

packages/decepticon/decepticon/skills/standard/exploit/web/dns-rebinding/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.