mimichanのブログ

セキュリティに関する内容を気の向くままに

OSCP合格体験記(2022年 AD環境あり)

はじめに

OSCPに合格したので体験記を記載します。これから受ける方にとって少しでも助けとなれば幸いです。OSCPの概要は割愛いたします。

www.offensive-security.com

 

事前知識

受講前の私の知識は以下の通りです。

  • 脆弱性診断やインフラエンジニアとしての実務経験あり
  • HackTheBox経験あり
  • CEH、ネスペ、セキュスペ、LPIC3などを取得済み

HackTheBoxでGuruまで取得しておりますが、結構ヒントを見てますし、完全に自己流なので抜け漏れが多い状態です。また、普段から業務でLinux等の利用も慣れているので、初学者ではないです。

www.hackthebox.com

全体スケジュール

申し込みから受験までの全体スケジュールは以下の通りです。

  • 2021年12月 申し込み
  • 2022年1月 コース開始
  • 2022年7月 チャレンジ攻略開始
  • 2022年8月 ラボ攻略開始
  • 2022年10月 受験

申し込み

私はイエラエアカデミー経由で申し込みました(弊社にスポンサーになってもらいました。いつもありがとうございます!)。私が申し込んだ際はライセンスのみ提供パターンとライセンスに加えて手厚いサポート付きパターンの2つがありましたが、私はHackTheBoxでマシン攻略に慣れていたこともあり、自力でできそうだったので1年間のライセンスのみのパターンで申し込みました。申し込み後すぐにライセンスを発行いただいて、好きなタイミングで開始という流れでした。

gmo-cybersecurity.com

コース開始

きりがいいので1月から開始しました。1年かけてゆっくり取ろうと思ってたので、まずはテキストを一通りチラ見して全体像を把握しました。その結果、これならいけそうっていう謎の自信が生まれたので安心しました。
しばらく業務が忙しくて全くやる気が出なかったので、落ち着いてきた半年後になってようやくまともに始めました。

チャレンジ攻略

チャレンジは1か月程度で一通りクリアしました。数問程度は意図がわからない問題もありましたが、基本的にはテキストを読めば解けるので、ちょうどいい難易度だと思います。意図がわからない問題は公式のdiscordにヒント(たまに答え)がちりばめられているので、拾い集めて完了しました。

また、チャレンジの内容はあとから自分で見てわかりやすいようにいわゆるチートシートとしてまとめることをお勧めします。私は公式でもお勧めしているCherryTreeを使ってまとめました。使うまではなんでこんなにみんなが使っているんだろうと思ってましたが、実際に使ってみるとツリー形式で管理しやすいし、HTMLで出力すれば見栄えもいいので良いツールに出会えたと今では思います。

1点問題があったのは、WindowsにインストールしたりHTMLで出力したりするとアンチウイルスソフトが発動することが多々あるので、会社PCでの利用は厳しかったです。結局、自宅PCで除外フォルダを作ったり仮想マシンのKali Linuxにインストールされているものを利用しました。

ラボ攻略

チャレンジ完了後、本格的にラボの攻略を開始して、最終的に55台のマシンを攻略しました。もう少しいけそうでしたが、ラボ内のとあるネットワークが動作が重くストレスがたまるだけだったので、そこで打ち切ることにしました。
当初はボーナスポイントの条件である30台の攻略が最低目標であり、実際に進めてみても30台は解けるくらいの実力がないと厳しそうな気もしました。30台攻略後はOffSecが公開しているマシンの攻略数と合格率のグラフを確認して50台以上取ればほぼ受かりそうだったので、50台を目標として進めました。

www.offensive-security.com

ラボの攻略はどのマシンから開始してもいいですが、ペネトレ初心者の方は結局何から始めればいいかわからないと思います。公式ガイドに11台のヒント付きのマシンがあるので、そこから開始して雰囲気をつかめばいいと思います。具体的な手順が詳しく書いているのでおすすめです。今考えても正解だったと思います。

help.offensive-security.com

現バージョンの得点源であるAD攻略に関しては、テキストやラボとは別に一部界隈ではMimikatzのバイブルとなっている「ミミミミミッミ」を読みました(いっけなーい!遅刻遅刻!)。表紙に抵抗があってなかなか購入に踏み出せませんでしたが、中身は素晴らしいので躊躇されている方はぜひどうぞ。

allsafe.booth.pm

また、ラボが全然解けないって方は少し考えた後にdiscordでヒントを見るのは私は全然ありだと思います。結局マシンを攻略することが重要なのではなく、マシンの攻略をするために何が必要だったのか、何が悪かったのかがわかればいいと私は思うので、ヒントを見た後になぜ解けなかったのかを考えればそれで十分です。あまりにも解けないとやる気なくすと思います。

結局1年間のライセンスで申し込みましたが、実際に触っていた時間は3か月なので、十分に時間を取れる方は3か月コースでもいいかもしれません。合計で200-300時間くらいかかりましたのでご参考までに。未経験者はもう少しかかると思います。

試験申し込み

申し込み周りで少しごたついたのでその内容を記載します。

  • 試験開始時間
  • プライマリメールアドレスの変更

試験開始時間はAmerica/New_York時間での申し込みなので慣れませんでした。実際に失敗した話として、日本時間とAmerica/New_York時間を変換してくれるサイトを利用していたのですが、私が見ていたサイトはサマータイムに対応しておらず、思っていた時間より実際の開始時間は1時間早かったというミスをしましたサマータイムとかよくわからない)。気が付いたのは試験前日で、気が付けたきっかけは、試験前にOffSecから案内メールが来るのですが、私が試験開始と思っている時間のちょうど73時間前(3日と1時間)で中途半端でなんかおかしいと思って調べたら発覚しました。遅刻したらキャンセル扱いなので事前に気が付けてよかったです。

もう1点ごたついた点として、試験時にOffSecからメールが届くのですが、試験に利用するPCでそのメールを受け取れない環境で申し込んでしまい、試験時には利用するPC以外のデバイスの利用は不可なので、メールアドレスを変更する必要がありました。変更手順は公式サイトのFAQに書いているので問題ないですが、試験申し込みをした後にメールアドレスを変更したので、どちらのメールアドレスに届くのかとても不安でした。試験のリスケをすれば問題ないだろうと思いリスケしましたが、通知メールは古いメールアドレスに届き不安が増すばかり。結局OffSecにメールで問い合わせて問題ないよと回答いただけたのでようやく安心しました。サポートはとてもいいので、気軽に問い合わせたほうがいいと思います。英語に自信がない方も翻訳ソフトを使ってそのまま送れば普通に通じますのでご安心ください。1回やってみればこんなものかと思います。

help.offensive-security.com

試験当日

実績は以下の通りです。試験中はずっとお気に入りの音楽を流しており、リラックスした状態で臨めたと思います(繚乱!虹ヶ咲!)

日時 内容
10/19 7:45 プリチェック
10/19 8:15 試験開始
10/19 13:30 AD1台目攻略完了
10/19 14:30 AD2台目攻略完了
10/19 15:30 AD3台目攻略完了
10/19 16:00 マシン1台目local.txt
10/19 18:00 マシン2台目local.txt
10/20 1:00 マシン3台目local.txt
10/20 7:45 試験終了
10/20 11:00 仮眠
10/20 23:00 レポート提出

まずは試験開始前に身分証明と部屋の中をカメラでチェックしてもらう場面があります。私はノートPC内蔵のカメラで挑戦しました。もちろん外付けのカメラをつけたほうがいいと思いましたが、事前にシミュレーションしたところ部屋中を写せるくらい可動域があったのでまあいいかと思ったからです。ですが試験時にやってみたら机の下を映す場面があって、長さが足りずにディスプレイケーブルが抜けるプチハプニングがありました。特に問題はありませんでしたが私みたいにいけそうと思っている方も念のために外付けデバイスを用意することをお勧めします。

その後詳しくは書けませんが少しごたついて、試験開始時間から15分後に試験を開始しました。困ったことがあれば監督官の方に気軽に聞くことをお勧めします。とてもやさしく対応してくれるので安心できました。

マシンの攻略はすべてのサーバにポートスキャン等を仕込んだ後にAD環境から始めました。1台目を攻略するのに手間取ってしまい少し焦りましたが、横展開は自信があったこともありすんなり攻略できました。チャレンジやラボのADをすんなり攻略できる方なら問題ないレベルです。

AD攻略後は残り3台のマシンの攻略に移行しました。rabbit holeにはまって時間のロスはありましたが、いずれもlocal.txtの取得はそれほど難しくありませんでした。HackTheBoxでいうところのMediumレベルが解ける方なら全く問題ないです。ところが自信のあった権限昇格が一台もできずとてもショックです…。怪しいところは何箇所か見つかりましたが、なぜかいずれも刺さらず無駄に時間を浪費しました。あきらめも肝心ですね…。

最後にスクショどりに漏れがないことを確認後、もう一度その手順でフラグが取れることを確認して試験の終了を迎えました。結局24時間一睡もしませんでした。なお、私が勘違いをしていたのですが、試験後のレポートを書く時間は監視されないのですね。まだ終わったわけではないのに解放された気分になりました。

8時間くらい寝ようと思いましたが、目がさえて2時間しか眠れずレポートの作成に取り掛かりました。レポートは12時間程度で書き終え、残り10時間の余裕をもって提出しました。レポートは試験時にCherryTreeでひな形を作りながらやっていたので、それほど苦戦はしなかったです。

格通

10営業日以内に来るとのことでしたが、レポートを提出してから1.5日程度で通知が来ました。合格点に達している自信はありましたが、権限昇格が全然刺さらなかったショックがあったので、寝起きにメールを見た瞬間に喜びのあまり心拍数が跳ね上がりました。もう一度受けるのは辛かったので、1回で合格できてよかったです。

今後の目標

業務で脆弱性診断を実施してますが、GIAC関連の資格が要件として出てくることが増えてきたので、GPENを取りたいと思ってます(スポンサー様お願いします!)。OSEPも取りたいですが、業務をしながらOffSecの資格は結構しんどいので、気力が充実したときに頑張るかもしれません。

おわりに

最後まで読んでいただきありがとうございました!OSCPの体験記を書いている方は多いので、かぶっている部分は多いと思いますが、少しでもお役に立てれば幸いです。