Quantcast
Channel: プログラミング
Viewing all articles
Browse latest Browse all 8562

CTF初心者向けのCpawCTFをやってみた - 土日の勉強ノート

$
0
0

前回までは、以前に行った OWASP ZAP の自動脆弱性スキャンの結果について、リスク高、中について、分析と対策をやってきました。

今回は、CTF(Capture The Flag)に入門してみたいと思います。

CTF とは、セキュリティにおける専門知識や技術を使って、隠されている Flag(旗、答え、文字列)を見つける競技です。競技と言っても、チュートリアル的な入門レベルから、賞金が設定される本格的な大会まであるようです。

国内で運営されている CpawCTF というサイトがあります。アカウントを作ると、日本語で、無料で、自分のペースで、CTF に挑戦できます。今回は、実際に CpawCTF にサインアップして、始めてみたいと思います。

それでは、やっていきます。

はじめに

「セキュリティ」の記事一覧です。良かったら参考にしてください。

セキュリティの記事一覧
・第1回:Ghidraで始めるリバースエンジニアリング(環境構築編)
・第2回:Ghidraで始めるリバースエンジニアリング(使い方編)
・第3回:VirtualBoxにParrotOS(OVA)をインストールする
・第4回:tcpdumpを理解して出力を正しく見れるようにする
・第5回:nginx(エンジンエックス)を理解する
・第6回:Python+Flask(WSGI+Werkzeug+Jinja2)を動かしてみる
・第7回:Python+FlaskのファイルをCython化してみる
・第8回:shadowファイルを理解してパスワードを解読してみる
・第9回:安全なWebアプリケーションの作り方(徳丸本)の環境構築
・第10回:Vue.jsの2.xと3.xをVue CLIを使って動かしてみる(ビルドも行う)
・第11回:Vue.jsのソースコードを確認する(ビルド後のソースも見てみる)
・第12回:徳丸本:OWASP ZAPの自動脆弱性スキャンをやってみる
・第13回:徳丸本:セッション管理を理解してセッションID漏洩で成りすましを試す
・第14回:OWASP ZAPの自動スキャン結果の分析と対策:パストラバーサル
・第15回:OWASP ZAPの自動スキャン結果の分析と対策:クロスサイトスクリプティング(XSS)
・第16回:OWASP ZAPの自動スキャン結果の分析と対策:SQLインジェクション
・第17回:OWASP ZAPの自動スキャン結果の分析と対策:オープンリダイレクト
・第18回:OWASP ZAPの自動スキャン結果の分析と対策:リスク中すべて
・第19回:CTF初心者向けのCpawCTFをやってみた ← 今回

CpawCTFの始め方

まず、以下の CpawCTF のサイトにアクセスします。

ctf.cpaw.site

CpawCTFにサインアップ

すると、以下のような画面になります。右上の「SignUp」をクリックすると、ScreenName(表示名)、UserID、Password、Password (again) の入力項目が表示されます。

CpawCTFのサインアップ
CpawCTFのサインアップ

ScreenName は重複しても大丈夫そうだと思ったのですが、既に使われてると言われてダメでした。ScreenName、UserID はどちらもユニークな名前を入力する必要がありそうです。

CpawCTFにサインアップできた
CpawCTFにサインアップできた

無事にサインアップが完了すると、以下のような画面になります。まずは、チュートリアル的な感じで、Level 1 があります。Level 2 と Level 3もあって、それが完了すると、次のステップがあるようです。

サインアップ後の画面
サインアップ後の画面

CpawCTFのLevel 1

ここで CpawCTF の問題の答えを記載することはありませんが、最初の Test Problem はテストということで、雰囲気をお伝えするのは大丈夫のようです。

Level 1 の最初の問題は、以下のように、答えが書かれていて、それを「flag」と書かれているテキストボックスに入力して、Submit できるかをテストする内容となっています。

Level 1の最初の問題
Level 1の最初の問題

答えの入力ボックスとSubmitボタン
答えの入力ボックスとSubmitボタン

正しい答えを入力して、Submit できると、順位?Submit出来た順?を下の方に表示されます。Q1 については、20035番目の正しい Submit だったようです。

Level 1の最初の問題の結果
Level 1の最初の問題の結果

以下、結果だけですが、Submit の順位を書いておきます。

問題 タイトル 順位
Q1 [Misc] Test Problem 20,035
Q6 [Crypto] Classical Cipher 17,031
Q7 [Reversing] Can you execute ? 11,390
Q8 [Misc] Can you open this file ? 12,329
Q9 [Web] HTML Page 13,922
Q10 [Forensics] River 12,903
Q11 [Network]pcap 11,964
Q12 [Crypto]HashHashHash! 12,487
Q14 [PPC]並べ替えろ! 11,414

CpawCTFのLevel 2

Level 1 の問題に全て正解すると Level 2 が出現します。

CpawCTFのLevel 2
CpawCTFのLevel 2

同様に、以下、Submit の順位を書いておきます。Q18 をクリアしたときに、Level 3 が出現しました。

問題 タイトル 順位
Q13 [Stego]隠されたフラグ 7,657
Q15 [Web] Redirect 8,018
Q16 [Network+Forensic]HTTP Traffic 6,841
Q17 [Recon]Who am I ? 7,518
Q18 [Forensic]leaf in forest 6,933
Q19 [Misc]Image! 5,773
Q20 [Crypto]Block Cipher 5,624
Q21 [Reversing]reversing easy! 4,995
Q22 [Web]Baby's SQLi - Stage 1- 6,061
Q28 [Network] Can you login? 4,763

CpawCTFのLevel 3

Level 2 を取り組んでる途中で Level 3 が出現しました。あ、Level 3 の最初の問題をクリアすると Level 4 が出現しました。

CpawCTFのLevel 3
CpawCTFのLevel 3

同様に、以下、Submit の順位を書いておきます。

問題 タイトル 順位
Q23 [Reversing]またやらかした! 2,694
Q24 [Web]Baby's SQLi - Stage 2- 4,409
Q26 [PPC]Remainder theorem 3,461
Q29 [Crypto] Common World 2,387

Level 4 というタイトルは出ましたが、Level 3 を全てクリアしても、問題は出ませんでした。現在は、Level 3 までのようです。

ランキング

ランキングを表示しているところがあったので、貼っておきます。1735位ということでした。

CpawCTFのランキング
CpawCTFのランキング

CpawCTFをやってみた感想

次は、CpawCTF2?があるようです。ぜひやってみたいと思います。

今回、初めて、CTF に挑戦したのですが、この CpawCTF は、とてもオススメできます。

それなりに時間がかかりましたが、私の場合は、非常に得るものが多かった、という印象です。

例えば、Wireshark は、それなりに、これまでも使ってきたつもりでしたが、こんな使い方もあるんだ、と思うことや、RSAの仕組みをちゃんと理解できたり、初めてのファイル形式をしれたりと、とても良い機会になりました。

少し残念だったのは、Web に、答えがありすぎて、関連することを検索しただけで、解き方が分かるキーワードが目に入ってしまう、ということでした。あと、最後の RSA の問題は、ちょっとモヤモヤした問題だったので、正しい解説が知りたいところでした。

以上、感想でした。

おわりに

今回は、CTF の入門として、CpawCTF に挑戦してみました。非常に楽しかったです。

次回は、とりあえず、CpawCTF2 を見てみます。

今回は、CpawCTF のロゴを使わせていただきました。ありがとうございます。

最後になりましたが、エンジニアグループのランキングに参加中です。

気楽にポチッとよろしくお願いいたします🙇

今回は以上です!

最後までお読みいただき、ありがとうございました。


Viewing all articles
Browse latest Browse all 8562

Trending Articles