はまやんはまやんはまやん

hamayanhamayan's blog

OSCP 合格体験記 2022/05

ナレッジ共有です。

OSCPを受ける前に

  • HackTheBoxを少なくとも数個は完了させておくこと
    • HackTheBoxのVIPはOSCPに比べたら信じられないくらい安いのでVIPを契約して、少なくともWriteupを見ながらEasyが攻略できるか確認しておくといい。見ながらでも良く分からない場合は、早い気がする
      • 最近は日本語Writeupも沢山あるので、日本語Writeupがあるものからやっていくのもいい
    • linuxコマンドの説明とかネットワークまわりのとか必要なことは説明してくれるが、1契約期間がmax 90日であることを考えると、そんなことやってる場合じゃないし、完全じゃない
    • どんな学習過程でもそうかもしれないが、ラボ攻略はある時点から急激に勝手がわかってくる。思考法みたいなものを学べるので、あるとき急激に理解が進んだ実感があった。その時点をOSCPのラボ期間中に持ってこれると一番コスパ良い
    • OSCPに似ているボックスが紹介されている。他にもまとめがあったような https://docs.google.com/spreadsheets/d/1dwSMIAPIam0PuRBkCiDI88pU3yzrqqHkDtBngUHNCw8/edit#gid=0
  • pythonPHPが読める必要がある
    • 他にもちょっと出てきたりするが、ほぼほぼこの2つなので、最低限読めるようになっておく必要がある
  • 英語
    • 英語は全く分からないと困ります。OSCP受けるような人なら必須ラインは越えてる気がしますが、OSCP受験時はテキストベースですが英語でやり取りする必要があるので注意です
    • 試験中コーヒー飲みまくってたので「I want to go to the bathroom.」が一番使った英語です。(ICPCのアジア予選でも使った気がするな)

OSCPで学べること

  • 網羅的な攻撃手法
    • 攻撃手法もそうだが、割と実務ベースで色々なことを教えてくれる
    • 高くて資料が分厚いだけあってかなり網羅性がある
  • 攻撃者の思考法
    • これは明記されている訳ではなく、自分が読み取った感じであるが、攻撃者の思考法を模倣できる
    • 「この環境にはこれが無いんや、面倒やけど持ってくるか」とか「こういうハーデニングされてるのかー面倒やな」とか「ウイルス対策うざすぎんか?」とか人間味あふれる攻撃模様を体感できる
    • 現実の攻撃でPCにある情報を根こそぎ圧縮ファイルに固めてMegaとかで抜いていることが書いてあるホワイトペーパーがあったりするが、侵入が面倒な端末に対しては入りなおすのも面倒だから根こそぎ情報を抜き取ってきたい信条になる。Persistenceの重要性も理解できるのでMITRE ATT&CKなどがとても実感できる
  • AD環境へのハッキング
    • 学習用のAD環境というはOSCPラボに限らず色々な所でサービスとなっているが、どこも高いので、ついでと言っては何だが、OSCPで学ぼう
    • それほど難しいことは学べないので注意

実際OSCPで教わる攻撃手法はHackTheBoxのRetireマシンを全部やれば、ほぼほぼ網羅できると思う。だが、企業を模倣した80台レベルの環境というのはそうそうないので、そういった環境を楽しんで探索できるのがOSCPラボの魅力かと思う。

(実際、試験は穴が見つかるか見つからないかのチキゲームで、ちょっとセンスゲーな感じがしないでもないが…)
試験自体は、実際流れというか基本概念が分かっていれば、後は24時間頑張れば行き当たりばったりで合格できる気がする。ただ、この辺りは非常に評価が分かれそうで、強者にとっては自明すぎてやるだけなのだが、見つからない人は一生見つからないみたいな競プロみたいな事態になりそう。とは言っても、ここも競プロ同様に経験でカバー可能なので、鍛錬を積もう。

ラボ攻略について

  • かなり楽しいので時間を作ってやること
  • "Forum"
    • ラボ受講者向けの情報交換フォーラムがあり、ラボのヒントが投稿される
    • 大体ここを読み込めば難しいマシンでもなんとなく解ける
    • これを使わないと1か月で全完は無理。というか、もう終わらせることが目標になっていて、後半はかなりForum見ながらやってました…
  • ラボ攻略のペース
    • 1か月でほぼほぼ全部解きましたが、平日5時間休日空き全てを費やして1か月かかります。1台3,4時間くらいのペース?多分。
    • 深いマシンの方が難しいというかそういったことはあまりないが、面倒というか別方面で頑張ることが増える
    • 試験では離れ環境とかは無いのでPublicがとりあえず一通り解ければ受かるんじゃないかな
    • ラーニングパスがあるので従うこと。https://help.offensive-security.com/hc/en-us/articles/360050473812-PWK-Labs-Learning-Path
      • 特にRetiredマシンみたいな扱いを受けて、Forumに1から10まで攻撃方法が書いてあるマシンがあるので、それから初めてもいい
  • やっていくと分かる直接的ではないヒント
    • ForumではIPというより、ユーザー名やホスト名でヒントを出してる人が多いので、マシンに侵入が完了したらユーザー名やホスト名はメモっておくこと
    • ハーデニングがなされているマシンがあることに注意。攻撃者、もしくは、防御者の始点になって設定を想像すること
    • Publicネットワークと他の離れ環境の間のFWの設定も色々頑張ってやってる。1パターンではないので、色々な可能性を考えること
    • 解けた場合でもForumは巡回した方がいい。知見がかなりたくさんある
  • 攻略しながらOSCP本試験で使うチートシートを作ること
    • 色々な受験記で言われていることですね
  • BoFについて
  • あ、あと教科書のExerciseは一個もやってません
    • なので良し悪し分からないです

他の体験記

先達の方が出されている体験記を読み漁りました。
(ググったらヒットしすぎてビビるくらいです。多分合格者全員書いてる)
どれも生々しいものばかりでとても参考になりますし、合格してから読み返しても納得感があります。
適当に読み漁っていたので、以下がすべてではないと思いますが、手元にあるものを並べておきます。(多分これ以外の無料の体験記もすべて読んでいる気がします)

注意点として、2020年にラボ環境の改変と、2021年末に試験の改変があったので、それを頭の片隅に入れておくこと。

終わってみての印象はADがほぼ攻略必須になったくらいで、それほど変わらず、引き続き昔の体験記も非常に参考になります。

タイムライン

  • ここまでの前提としては…
    • CTFのWeb問を解いていた CTFにおけるWebセキュリティ入門とまとめ - はまやんはまやんはまやんにあるくらいの知識量。一応一通り知ってはいるレベル
      • Web Exploitの知識はOSCPにかなり役立った。多分結構教科書スキップできた
    • Forensicもちょっとやってたが、それ以外は全然やってない
    • 資格はRISS, Comptia Security+, GCFEを持ってるくらい
    • VulnMachine系はHackTheBoxは数個やったことがある。流れや雰囲気は分かる。
  • 2021年9月 OSCPの30日ラボ
    • 全部英語で書いてある859ページの教科書はだいぶキツいです
    • ちょっと時間もあんまり取れず、この時はラボマシン2つくらいしか完了しなかったように思います
  • 2021年10月 HackTheBoxのVIP契約をしてRetiredマシンを50台ほど攻略
  • 2022年1月 もう一度、HackTheBoxのVIP契約をしてRetiredマシンを50台ほど攻略
    • なんだかんだHackTheBoxは安くて学習できますね…
    • ADさえなければ、これだけでOSCP受かるな
    • ADが試験に追加されるということで、TryHackMeのWindowsマシンとかやってたような気が(10台ほど)
  • 2022年2月 OSCP 1回目試験
    • 非ADマシンでとりあえず30点を獲得して、後はADラボだと思っていたが、ADラボが…解けない…ちゃんと勉強して2回目に臨んだら解けたので、自分の理解度不足だったっぽい(っぽいけど、解けてから振り返ると、こんなしょうもないことが原因で落ちて3万近く払ったと思うとモヤる)
  • 2022年3月 AD勉強しなおし
    • ボーナスポイントはやる気があまり起きなかったし、AD問題は解けるのが必須だったので、ちょっと別途勉強しておいた。ADへの理解がかなり深まった
    • いろいろBoxをやったりもしたが、以下2つがとても参考になったのでオススメ
    • ミミミミミッミ:Allsafe は本当に聖書のような本だった。情報Iに入れてもいいくらい参考になった
    • Practical Ethical Hacking - The Complete Course | TCM Security, Inc. 安いがとても参考になった。オススメ。
  • 2022年4月 OSCPの30日ラボ延長
    • とりあえず勉強はしまくってきたので30日間は全部ラボ攻略に費やした
    • 4/4に始めて5/1に全完しました。フラグが出せるラボを全部出さなくても全完判定されるので、それで満足してしまったので、実際2,3個残ってました
    • HackTheBoxと1つ1つは一緒ではあるが、色々な要素があって、攻撃者の気持ちがちょっと分かったというか、多層防御とかハーデニングとかの大切さと、どういう対策が気休め程度かの理解ができました。落ちた分の学習はできました
  • 2022年5月 HackTheBoxのランク上げ
    • OSCP試験日までちょっと時間があったのでHackTheBoxのランク上げしてました
    • Hackerまではそれほど大変ではなくて、Pro Hackerに上げるのはちょっと大変。ここまではやってればというか時間があれば行くけどエリート以降は結構大変そう。
    • 本当はEndgameがunlockされるGuruまで上げたい所だけれど、ChallengeとかでPwnとかReverseとかCryptoとかもやっていかないといけないみたいで、かなり大変そう
  • 2022年5月 OSCP 2回目試験
    • 無事合格しました!

…ん?お金?当然全部自腹です。
円安も相まって、総額計算するのも怖いですが。

試験について

  • 試験前にレポートのひな型作成していました。試験中にレポート日本語で作りながら解こうと思っていたので日本語で観点を先に書いておいていました
  • 受験時のこと
    • ボーナスポイント無かったのでAD完全攻略が必須だったので、ADから攻略開始してかなりひりつきました。1回目はADでやられましたが、今回は何とか攻略できましたが、気がついてみれば…という感じ。まあ、どれもそうか。あきらめずに頑張ることが大事
    • 他はproof.txtが2つ取れて、1つも解けないマシンが1つでした
    • なので5/6台を攻略して80点想定でFinishです
    • 20時間連続で攻略して、そのあと4時間寝て終わりました

この辺あまり具体的に書けないのでTry Harderとだけ。ラボで要求されていることができていれば問題ありません。