zwesty
Write-ups / Day 18 / Warmups
Day 18 · Sun, Oct 18 · Warmups

Off the Rails

Prey slaughtered

Recognising a transposition cipher (rail fence), layered decoding

STTMClaude Homebase Both

Flags are shortened to their first 8 and last 4 characters because they're unique per team.

Challenge ID
warmups-day-18 (+ /time_trial, /mastery)
Solved
2026-10-18, all three modes, by 09:00:30 ET
Player
Zwesty (solo), with Claude Code (Opus 5.5): solved by our automated morning solver (a scheduled script on our Kali VM)

The challenge

Three rails. One very zigzag commute.

One blob of text per attempt; the answer is the slug in the decoded instruction sentence. Written from our solver's report and the saved Single Solve blob.

Reading the prompt: what it said we'd need

Clue What it pointed to What I did about it
"Three rails" Rail fence cipher with 3 rails Nothing new: the chain has decoded rail fence since the Day 15 pre-build
"zigzag" The rail fence's write pattern (down and up the rails) Same

What was in the files

The Single Solve blob was 109 bytes of readable letters in the wrong order, with spaces and punctuation kept: the letter mix of a normal English sentence, scrambled. That's the sign of a transposition, not a substitution. The timed sets used the same template; Mastery blobs carry one line per day, with today's layer on the last line.

The modes

Single Solve   CORRECT 09:00:15  flag 7dfffd9f…e666   solve 7 ms,   submit +1.39 s
Time Trial     CORRECT 09:00:22  flag bbd162f2…83b8   solve 13 ms,  submit +1.78 s  (unranked: 0 unique attempts)
Mastery        CORRECT 09:00:30  flag 303c8581…5870   solve 249 ms, submit +1.81 s

Time to solve

All three modes were solved by 09:00:30 ET, 30 s after release, each on the first submit and with no hand work; the Time Trial was unranked.

Takeaways

  • Breadth pays off: a decoder pre-built three days early answered today's layer with no change, so Warmups finished 30 s after release.
  • The Time Trial was a single-variant route (unique_attempts_remaining: 0, unranked). Because the solver always proves the Single Solve first, the one attempt went through.