competition-custom-protocol-replay
About competition-custom-protocol-replay
A downstream CTF skill for reproducing stateful custom-protocol exchanges after `$ctf-sandbox-orchestrator` establishes the sandbox and evidence priorities. It centers on message order, framing, and the smallest transcript that reaches an accepted state.
Key features
- 01Map session phases and state transitions
- 02Recover framing and integrity fields
- 03Maintain a canonical successful transcript
- 04Replay exchanges while changing one element
- 05Reduce the exchange to a minimal accepted sequence
Use cases
- 01Reproduce a stateful custom-protocol interaction
- 02Find which message or field changes server acceptance
- 03Build evidence for a minimal replay that reaches a target state
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ zhaoxuya520/ reverse-skill --skill competition-custom-protocol-replayAfter installing, type/competition-custom-protocol-replayin Claude Code to confirm it loaded.
Bundled filesagents/openai.yamlreferences/custom-protocol-replay.md
Details
From the project READMECompetition Custom Protocol Replay
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 hard part is not merely naming the protocol, but reproducing the exact message order and state needed for acceptance.
Reply in Simplified Chinese unless the user explicitly requests English.
Quick Start
- Identify client and server roles, session boundaries, and reset conditions before decoding field semantics.
- Recover framing, lengths, delimiters, sequence numbers, checksums, nonces, and state transitions before broad replay attempts.
- Keep one canonical transcript of a successful exchange.
- Change one field or one message at a time while replaying.
- Reproduce the smallest accepted conversation that proves the decisive branch.
Workflow
1. Map The Session State Machine
- Identify handshake, negotiation, authentication, keepalive, command, and teardown phases.
- Record which fields are static, which are derived, and which depend on prior messages.
- Keep message order, direction, and timing tied to the same session identity.
2. Recover Framing And Integrity
- Reconstruct lengths, delimiters, type bytes, checksums, MACs, counters, compression, or encryption boundaries.
- Distinguish transport framing from application-level framing.
- Note exactly where server acceptance changes when one field or step is mutated.
3. Build The Minimal Replay Harness
- Reduce the path to the smallest transcript that reaches the accepted state, parser branch, command effect, or artifact.
- Preserve both the original captured sequence and the replayed minimal sequence.
- If the problem is mainly generic PCAP or stream decoding with no stateful replay requirement, switch back to the broader PCAP skill.
Read This Reference
- Load
references/custom-protocol-replay.mdfor the state-machine checklist, transcript checklist, and evidence packaging.
What To Preserve
- Canonical transcript, message types, field boundaries, checksums, counters, and session identifiers
- Original capture slices and the replay harness inputs that produce acceptance
- The exact mutation that flips the protocol from rejected to accepted, or vice versa