[日本語] [English]

Bishop Duel

TCPサーバの接続情報と、ファイル main.rs が与えられた。

Tera Termでサーバに接続すると、以下のような表示になった。

       o
      (^)
     -=H=-          BISHOP DUEL
      ] [   -- press enter to start --
     /___\

送信の改行コードをLFに設定してEnterキーを押すと、以下のような表示になった。

\__\\\\__\\\\__\WW\__\\\\      Q#      - up left # spaces
 \\\\__\\\\__\\\\__\\\\__\         E#  - up right # spaces
  \__\\\\__\\\\__\\\\__\\\\    Z#      - down left # spaces
   \\\\__\\\\__\\\\__\\\\__\       C#  - down right # spaces
    \__\\\\__\\\\__\\\\__\\\\
     \\\\__\\\\__\\\\__\\\\__\       D - offer draw
      \__\\\\__\\\\__\\\\__\\\\      R - resign
       \\\\BB\\\\__\\\\__\\\\__\

You are the white bishop. Input move >

盤上を斜めに動かせるコマを操作し、勝負をするようである。
自分のコマは WW で、相手のコマは BB で表されている。

Goal 1 (first flag)

相手のコマに自分のコマがあるマスに来てもらうことで、勝負に負けることが目的である。

盤面の範囲内のみを動かす場合、__ で表されるマスからは __ で表されるマスにのみ行くことができ、 \\ で表されるマスからは \\ で表されるマスにのみ行くことができるので、初期状態で違う種類のマスにあるコマを重ねることはできない。
しかし、右端のマスのさらに一つ右に行こうとすると、左端の違う種類のマスに出ることがわかった。
これによりコマが居るマスの種類を変えた後、相手がコマを動かせる範囲のマスに行くことで、flagを得ることができた。

sdctf{L0SiNG_y0uR_S0uRC3_C0d3_sUcKs}

Goal 2 (second flag)

自分のコマを相手のコマがあるマスに動かすことで、勝負に勝つことが目的である。

以下のように操作を行うことで、flagを得ることができた。

goal_2_log.txt

sdctf{I_d1dnt_hAND_0u7_th3_s0urC3_c0D3_thIs_TIME}

writeup by MikeCAT

San Diego CTF 2022