未経験からセキュリティエンジニアへのキャリアパス「経験を積む」

前回の記事では、セキュリティエンジニアには複数の職種があること、IT経験があれば未経験でも目指せること、そして「脆弱性診断エンジニア」はコードやツールをいじりながら問題を解くのが好きなエンジニアに向いていると書きました。

今回はその続きです。「診断エンジニアに興味が出た。でも、実務経験ってどうやって積めばいいんだろう」という部分を掘り下げます。

診断経験がないとつまずくところ

「セキュリティ診断を勉強したい」と思って調べ始めると、Web Security AcademyやHack The Box、Burp Suiteといったリソースはすぐ見つかります。ただ、ある程度学習を進めた頃に、こういう壁にぶつかります。

「勉強はしてるけど、これって実務で使える経験になってるの?」

この壁を越えるには、やられ環境やバグバウンティを使って「実際に手を動かした経験」を積むのが一番の近道です。参考書を読んで理解した気になっていても、自分で環境を立ち上げてツールを動かしてみると、わかっていなかった部分がすぐ出てきます。

セキュリティ診断で求められること

診断の仕事で求められるのは、脆弱性を見つけることだけじゃありません。見つけた内容をレポートにまとめて、「なぜそれが問題なのか」「どう再現できるか」を人に伝えられることがセットで求められます。

また経験を積むにあたって、「どういう思考で見つけたか」を説明できるかどうかも大事です。たとえばやられ環境で脆弱性を見つけたとき、「なんとなくツールが反応した」で終わらせるのではなく、「この入力がなぜ問題になるのか」「攻撃者がここに目をつける理由は何か」まで自分の言葉で説明できると、実務でも応用が効くようになります。

学習の段階からこの習慣をつけておくと、レポートを書く力と思考を言語化する力が同時に育ちます。

未経験者が実務に近い経験を積む方法

実際のシステムを無断で診断するのは当然NGです。でも、「実務に近い経験」を積む方法はいくつかあります。

やられ環境を使う

DVWA(Damn Vulnerable Web Application)やJuice Shopは、わざと脆弱な状態で作られた練習用のWebアプリです。ローカル環境やDockerで立ち上げて、自分のマシン内で完結する診断練習ができます。「実在するサービスに手を出さない」という大前提を守りながら、実務に近い感覚で動かせます。

Web Security Academyを使う

PortSwiggerが提供しているWeb Security Academyは、無料で使えるセキュリティ学習プラットフォームです。ブラウザ上で動く練習用のアプリに対して、実際にツールや手動操作で脆弱性を試す形式になっています。「理屈を学ぶ」ではなく「やってみて理解する」構成なので、開発経験がある人には入りやすいです。

Burp SuiteとOWASP ZAPを触る

どちらもWebアプリの診断でよく使われるプロキシツールです。Burp Suiteはコミュニティ版(無料)でも基本的な操作は練習できます。OWASP ZAPは完全無料で、自動スキャンと手動の両方に対応しています。ツールの使い方を覚えることが目的ではなく、「通信の中身を見る・操作する」という感覚をつかむことが最初のゴールです。

CTFとの使い分け

CTFも診断の基礎を学ぶのに有効ですが、実務との違いは「ゲームとして設計された問題を解く」という点です。実務の診断は、答えがどこにあるかわからない状態からスタートします。CTFで感覚をつかみながら、やられ環境やWeb Security Academyで「業務に近い流れ」を練習する——両方を組み合わせるのがバランスいいと思います。

学習経験をポートフォリオや面接で見せる方法

ブログやWriteupを書く

CTFで解いた問題の解説記事(Writeup)や、やられ環境で試したことのまとめをブログに書いておくと、「何を学んだか」が伝わりやすくなります。書く内容は「脆弱性の仕組みと、なぜそれが問題なのか」を中心にして、実際の攻撃手順の詳細は省くのがベターです。「悪用できる情報を公開しない」という判断が、実務でも求められる感覚と一致します。

「何をしたか」より「何を考えたか」を書く

面接で評価されやすいのは「このツールを使いました」より「こう試して、こういう結果になったので、こう判断しました」という思考の流れです。ブログを書くときも、「結論と手順」だけでなく「詰まったところと、どう解決したか」を残しておくと、面接のネタになります。

バグバウンティに挑戦する

ある程度学習が進んだら、バグバウンティも選択肢に入ります。HackerOneやBugcrowdといったプラットフォームでは、企業が「自社サービスの脆弱性を見つけたら報奨金を払う」というプログラムを公開しています。スコープ(診断してよい範囲)が明示されているので、許可のある範囲で実在するサービスに対して診断を試せる、数少ない機会です。

やられ環境との一番の違いは、「答えがあらかじめ用意されていない」点です。見つかるかどうかわからない状態で調査を進める経験は、CTFや練習環境では再現しにくい。最初は報奨金より、「実際のサービスで通用するか試す場」として使うくらいの気持ちで入るのがいいと思います。

ただ、スコープ外への操作は絶対にNGで、ルールの読み違いが重大なトラブルになることもあります。プラットフォームのルールをしっかり読んだうえで取り組むことが前提です。面接でバグバウンティの経験を話すとき、「どう判断してスコープを守ったか」まで話せると、実務での倫理観をちゃんと持っている人という印象につながります。

まとめ

診断エンジニアの入口で詰まりやすいのは、「学習はしてるけど実務経験がない」というギャップです。ただ、実務そのものの経験がなくても、「実務に近い流れを再現した経験」と「それを言語化した記録」があれば、面接でちゃんと話せるようになります。

やられ環境やWeb Security Academyで診断の感覚をつかみ、ブログなどで記録を残す。その積み重ねが、実務に入ったときの立ち上がりの速さにもつながります。

診断エンジニアとしてのキャリアは、最初から完成している必要はありません。「学習の証拠を作りながら進む」というスタンスで動いていれば、入口の壁は思ったより低いです。

 

上部へスクロール