CTFの初めの一歩と名高い、CpawCTF、そのLevel1を全クリしました!
初めの一歩のLevel1だから、もう初歩の初歩。プログラミングでいうところのHello worldくらいのレベル感ですかね。
Level1は9問あったのですが、そのうち2問はプログラムを組んで解くことが期待されている模様。だが、筆者はプログラミングはしなかった。なぜなら
環境構築が面倒だったから。
エンジニアにはあるまじき発言。仕方ないよね。Excelとテキストエディタ使って解けるならそっちの方が個人的には楽だし。
ただ、明らかにLinuxコマンドを要求している問題があり、これについてはどうしようもないので仕方なく環境構築しました。環境構築記事は↓↓↓
というわけで、本記事では以下を用いたCpawCTFのLevel1WriteUpを公開します。
- Google Chrome
- Excel
- サクラエディタ
- Linux(WSL)
Contents
WriteUp
Test Problem
コピペ。
classical cipher
プログラミング問題その一。
与えられたアルファベットの文字列を、3文字ずつずらせ、というのが問題の趣旨。
まずはExcelにペタッと貼りつけ。

=MID($A$1,COLUMN(),1)で、一文字ずつ切り刻む。

=CHAR(CODE(A2)-3)で、アルファベットを3文字ずらしていく

カッコやアンダーバーは空気を読んで変換せず。出来た文字列をくっつけたのがフラグ。
Can you execute?
Linux問題その一。
ファイルの種類を調べるのに、fileというコマンドを使うらしい。Linuxで1年仕事してたのに知らなかった、反省。
普通に実行して終わりだと思ってたんだけど、他の方のWriteUpを見ると、chmodで実行権限を付与する、という一手間が必要だったらしい。筆者がダウンロードしたファイルは777だったんだが……。問題が簡単になったのかも?
Can you open this file?
Linux問題その二。
上と同じくfileを使う。他のコマンドを使う問題はLevel2に期待かな。
HTML Page
Google Chromeで該当ページを開き、F12でデベロッパーツールを開く。
bodyタグにいるんじゃないかなー、とあたりをつけて探すもいない。headタグにいた。Web系問題の入門感があって好き。
River
Exif情報なんてあるんですね。知らんかった。
EXIF確認君、というサイトを使うのが鉄板です。
てか川の名前をローマ字表記にするの、地味に難しくないか? と思ったけどそこも含めて試されているのかもしれない。
pcap
なんかよく分からんけどサクラエディタに放り込んでみたら、フラグゲットしちゃった。
ただ、このまま終わっても何の足しにもならないので他の方のWriteUpを確認してみると、WireSharkとかいうソフトで開くのが筋らしい。
HashHashHash!
これはもう、解いたというよりサイトのおかげ。もちろんSha-1のデコードが出来るに越したことはないけど、問題文に「ヒント:googleで検索」って書いてあるし。。。案外ググる力が求められているのかもしれない。
ちなみに筆者は「sha-1 変換」でググりました。
並べ替えろ!
プログラミング問題その二。
ランダムに並んでいる数字を、降順に並べ替えろ! とのこと。
テキストエディタに貼りつけて、カンマを改行に置換。

Excelに貼りつけて大きい順に並べ替え。後はまたテキストエディタに貼りつけて改行をカンマに置換して戻す。

Level1の所感
頭を使う、という意味ではそんなに難しくはない。ただ、Exifやfileコマンドなど、知らなかった事もさっそく出てきたので、やはり良い勉強になる。
エンジニアって、調査する能力・推測する能力が非常に大事だと思ってるんですが、その辺の能力も要求されるので、結構良いトレーニングにもなるのではなかろうか。
Level2も頑張ります!(Excelとエディタだけでどこまでいけるかな)