CTF

【CTF入門】セキュリティ未経験エンジニアがCTFに挑戦してみた

パソコンの画面

CTF、やりたいやりたいとは思っていたのですが、何から始めればいいのか、いまいち分からず。

先延ばしにしてしまっていたのですが、とうとう最初の一歩を踏み出しました! 

というわけで、同じようにCTFの第一歩を踏み出そうとしている方向けに、記事にしてみました。

CTFって?

本記事を読んでいる方には、説明不要かもしれませんが、念のため。

CTFとは、Capture The Flagの略で、セキュリティ技術を競うコンテストやクイズの総称です。イメージとしては、運営側が広大なネットの世界に隠した旗(Flag)を、プレイヤーが入手する(Capture)、という感じですかね。

日本では、SECCONという大規模な大会が開催されており、筆者もそのイベントがきっかけでCTFの存在を知りました。

SECCONに出場してみたい! と思ったは良いものの、次の出場出来そうな機会は半年以上先……。かと言って何もしないで待っているのもお預け食らってる感。

そこで調べてみると、どうやらCTFは、SECCONのようなイベント型と、オンラインで常に問題が公開されている常設型、の2種類にカテゴライズされているらしい。

だったら、常設型にチャレンジしてみよう!

挑戦者のITスキル

参考までに、文系卒の開発エンジニア3年目である筆者のITスキルは以下。

  • 【データベース】SQLやプロシージャはそれなりに書ける。ただし、実行計画やインデックスなどパフォーマンスチューニングに関してはほぼ素人。
  • 【プログラミング】既存の処理の簡単な改修なら可能。ゼロから組み上げる能力はお察し。エンジニア1年目の時にJava銀を取得したものの、使わないので忘れました。
  • 【インフラ】素人以下。現場でFireWallやActiveDirectoryなどの話が出るたび、作業に集中するフリをして回避する。基本的なLinuxコマンドくらいは使える。

ざっくり言うと、DBが多少使えて、プログラムがちょっと読める、くらいですかね。最近流行りのプログラミングスクール生にも劣りそうな弱小スキルです。

そんな弱小スキルエンジニアがCTFに取り組もうと思った動機は以下の通り。

  • 色んな分野の知識が要求される為、単純に自分のITに関する知見、スキルを研鑽出来そう
  • セキュリティに強いってかっこよくね? ファルコンかよ。

CpawCTFをやってみた

常設型CTFの中でも、特に初心者向けなのはCpawCTFというものらしいので、挑戦してみました。

https://ctf.cpaw.site/

まずは、サインアップ。すると、以下のような画面に。

CpawCTF

どうやら、Level1は9問あって、全て解くとLevel2にあがれるらしい。

WriteUp(CTF界隈でいう回答・解法のこと)は別記事にて公開予定ですが、WindowsOS上で、Google先生、テキストエディタ、Excelを駆使して9問中7問は解けました! 残り2問は仮想でLinux環境が欲しいところ。。。

Level1のWriteUp記事は↓↓↓

セキュリティ未経験、底辺スキルのITエンジニアでも、CpawCTFなら確かにCTFへの第一歩としては最適だと思います。フラグの文字列を取得出来た時は快感ですね。問題が難しければ難しいほど比例して快感もあがりそう。。

謎解きが好きなエンジニア、暇つぶしが欲しいエンジニア、セキュリティに興味があるエンジニアは、CTFの世界に踏み出しましょう!