ESPILON-CTF-2026-Writeups/Hardware/Signal_Tap_Lain/solve/solve.md
Eun0us 6a0877384d [+] Writeups v2 — sync solves, real points, scoreboard stats, cleanup
- Remove undeployed challenges: Phantom_Byte, Cr4cK_w1f1, Lain_Br34kC0r3 V1,
  Lain_VS_Knights, Lets_All_Love_UART, AETHER_NET, Last_Train_451, Web3/
- Sync 24 solve/ files from main CTF-Espilon repo
- Update all READMEs with real CTFd final scores at freeze
- Add git-header.png banner
- Rewrite README: scoreboard top 10, edition stats (1410 users, 264 boards,
  1344 solves), correct freeze date March 26 2026
2026-03-27 21:27:45 +01:00

1.5 KiB
Raw Blame History

Signal Tap Lain — Solution

Overview

A logic analyzer capture is streamed with 3 channels. Channel 1 (ch1) contains UART data at 9600 baud, 8N1 format. The player must identify the protocol from signal timing and decode the ASCII message.

Steps

  1. Connect and capture the data:
nc <host> 3800 > capture.csv

Wait for --- END OF CAPTURE ---.

  1. Analyze the capture. Use info command for metadata:
info

Shows 3 channels: ch0 (reference), ch1 (data), ch2 (noise).

  1. Focus on ch1. Look for patterns:

    • Idle state is HIGH (1)
    • Periodic falling edges = start bits
    • Measure time between start bits to find character period
  2. Calculate baud rate:

    • Bit period ≈ 104.17 μs → 9600 baud
    • Character frame = 10 bits (1 start + 8 data + 1 stop) = ~1041.67 μs
  3. Decode UART 8N1:

    • Start bit: falling edge (HIGH → LOW)
    • Sample data bits at center of each bit period (1.5 × bit_period after start)
    • 8 data bits, LSB first
    • Stop bit: HIGH
  4. Script or manually decode the ch1 data to ASCII. The message contains the flag repeated 3 times.

Key Concepts

  • Logic analysis: Reading digital signals and identifying protocols from timing patterns
  • UART 8N1: Universal Asynchronous Receiver/Transmitter — start bit, 8 data bits LSB-first, no parity, 1 stop bit
  • Baud rate detection: Measuring the shortest pulse width gives the bit period → baud rate
  • Signal separation: In a multi-channel capture, identifying which channel carries useful data

Flag

ESPILON{s1gn4l_t4p_l41n}