資格OSCP合格へのアドバイス

概要

本記事では資格OSCP合格に必要なことについて記載する。

OSCPとはOffensive Security Certified Professionalの略であり、ペネトレーションテスト(ハッキング)の資格である。

本試験の特徴はハッキングの実技試験であり、ペーパーテストではない。

MediumのブログにてOSCPの概要について紹介しているため、こちらをまずは参照してほしい。

OSCPは高難易度のセキュリティ資格であり、海外での就職にはもちろん、日本でも高いレベルのセキュリティ業務に就く際は求められることがある。

そのため本資格を受験する人は国内でも増えてきたが、合格する人は多いとはいえない。

その理由として、本資格を合格する上で何が必要かわかりにくいという問題点がある。

最も多いのは、とりあえず受講し、教科書の内容を覚え、いざ試験を受けてみたが、手も足も出ず敗退......その後何が悪かったのかわからないまま諦めるパターンだろう。

また、練習期間を含めた値段が15万近くで、試験も丸2日間必要という点が再試験を億劫にする。

本記事では受講生へのアドバイスとして「資格を受けるための前提条件」「練習時に求められること」「資格のテクニック」の3つを紹介する。

実際に申し込み、教育を受け、合格して初めて気づいたことも多いため、これらのアドバイスはこれからの受験生には役に立つと信じている。

画像1

※注意:本記事には具体的な試験問題の解き方、解答に関する記述はありません。

資格を受けるための前提条件

Mediumのブログには「前提条件はない」と記載したが、これは試験に申し込むのに前提条件がないだけである。

全ての高難易度資格がそうであるように、OSCPにも前提となる知識・技能が存在する。

私が想定する合格する上での前提条件は以下だ。

・情報処理安全確保支援士相当の知識

・サーバ・プロトコルの基本的な運用・設定技能

・多数の言語に対するプログラミングスキル

・研究・調査スキル

・多くの自由時間

一つ一つ説明しよう。

・情報処理安全確保支援士相当の知識

OSCPはハッキングの実技試験である。そのためセキュリティの知識というのは前提条件になる。

OSCPの教科書や課題では、各用語や仕組みを解説しない。知っていることが大前提で内容が進んでいく。

もしあなたが情報処理安全確保支援士を知らない/合格したことがないなら、まずそこから目指すことを強くお勧めする。

情報処理安全確保支援士はセキュリティエンジニアとして知っておくべき基本的なことが学べる。ハッキングに必要な最低限の知識は、多くがここに詰まっているといっても過言ではない。逆に基本的な知識なく、技能だけ会得していっても必ず早い段階で躓くことになる。

そのため、まずは情報処理安全確保支援士の教科書を開き、それらの内容について十分理解しているかを確かめることをお勧めする。

・サーバ・プロトコルの基本的な運用・設定技能

ハッキングの実技試験である以上、自身で様々な設定・操作を行う必要がある。

サーバ等の起動・設定・停止はもちろん、各プロトコルの利用方法も知っておく必要がある。

特にDNS、FTP、HTTP、IMAP、LDAP、SNTP、POP、SMTP、SSH、RDPについては基本的なコマンドを抑えておこう。

また、これらのプロトコルを主に調査・攻撃することから、プロトコルからどのような情報が得られるのか、危険な設定とは何か等の知識があるとより良い(OSCPの教科書ではほとんど教えてくれない)。

当然だが、LinuxやWindowsのコマンド・仕様については、どれだけ知識があっても困ることはない。これらも教科書ではほとんど触れられないので、様々な技術書からあらかじめ知識を得ておこう。

・多数の言語に対するプログラミングスキル

OSCPでは既存のexploitコードを理解し編集するスキルが求められる。

1からexploitコードを作成することは求められないが、既にあるコードを現在の環境にマッチするように、細部を修正できるスキルが必須だ。

(例えば、ある脆弱性を攻撃するexploitコードが公開されているが、それを利用しようとしてもサイトの認証処理が邪魔してうまく動かない。だからexploitコードに認証処理を追加する....など)

この既存のexploitコードは様々な種類があり、もちろん言語も多種多様だ。頻出なのはC、python、PHPだが、それ以外の言語も十分あり得る。

各言語を完全にマスターする必要はないが、少なくとも内容を見れば理解でき、リファレンスを見れば簡単な機能を実装できる程度のスキルは求められる。

OSCPの教科書ではプログラミングスキルについての指導は一切ないため、各個人で事前にスキルアップしておく必要がある。

プログラミングの経験がないという人がいたら、本資格に挑戦する前に何か1つの言語の教科書をマスターし、簡単なアプリ開発程度から始めることをお勧めする。

ここから先は

6,799字

¥ 300

この記事が気に入ったらサポートをしてみませんか?