【PicoCTF】大量ファイルに隠されたフラグを暴け!Linuxコマンドを活用した「Big Zip」攻略法
前回のアカウント登録を終え、いよいよ待ちに待った第一問への挑戦です!今回は、「CyLab Security Academy(旧PicoCTF)」の画面からどのように目的の問題へたどり着くのかという手順と、最初の「General Skills」にある「Big Zip」の攻略法をまとめました。
特に、リニューアル後の画面で迷わないためのポイントや、愛用のM3 MacBook Airのターミナルを使ったスマートな解決方法を解説します。
1. 迷わず問題にたどり着くための画面遷移と絞り込み
ログインしたら、まずは問題が置いてあるライブラリ画面(Challenge Library)へ移動します。現在、プラットフォームが「CyLab Security Academy」へリニューアルされたことで問題数が非常に多くなっています。
ここで重要なのが、最初から闇雲に探さないことです。他の人が迷わずスムーズに最初の1問にたどり着くためには、次のフィルター設定が不可欠です。
① Category(カテゴリ)を「General Skills」に設定する
インフラやLinux、ファイル操作の基礎が試されるこのカテゴリから入るのが一番の近道です。
② Difficulty(難易度)を「Easy」に絞り込む
難易度を一番低い「Easy」に絞ることで、初学者が最初に挑戦すべき適切な難度の問題だけにリストを絞り込むことができます。
【ポイント】
この2つのフィルターをかけるだけで、途端に「今、何を解くべきか」が見えてきます。この絞り込みを行わないと大量の問題に圧倒されてしまうので、これから挑戦する方はぜひ最初に試してみてください!
2. 「Big Zip」の概要と大量ファイルの罠
フィルターをかけて一番上に見つかる(または探しやすい)のが、今回挑戦した「Big Zip」です。
・問題名: Big Zip
・問題文: 「Unzip this archive and find the flag.(このアーカイブを解凍してフラグを見つけろ)」
ファイルをダウンロードして解凍してみたところ、そこには最初の難関(罠)が待ち受けていました。階層が非常に深く、似たようなフォルダやテキストファイルが何層にもわたって大量に出現したのです。
手動で探そうとすると…
もしGUIのファインダーや手動の
cd・ls ループで一つずつ中身を見ていこうとすると、膨大な時間がかかって心が折れそうになります。3. M3 MacBook Airのターミナルで一発解決!
ここで慌てず騒がず、愛用のM3 MacBook Airのターミナルを開き、インフラ業務でおなじみのコマンドを叩きます。
1. アーカイブの解凍とディレクトリ移動
unzip big-zip-files.zip
cd big-zip-files
2. grepコマンドで再帰的文字列検索
grep -r "picoCTF" .
この grep -r(カレントディレクトリ以下を再帰的に文字列検索する)コマンドを実行した瞬間、大量のファイルの中から目的のファイルとフラグが秒速でヒットしました!
./folder_pmbymkjcya/.../whzxrpivpqld.txt: ... picoCTF{gr3p_15_m4g1c_ef8790dc}
見つかったフラグの文字列をプラットフォームの解答欄に送信し、無事に「Challenge Complete」の数値が 1 に変わったのを確認。コマンド一発で迷宮を抜け出す爽快感を味わうことができました。
4. まとめ
・問題を探すときは、最初に Category: General Skills と Difficulty: Easy で絞り込むのが迷わない最大のコツ
・大量のファイルやディレクトリに直面しても、手動で漁らずgrep -rなどのLinuxコマンドを活用すれば一瞬で解決できる
・普段のMacのターミナル環境がそのまま強力な武器になる!
まずは最初の1問をクリアし、順調な滑り出しとなりました。次回も引き続き、実践的な問題に挑戦していきたいと思います!