NTT Security Japan

お問い合わせ

OSCE3合格体験記

テクニカルブログ

OSCE3合格体験記
OffSecの難関資格に合格し、OSCE3を取得しました。取得に至る経緯を紹介します。

はじめに

プロフェッショナルサービス部の草柳です。業務ではRedTeamサービスを担当しています。自己研鑽の取り組みとして、OffSec社の難関資格に挑戦し、OSCE3を取得することができました。本記事では、取得までの道のりを紹介したいと思います。

お知らせ

弊社ではRedTeamやペネトレーションテストをサービスとして提供しております。日々、技術研鑽に励み、高度な技術を有するエンジニアが全力で攻撃します。本記事を読んでご関心をお持ちになりましたら、ぜひご相談いただけますと幸いです。

OSCE3について

OSCE3は、OffSecが提供するオフェンシブセキュリティ系の資格のうち、OSWE(WEB-300)、OSEP(PEN-300)、OSED(EXP-301)に合格することで取得できる資格です。OSCE3自体には試験などはなく、3つの資格に合格すると自動で付与されます。

Security Certification Roadmap - Paul Jerimy Media では、OSCE3や上記3つの資格は、OSEEの次に位置しています。OffSecの資格では、OSCP(PEN-200)が有名ですが、この図ではかなり下のほうに配置されていますね。

OffSecの各講習には、90日や1年間のコースがあり、教材とラボ環境を用いて学習します。試験は、47時間45分に及ぶ実技試験ののち、24時間以内に詳細なレポートを提出する形式です。実技試験では、脆弱性のあるマシンを実際に攻撃して、フラグを取得できればポイントがもらえます。規定のポイントに達し、かつ攻撃を再現できる正確なレポートを提出できれば合格です。

Try Harder

OffSecでは「Try Harder」があいことばになっています。これは、簡単に言えば「もっとがんばれよ」ってことなんですが、サイバーセキュリティの世界においては重要なマインドセットです。

  • 自分にできないことを、理解できるまで粘り強く取り組む。
  • 安易に成功に飛びつかず、よりよい方法を探し続ける。
  • あきらめない。

OffSecの講習を受けてよかったのは、こういった姿勢が自然と身に付いたことです。マシンを攻略して、資格を取るだけなら簡単です。しかし、現実には正解がない問題もたくさんあります。そういった困難に粘り強く立ち向かう姿勢は、業務でも大いに役立っています。

Pay Harder

試験も大変なのですが、その前に1次試験として、費用の支払いがあります。受講費用は年々高くなっていて(25万 - 40万円ほど)、個人で受講するには相当の覚悟がいります。かつて、私はWeb系の開発の仕事をしていたのですが、どうしてもサイバーセキュリティに関わりたい一心で、OSCPとOSWEの1次試験を突破しました。その後、NTTセキュリティ・ジャパンへと転職し、OSEPとOSEDは、会社のサポートにより受講することができました。

弊社には、資格取得のみならず自己研鑽のための手厚いサポートがあります。もちろん、業務に役立てる前提ですが、学習サービスの利用や研修の費用を会社に負担してもらっています。サポートしてもらった以上のリターンができるよう、より一層頑張りたいと思います。

スキルセット

大学は文学部哲学専攻で、卒業後に独学でITの勉強を始めました。IPAの資格に沿って勉強していけば間違いないだろうと思い、Web開発の傍ら、以下の資格を取得しました。

  • 基本情報技術者
  • 応用情報技術者
  • 情報処理安全確保支援士
  • データベーススペシャリスト
  • ネットワークスペシャリスト

Web開発では、フロントエンドやバックエンドにこだわらずなんでもやる必要があったので、通り一遍の知識が身に付きました。

  • プログラミング
  • サーバ構築
  • ネットワーク
  • クラウド
  • IoT
  • システム設計
  • etc…

応用情報を取得したあとぐらいからセキュリティに興味を持ち、勉強を始めました。

  • CTF
  • HackTheBox
  • PortSwigger Academy
  • セキュリティ関連の本たくさん

ここまできて、どうやらOSCPというセキュリティエンジニア憧れの難関資格があるということを知り、冬のボーナスをぶち込む決断をしました。講習はすべて英語ですが、語学は得意なので、苦ではありませんでした。半年ほどで合格し、アドレナリンが出ているうちに、そのまま夏のボーナスでOSWEを受けることとなります。

OSWE(WEB-300)

OSWEは、Webアプリのホワイトボックステストに関する資格です。Webアプリのソースコードを解析し、脆弱性を特定して認証バイパスやRCEを目指します。

https://www.offsec.com/courses/web-300/

基本的なWebの脆弱性が抑えられているのはもちろんのこと、ソースコードを深くまで追って、未知の脆弱性を発見する技術を学ぶことができます。浅い攻撃テクニックだけにとどまらず、ソースコードや脆弱性との向き合い方を実践的に学べたのがとてもよかったです。

また、試験では、複数の脆弱性をチェーンさせてRCEまでつなげる必要があります。脆弱性を発見するだけで終わらせず、うまく組み合わせてRCEのPoCスクリプトにまでする技術は、他ではなかなか学ぶ機会がなく、勉強になりました。現在でもかなり役に立っています。

学習(2023/9 - 2023/12)

ソースコードを読むことに関してはWeb開発で慣れていたので、スムーズにいきました。

  • 教材を2周読んで理解(1か月)
  • ラボを全て解く(1か月)
  • OSSの脆弱性ハンティング(2週間)
  • 試験準備(1週間)

合計300時間

ホワイトボックステストの練習として、OSSの脆弱性ハンティングに挑戦してみました(このとき報告した脆弱性に、後にCVEが発番され、一石二鳥)。また、試験準備として、脆弱性が発生するパターンを整理して、Grepできるようにしておきました。試験で出題される脆弱性は、教材で紹介されているものだけですが、いろんな言語・フレームワークでどんなときにその脆弱性が起きるかまでは教材で網羅されていません。脆弱性を見落とさないためにも、やっておいてよかったです。

試験(2023/12)

2問出題されます。それぞれ認証バイパス35点、RCE15点で、合計85点で合格です。2問目のRCEで苦戦したものの、30時間ほどで100点まで到達しました。残り時間でゆっくりレポートを作成し、余裕をもって試験を終えることができました。

OSEP(PEN-300)

OSEPは、高度なペネトレーションテストに関する資格です。企業ネットワークを模した環境内に侵入して、Active Directoryのドメイン管理者を奪取します。

https://www.offsec.com/courses/pen-300/

OSCPとは違って、ひとつの大きなネットワーク内を探索して、権限昇格や横展開を繰り返していきます。また、アンチウイルス製品が導入されているマシンもあり、検知回避が必要になる点も大きな違いです。教材では、プロセスインジェクションなど基本的なマルウェアの動作を学んでC#で実装したり、フィッシングからC2セッションを確立する攻撃手法やAD内での横展開手法を洗練させるなど、よりリアルなペネトレーションテストに近い内容がまとめられています。

ただ、環境はWindows 10が中心で少し古く、EDRなど高度なセキュリティ製品が導入されていないので、現代では通用しない内容も多いです。とはいえ、ペネトレーションテストのトレーニングとしては十分なものでしょう。

学習(2024/9 - 2025/1)

ちょうど、転職してRedTeam業務に慣れてきたところでの受講だったので、適度な難易度で楽しめました。

  • 教材を2周読んで理解(1.5か月)
  • ラボを全て解く(2か月)
  • ツールの開発(2週間)

合計450時間

勉強がてら、オペレーションでよく使うツールを自作しました。

  • Shellcode Loader (検知回避してReverse Shellを張るためのツール)
  • 自作PrintSpoofer(検知回避のため自作した)
  • VBAやPowershellからShellcode実行につなげるスクリプト
  • その他、自動化スクリプト

また、ラボは全て解くことをおすすめします。特に最後のラボは、実際の試験に似た構成だったので、試験対策になると思います。

試験(2025/1)

試験が始まると、ターゲットとなるネットワークレンジが与えられます。スキャンをすると、いくつか侵入経路が見つかるので、そこから攻撃を始めます。マシンごとに1つか2つのフラグがあり、それぞれ10点です。合計100点集めるか、Secretフラグを取得すれば合格です。

最初の侵入と、最後の10点でもたつきました。しかし、最終的にはSecretフラグをゲットし、合格できました。

OSED(EXP-301)

OSEDは、バイナリエクスプロイトに関する資格です。バイナリファイルを解析し、脆弱性を発見してシェルコードの実行までもっていきます。CTFのジャンルでいうPwnに近い内容です。主にWindowsのユーザランドが対象になっていて、カーネル側はOSEEでカバーされています。

https://www.offsec.com/courses/exp-301/

バイナリのReversingやデバッグから始まり、メモリ系のバグのエクスプロイト方法、さらにセキュリティ機構のバイパスまで学べます。シェルコードを自分で作るモジュールもあり、アセンブリの海に溺れることができます。

学習(2025/8 - 2025/10)

バイナリを読むことには慣れていませんでしたが、短期間で必死に勉強しました。

  • 教材を2周読んで理解(1か月)
  • ラボを全て解く(2か月)

合計350時間

IDAやWinDBGの使い方になれるまで時間がかかりました。ラボを丁寧に解きながら、ROPの組み方やASLRバイパスなどをマスターして、アセンブリもある程度読めるようになりました。ちょっと不安はあったものの、業務も忙しい時期だったので、えいやで試験に臨むことにしました。

試験(2025/10)

試験では、3問出題されます。問題1、2が30点、問題3が40点という配点で、60点以上で合格です。問題1と2は難なく解けましたが、問題3がかなり難しかったです。テストサーバではエクスプロイトが成功するのに本番サーバに刺さらないという状態でタイムアップとなりました。結果的には合格ですが、悔しい終わり方だったのでリベンジしたい気分です。

おわりに

OSCE3の取得に至るまでの経緯を、簡単に紹介しました。なかなか険しい道のりでしたが、実りの多い時間だったと思います。細かい技術もそうですが、やはり、「Try Harder」のマインドセットを体得できたことこそがいちばんの収穫かなと感じます。資格を取るとか、目標を達成するとか、そういった目先のゴールに飛びつくのは簡単です。技術を突き詰めて理解し、さらなる高みを目指す姿勢は、今後のエンジニア人生でも指針となるものと思います。

みなさんも、もし迷っているのならば、思い切って受講することをおすすめします。苦しい経験になるかもしれませんが、その分、大きな資産になります。私はおかげさまで、苦行中毒になってしまいましたので、さらなる苦しみを追い求めさまよっています。

最後に改めて、私が所属するRedTeamでは、ペネトレーションテスト、TLPT、RedTeam演習など、お客様のご要望に合わせたサービスを提供しております。「実際の被害事例をもとにした攻撃演習」や「攻撃者目線でのネットワーク侵入・内部での攻撃展開」などを通じて、お客様が抱えるリスクを可視化いたします。もしご興味を持たれましたら、ぜひお気軽にご相談ください。

関連記事 / おすすめ記事

Inquiry

お問い合わせ

お客様の業務課題に応じて、さまざまなソリューションの中から最適な組み合わせで、ご提案します。
お困りのことがございましたらお気軽にお問い合わせください。