雑記

防衛省サイバーコンテスト 2026 に参加してみた記録

先日、防衛省サイバーコンテスト 2026 の参加賞が届きました。
封筒を開けると、参加者向けのステッカーが入っていて、「久しぶりのCTFは楽しかったな」と思い出したので、せっかくなので参加記録を残しておこうと思います。

今回は順位を狙うというより、AIに頼らず、自力でどこまで解けるかを試してみたい、という気持ちで参加しました。
最近はどうしても、調べ物やコード補助にAIを使うのが当たり前になってきていますが、プライベートで参加するCTFぐらいは「いま自分の頭と手だけで、どこまで辿り着けるのか」を楽しみたいので、そういう意味でも、今回は純粋に解くことそのものを楽しみに参加した回でした。

成績としては、190 / 590 点、584人中131位という結果でした。
上位入賞というわけではありませんが、個人的にはかなり楽しめましたし、手を動かしながら考える時間としても満足度は高かったです。

解けた問題と全体感

成績表を見ると、正解できたのは Crypto / Forensics / Misc / Network / Programming / Pwn / Web と、かなり広いカテゴリにまたがっていました。
その中でも、Crypto 50/80、Forensics 60/90、Network 50/80、Programming 50/80 と、このあたりは比較的しっかり点が取れていました。

一方で、Pwn は 10/100、Web は 20/90 という結果でした。
特に Web は、自分の本職が Web システム寄りのエンジニアということもあって、もう少し伸ばしたかったところです。

Web エンジニア視点で見た今回のCTF

自分は普段、業務で Web システムの開発をしているので、やはり Web 問題には自然と目がいきます。
成績表上では Web は 「会員限定の裏口」 と 「越境パス」 の 2問を正解できていましたが、20点問題以降は結局解けずでした。

ここは悔しさもありつつ、逆に面白いところでもありました。
普段の Web 開発では、認証、セッション管理、入力値検証、権限制御、プロキシ配下での挙動、HTTP レイヤの扱いなどは日常的に触れる領域です。
ただ、「作る側として知っている」ことと、「壊す側・見抜く側として解ける」ことは、やはり少し違うと改めて感じました。

業務では「安全に実装する」ことが主目的になりますが、CTFでは「どこに綻びがあり得るか」「どういう観点で挙動を疑うか」が問われます。
Web システムのエンジニアとしては、その視点の切り替えがとても勉強になります。
普段の開発の中でも、認証まわりやアクセス制御、ヘッダの扱い、リクエストの境界条件などを、より攻撃者目線で考えるきっかけになりました。

AIを使わず、自力で解く楽しさ

今回は最初から、AIには頼らずに参加しようと決めていました。
とはいえ、AIそのものを否定したいわけではなく、普段の調べ物やコード補助では便利ですし、実際かなり助けられています。

ただ、プライベートで参加するCTFくらいは、外部の強い補助なしで、自分の知識や発想だけでどこまで辿り着けるのかを楽しみたい、という気持ちがありました。

問題文を読んで、ログや通信を追いながら、怪しい挙動を一つずつ確認していく。
「これかもしれない」と試して、違えば戻って、また別の仮説を立てる。
そういう地道な試行錯誤は、効率だけを考えると遠回りかもしれませんが、自分にとってはCTFの面白さの一つだとあらためて感じました。

順位を意識するなら、また違う進め方もあったのかもしれません。
それでも今回は、順位そのものより、自分の力でどこまで解けるかを楽しむことを大事にして参加しました。
そういう意味でも、個人的には満足感のある参加になりました。

早い時間に解けた問題、最後まで残った問題

記録を見ると、午前中の早い段階で Web 10点問題の 「会員限定の裏口」 を 11:51、「越境パス」 を 11:57 に解けていて、かなり良い入り方ができていました。
その後も Forensics、Programming、Network、Crypto を着実に拾えていて、午後にかけて広く点を積み上げられています。

反面、30点帯や一部の20点帯は壁が高く、
Web の 「静寂の調べ」、「WebProxyの向こう側」、「突破された認証」、
Pwn の複数問題、Programming の 「細胞の回帰」 などは最後まで届きませんでした。

このあたりを見ると、まだまだ「知っているつもり」で止まっている分野が多いなと感じます。
特に Pwn は露骨に結果へ出ていて、普段の業務で触れる機会が少ない領域ほど、基礎体力の差がそのまま出ますね。

参加賞のステッカーが届いて思ったこと

そんな感じで参加した防衛省サイバーコンテスト 2026 ですが、今回こうして参加賞のステッカーが届いたことで、あらためて「出てよかったな」と思いました。

成績がどうだったか以上に、

  • 自分がどの分野で点を取りやすいのか
  • どこで失速するのか
  • Web エンジニアとして、守る側の知識と攻める側の視点の差がどこにあるのか

そのあたりが見えたのが大きかったです。

普段の業務開発は、どうしても「機能を作る」「障害を防ぐ」「納期に合わせる」が中心になります。
でも、ときどきこういう競技的な場で頭を切り替えると、セキュリティやプロトコル、実装の細部に対する感度が少し上がる気がします。
それは結局、日々の Web システム開発にもちゃんと返ってくるはずです。

おわりに

最終結果は 190点、131位。
派手な戦績ではありませんが、AIなしで、自力で考えて、手を動かして、ちゃんと楽しめたのが今回いちばん良かったところでした。

参加賞のステッカーも届いたことですし、記念としてこの記録を残しておきます。
また来年余裕があれば、次回も自分の実力試しとして参加してみたいと思います。
そのときは、もう少し Web と Pwn を伸ばして戻ってきたいところです。

-雑記
-, ,