OSCP受験記

久しぶりの更新です

12月上旬に受けたOSCPに無事合格していたので、受験期を書いておきます!

OSCPについて

OSCP受験記 - Tahoo!!
【OSCP取得奮闘記】難関セキュリティ資格を攻略してみた! | 株式会社ユービーセキュア
OSCP: ペネトレーションテストの実践的な資格を取った話 - ommadawn46's blog

申し込みまで

OSCPは以前から受けてみたいと思っていたものの、時間とお金の都合でなかなか機会がありませんでした。
バグバウンティの報奨金がそれなりに貯まったので、それを使って受けることにしました。

イエラエアカデミーの学生体験コースは費用まで出してもらえるとは思っておらず、問い合わせた頃にはもう定員いっぱいでした;

結局2ヶ月コースを申し込み、9月下旬からコースを開始することになりました。

9月下旬〜10月上旬

2週間ほどかけてPWKのPDFをひたすら読んでいました。
知らないことも多かったですが、PDFを読みながら「そうなんだ!」くらいで済ませていたのが反省点です。
ラボに取り掛かる頃には読んだことを結構忘れてしまっていたので、せめて知らない部分はエクササイズを解きながら身につけていくべきだったと思います。

10月中旬〜下旬

ラボに取り掛かり始めました。
何から始めたらいいのか分からないという状態だったので、スレッド(OSCP受講生たちがラボマシンについて語り合えるスペース)を最初から開いた状態で解いていました。とにかく基本をインプットするぞという気持ちで10月中にラボ環境の30台弱を攻略しました。

11月上旬

この時期はとてもつらかったです。
たまにちょっとやる気がなくなることはあるんですが、この時期はなぜか技術に対するモチベがマイナスになっていました。今までここまでやる気がなくなることはなかったので、自分でもびっくりでした。
なんで興味ないことを自腹で受けてるんだろう...とか、こんなの受けて何になるんだろう...みたいな気持ちしか湧いてこなかったので、数日OSCPの勉強はやめて、ゲーセン多めに行って気分転換してました 11日に女神転生Vが発売されたので、やる気が回復するまでは無限に攻略してました。

11月中旬〜下旬

残りのラボへのアクセス期間が3週間ほどになってしまったにも関わらず、残りのラボマシンが40台ほど残っていました。
とにかく知らないことを減らしたかったので、残りの40台も15分くらい考えて分からなければすぐにスレッドを見るというインプット重視の攻略方法で進めていきました。最終的にラボ環境75台中の72台を攻略しました。
試験の予約も行いました。少し前にカレンダー見た時は結構ガラガラだからまだ先でいいや〜と思ってたんですが、12月の中旬以降は全て埋まっていて、12月上旬も早朝開始の試験しか残っていませんでした。もう少し早く予約するべきでした。

12月上旬

この時期もきつかったです。
やる気がないとかではなく、ちゃんとラボマシンを攻略していなかったので、未知のマシンをヒントなしで解く自信がありませんでした。
他の受験生の合格/不合格エピソードとかを読んでいると、ラボ内全マシン解いたけどすぐにヒント見ながら解いてたら2回落ちたでwみたいな記事が多く見つかり、完全にこれだったので本当にやってしまったな...となっていました。
HTBとかにOSCP likeなマシンはあるんですが、なんだかんだOSCPらしさとかHTBらしさはあると思います。
ちゃんとOSCPの対策としてPWKのラボをヒントなしで解く練習をするべきでした。

多分一回目は落ちるけど延長して受けたらいいや!くらいの気持ちだったんですが、offsecがこんな記事を出しました。
www.offensive-security.com 2022年からoscpの試験内容がかなりガラッと変わるみたいです。
新試験開始まで予約は埋まり切っており、一回目で落ちたら新バージョンを受けないといけないので、二回目チャレンジできないな...というプレッシャーもヤバかったです。

試験本番

変な時間の試験しか残っていなかったので、朝6時から試験でした。あまり眠れず不安しかありませんでした。
5時に起きて、モンエナとレッドブルとラーメンを準備しました。
カフェイン効果を上昇させるために試験一週間前はカフェイン禁してました。

~7:00 - 25点マシンのroot
~7:15 - 10点マシンのroot
~9:00 - 20点マシンのroot
~11:00 - 20点マシンのroot
この時点で70点は超えましたが、レポートのミスですぐに落ちると思ったので、もう一つの25点問題も頑張ることにしました
~13:00 - 25点マシンのuser
この時点で87.5点あるので、多少のレポートミスがあっても合格点には届くと判断し、レポート作成を開始しました。

全てのマシンをもう一度解き直して、レポートと同じ手順で再現できるか確認しながらレポートを書いていきました。
22時まで念入りにレポートのスペルチェックなどをして、試験を終了してレポートの提出をしました。25点マシンのrootで怪しいところをいくつか挙げていたんですが、ここ一週間くらいのプレッシャーがやばすぎてヘトヘトだし眠れてないしで諦めてしまいました。

試験のことは細かく書けませんが、OSCP likeマシンがどうこうよりも、PWKラボの多くのマシンを自信持って解けるなら十分合格できるレベルだと思います。

反省点
  • PDFのエクササイズ
    レポートを提出しなくても知らないところは指を動かして確かめるべき
  • ラボに取り掛かる前に、OSCP likeなマシンを攻略しておくべきだった
    PWKラボはマシンを攻略した後にpivotして他のマシンを攻略して...というサイクルができる点に価値があると思います。
    シェルを取る→権限昇格くらいはHTBで学んで(特にカーネルエクスプロイト以外の権限昇格を利用するマシンの攻略)、PWKラボで腕試し&pivotやpost exploitationをやった方がいいと思います。それにさっきも書きましたが試験対策もOSCPらしさが出ているPWKラボのマシンで対策した方が確実です。OSCPのretired examマシンとかもPWKラボ内にあるみたいです。 Introduction of Recently Retired OSCP Exam Machines in PWK Labs | Offensive Security
  • レポートの書き方も練習しておくべきだった
    問題を解き直す時間があったのでよかったですが、解き直して初めて気づく説明不足の部分も結構ありました。何をレポートに書く必要があるのか、自分である程度テンプレートを作っておくべきだったと思います。配布されてるテンプレートに沿う形だと、exam-guideに書いてある必要項目が抜けてしまうと可能性があると思います。
  • スレッドを見ながら攻略するのはせめて数時間考えてからにする
    試験前の自信に繋げるためにやった方がいい気がします。マシンの攻略が「脆弱性を探す→詰まる→ヒントを見る→解く」というプロセスで練習をしていると、ヒントがない本番で結局問題が解けなくなる、という記事を見かけましたが本当にそうだと思います。脆弱性を発見するまでのプロセスが相当大事だと思います。
全体の感想

最初存在を知った時はめちゃくちゃレベルの高い試験だと思っていましたが、求められる技術は高くないと感じました。セキュリティの資格は支援士しか持っていませんが(未登録)、それよりは全然難しく感じました。
脆弱性の難易度自体は最近のCTFだとほとんどのチームが正答するレベルだと思います。ただ、得られる情報や脆弱性が絡み合っていたり必要な知識も広くて思ってたより普通に難しかったです。
正直あまりよくない勉強方法をしてしまったと思いますが、他のCTFプレーヤーの「脆弱性を見つけるまでのプロセスが大切」という体験記を参考にしていたのが良い結果につながったと思います。すぐにスレッドを見るインプット重視の進め方をしていましたが、何を見たら/何のコマンドを打てばその脆弱性を見過ごさずに済んだのかを必ず確認するようにしていました。

これから

OSWEはなんか違うなという感じだったので、次はOSEPが気になってますがもう少しお財布と相談してからにしようと思います。