PortSwigger社のBurp Suite Certified Practitionerに合格したのでその記録です。
筆者の背景・受験の理由
診断業務に従事しつつ、たまに研修講師を続けています。
受験のきっかけとしては、年度明けで受験計画に隙間ができたことと、しばらく後に大きめのWebシステムと相対する可能性があるという噂を聞いたからです。Burp Suiteは『情報セキュリティサービスにおける技術及び品質の確保に資する取組の例示』でWebアプリケーション診断のツールとして紹介されており、一定の水準で使えることを示せるのはある程度の安心感をもたらすかもしれません(ライセンスを購入して要員をアサインすれば誰でも使いこなせるものでもないですし)。
Burp Suite Certified Practitionerとは
Burp Suite Certified PractitionerはPortSwigger社が提供する Burp Suiteを使用したWebアプリケーション診断に関する資格です。試験を受けるためにはBurp Suite Professionalのライセンスが必要ですが、試用版でも問題ないという噂もあります。要は試験終わりにプロジェクトファイルをアップロードできれば良いのかと思います。
試験の内容としては、制限時間4時間のなかで2つのWebアプリケーションを攻略します。各Webアプリケーションは下記の3ステージを順に攻略する必要があります。
- ユーザーアカウント取得
- 管理者権限取得
- ローカルファイル読み出し
スケジュール
以下のスケジュールで進めました。再受験のクールタイムがないので落ちたことにキレて何度も挑戦するという失敗をしました。しっかり勉強してから臨むとよいです。
- 3/28~4/7:ラボの270台すべて解き終わる
- 4/7夜:1回目不合格(アプリ1:3/3、アプリ2:2/3)
- 4/8夜:2回目不合格(アプリ1:3/3、アプリ2:1/3)
- 4/9朝:3回目で合格(アプリ1:3/3、アプリ2:3/3)
- 4/10夜:試験終了から29時間後に正式な合格通知
勉強方法
公式が勧める試験の準備では、以下の4つのステップが推奨されています。
- 各カテゴリの実務者レベルから選定された23のラボを完了する
- 特に重要な8つのラボを完了する
- ミステリーラボ(脆弱性の内容が伏せられたLab)のチャレンジを5つクリアする
- 模擬試験を受ける
私はまずLabを270台すべて解きました。知っている脆弱性は飛ばしつつ、知らない脆弱性はテキストに戻って理解を深める形で進めました。その後ミステリーラボは最低限の5つだけ、模擬試験は用意された2つを解き受験に進みました。本来であれば自分でpayloadをまとめてcheatsheetを作成するべきですが、今回はGitHubに転がっているcheatsheetを使いました。
試験で問われる内容についてだけ知りたい人は模擬試験のwalkthroughがネットに転がっているのでそれを読むと一番雰囲気が分かります。受験予定の方は何も見ずに頑張りましょう。
試験の準備
試験前の準備に際してはBurp Suite Professionalのライセンス、身分証の画像、カメラ・マイクが必要になります。試験の購入についてはUS Dollar、Euro、British Poundから選択できるので、為替レートが良いものを選びましょう。
試験の監視システムでは、規約の同意、身分証の画像アップロード、カメラ・マイク・画面の共有を行います。1点注意点として、マルチディスプレイ環境では監視用Webアプリケーションがとんでもなく重くなる可能性があります。私は普段5画面(4K×2、FHD×2、WUXGA×2)を使用しており、カメラも2K画質です。合計するとフルHDの12枚相当ですね。初回受験時、何も考えずに共有を開始した途端、PC全体の動作が重くなり何も動かなくなりました。windowsキーすら反応しなくなり、結局電源ボタン長押しして再度起動し、その後はノートPCの1画面のみで受験することにしました。
試験のコツ
ネタバレにならない程度に役立ちそうな情報を列挙します。
- 身分証の画像を事前に準備し、プロジェクトファイルを保存する設定にしてから試験を開始する
- ステージが3つに分かれていることからある程度脆弱性のメタ読みができる
- とりあえずActive ScanやIntruder、sqlmap等の自動化ツールの類は裏で回しておくとよい
- 勘に頼りすぎず、固執せず、脆弱性一覧に立ち返ること
- 試験には顧客の機微情報が含まれないため、(Burp )AIにリクエストとレスポンスを丸投げすることもできる
- 6個の脆弱性をすべて攻略する必要があるので頑張る
試験結果・感想
2回も落ちたので情けないですね。勉強を一通り終えた後、cheatsheetなどの準備もせず「まあいけるやろ」の精神で受験し不合格、さらに翌日業務終了後に「まあもう一回受ければいけるやろ」で再度不合格、自分の不甲斐なさにキレつつ20分後に再度受験を開始し合格、という流れでした。しっかりと勉強して、ペイロードのまとめ等準備をしっかり行い、しっかり睡眠を取ってから受験に臨むことをお勧めします。
試験は散々で、ロイホのメニューを見ながら失ったものの大きさを噛み締めていますが、WebSecurityAcademyのラボは有用だったと思います。Web系の脆弱性について体系的に学ぶことができ、Burp Suiteの開発元なのでツールを扱うベストプラクティスや便利な拡張機能についても学べます。OSWAやSecuriSTと比較すると安価に手を動かすことができるので、Web診断を始める学生や新人には一番おすすめかなと思いました。
今後の予定
offsec