忍者ブログ
情報処理技術者試験の合格を目指す全受験者のための、1問1問「徹底解説」ブログです。単なる過去問の暗記ではなく、なぜその答えになるのかを本質的に理解できるよう解説します。書籍などでは学べない最新用語やトレンドを踏まえてご紹介します。

【情報セキュリティ】手がかりは暗号文のみ!最難関の解読法「暗号文単独攻撃」|情報処理問題1000本ノック

暗号を解読するハッカーや研究者は、自分が持っている「情報の手がかり」に応じて、いくつかの解読アプローチを使い分けます。その中で、最も手に入る情報が少ない状態からスタートする「暗号文単独攻撃」を攻略しましょう。

1. 【 問題 】:情報セキュリティ(暗号解読手法の分類)

【 問題 】 暗号解読者が用いるアプローチ(暗号解読攻撃)の分類に関する記述です。攻撃者が、解読したい暗号文(または同一の秘密鍵で暗号化された複数の暗号文のデータ)しか入手できていない状態において、暗号文の統計的な性質(文字の出現頻度の偏りなど)や暗号アルゴリズムの数理的な弱点だけを頼りに、平文や秘密鍵を割り出そうとする攻撃手法を何と呼ぶでしょうか?

① 暗号文単独攻撃(Ciphertext-Only Attack)
② 既知平文攻撃(Known-Plaintext Attack)
③ 選択平文攻撃(Chosen-Plaintext Attack)
④ 選択暗号文攻撃(Chosen-Ciphertext Attack)

2. 正解:

正解: ① 暗号文単独攻撃(Ciphertext-Only Attack)

3. 解説:情報が「暗号文だけ」という最も不利な状況からの解読

暗号文単独攻撃は、その名の通り、攻撃者の手元に「暗号文(単独)」しか存在しない状態での解読を指します。 平文(元の文章)が何なのか、どんな鍵を使ったのかというヒントは一切ありません。古典暗号の時代であれば、暗号文を大量に集めて「このアルファベットが一番多く使われているから、元の文字は英語で一番よく使う『e』だろう」と推測する「頻度分析」などがこの攻撃に該当します。現代の強力な暗号(AESなど)は、この暗号文単独攻撃では事実上解読できないほど複雑にデータをシャッフルするように設計されています。

【暗号解読攻撃の4大分類(攻撃者が持っている情報)】 ← ココが試験のポイント!

攻撃名攻撃者が「持っている情報」や「できること」解読の難易度
暗号文単独攻撃 いくつかの「暗号文」だけ。平文は1文字も分からない。 最も難しい(最難関)
② 既知平文攻撃 「過去のいくつかの平文」と、それが「暗号化された暗号文」のペアを持っている。 やや難しい
③ 選択平文攻撃 攻撃者が「任意の平文」を自由に暗号化させて、その結果(暗号文)を手に入れられる。 比較的容易
④ 選択暗号文攻撃 攻撃者が「任意の暗号文」を自由に復号させて、その結果(平文)を手に入れられる。 最も強力(攻撃者有利)

1. 理解のコツ: 「暗号で書かれた古文書の解読」を想像してください。
暗号文単独攻撃は、文字通り、異国の遺跡から見つかった「謎の暗号で書かれた粘土板(暗号文)」だけを渡され、「さあ、解読してくれ」と頼まれるようなものです。元の言葉が何語なのかも分からず、文字の並びのパターンだけをじっと睨みつけて法則性を探すため、解読の難易度はウルトラC級(最も難しい)になります。
・一方で、もし「この粘土板の一部には、当時の王様の名前(平文)が絶対に書かれているはずだ」という事前のヒント(一部の平文の割出し)があれば、それは②の既知平文攻撃へとステップアップし、解読が一気にラクになります。つまり、攻撃名についている言葉は『攻撃者が最初から手に入れているヒント(武器)』を表しています。今回は武器が「暗号文単独」しかないため、最も過酷な戦いになります。

2. 試験対策の視点: 情報処理安全確保支援士や応用情報技術者の午前試験では、これら4つの暗号解読アプローチの「定義の違い」が1枚の表のようにして非常によく問われます。問題文の中に「同一の秘密鍵で暗号化された複数の暗号文だけを用いて」「平文の情報は持たない」という記述があれば、ノータイムで暗号文単独攻撃を選択してください。
また、試験のひっかけパターンとして、選択肢に並ぶ「既知平文攻撃(すでに知っている平文とのペアを使う)」や「選択平文攻撃(攻撃者が選んだ平文の暗号文を作らせる)」の定義をあべこべにしてくるケースが非常に多いため、上の比較表を使って「攻撃者が何を自由にできる(知っている)のか」を確実に区別できるように整理しておきましょう。


4. まとめ

「平文の手がかりが一切ない中で、入手した暗号文のデータだけを分析して、元の文章や暗号鍵の特定を試みる解読手法」。これが暗号文単独攻撃です。暗号解読手法の分類の中で最も基礎であり、最も情報が制限された条件であることを、しっかり頭に叩き込んでおきましょう!


PR

【情報セキュリティ】1文字ごとに変換ルールを変える!「多表式暗号」|情報処理問題1000本ノック

かつて「解読不可能」とまで言われた暗号の歴史的名作。同じ文字であっても、その位置によって全く別の暗号文字に変換されることで、単純なパターン分析(頻度分析)を無効化する「多表式暗号」の仕組みを攻略しましょう。

1. 【 問題 】:情報セキュリティ(暗号化技術の歴史・基礎)

【 問題 】 クラシック暗号(古典暗号)の分類に関する記述です。平文を特定の文字数(ブロック)に分割し、ブロック内の文字の位置や使用する鍵に応じて、暗号化に用いる換字表(文字の置き換えルール)を1文字ごとに次々と切り替えることで、同じ文字であっても異なる暗号文字に変換されるように設計された暗号方式を何と呼ぶでしょうか?

① 多表式暗号(ヴィジュネル暗号など)
② 単表式暗号(シーザー暗号など)
③ ブロック暗号(AESなど)
④ ストリーム暗号(RC4など)

2. 正解:

正解: ① 多表式暗号

3. 解説:同じ「A」でも、場所によって「X」や「M」に変身する

多表式暗号(たひょうしきあんごう)は、文字の置き換えルール(換字表)を複数(多表)用意して、1文字処理するごとに表をパタパタと切り替えていく暗号方式です。
もし「Aなら常にCに変換する」というルール(単表式暗号)だと、暗号文の中に「C」が大量にあれば、「これは元の文の『A』だな」と文字の登場確率(頻度分析)から一瞬で解読されてしまいます。多表式暗号は、1番目のAはXに、2番目のAはMに……と規則を毎回変えることで、このパターン分析を完全に封じ込めます。

【古典暗号と現代暗号の分類】 ← ココが試験のポイント!

暗号の分類アプローチの特徴代表例・キーワード
多表式暗号(古典) 文字のブロック内で、1文字ごとに置き換え表(規則)を切り替える ヴィジュネル暗号、エニグマ
② 単表式暗号(古典) 1つの固定された置き換え表を使い、文字を一律にシフトする シーザー暗号(3文字ずらす等)
③ ブロック暗号(現代) 現代の共通鍵暗号。一定の固定長(128ビット等)ごとに複雑なビット演算を行う AES、DES
④ ストリーム暗号(現代) 現代の共通鍵暗号。データが届くごとに、1ビット/1バイト単位で順次処理する RC4、ChaCha20

1. 理解のコツ: 「合言葉を使った暗号文」で考えてみましょう。
・「APPLE」という言葉を暗号化するとき、合言葉(鍵)を「KEY」とします。
・1文字目の「A」は、鍵の1文字目「K」の規則(表)に従って変換します。
・2文字目の「P」は、鍵の2文字目「E」の規則に従って変換します。
・3文字目の「P」は、鍵の3文字目「Y」の規則に従って変換します。
・このようにすると、同じ「P」という文字が連続しているのに、適用される合言葉の文字(規則)が「E」と「Y」で異なるため、出来上がる暗号文字は全くの別物になります。平文を鍵の長さ(ブロック)に区切り、「文字の位置によって、暗号化のルールをカメレオンのように変化させる」のが多表式暗号の賢い仕組みです。

2. 試験対策の視点: 午前試験のセキュリティ(暗号学・歴史)分野において、概念を問う問題として出題されます。問題文の中に「ブロックに分ける」「ブロック内の各文字で(暗号化の)規則を変える」「複数の換字表を切り替える」という記述があれば、確実に多表式暗号を選んでください。代表的な暗号名である「ヴィジュネル暗号」という言葉がそのまま問題文に出てくることもあります。
選択肢にある「③ブロック暗号」と「④ストリーム暗号」は、コンピュータが普及した『現代』の暗号方式であり、ビット演算(XORなど)を用いるため、今回の「文字の置き換え規則を切り替える」という文脈であれば古典暗号である「多表式暗号」が正解となります。新旧の暗号の進化の歴史をセットで覚えておくことで、知識の幅がグッと広がります。


4. まとめ

「平文をブロック単位に区切り、その中の文字ごとに適用する暗号化ルール(換字表)を切り替えることで、文字の登場パターンの偏りを無くす暗号方式」。これが多表式暗号です。単表式暗号の弱点を克服し、かつて第2次世界大戦で使われた暗号機「エニグマ」の基礎にもなった重要な暗号理論として、しっかりと覚えておきましょう!


【情報セキュリティ】巧妙な「口実」で騙すソーシャルエンジニアリング!「プリテキスティング」|情報処理問題1000本ノック

セキュリティシステムをいくら強固にしても、人間の「うっかり」を突かれてしまえば元も子もありません。言葉巧みに架空の状況を作り出し、ターゲットから自発的に機密情報を引き出す心理攻撃「プリテキスティング」を攻略しましょう。

1. 【 問題 】:情報セキュリティ(ソーシャルエンジニアリングの手法)

【 問題 】 ソーシャルエンジニアリング(人間の心理的な隙を突く攻撃)の手法の一つです。攻撃者があらかじめ「社内のITサポート担当者」や「役員」「取引先の監査人」などの架空のキャラクターや設定(口実)を作り込み、電話やメールでターゲットに接触して、「今すぐ確認しないとシステムが停止する」といった架空のシナリオを信じ込ませることで、パスワードや重要な組織情報を自発的に開示させる攻撃手法を何と呼ぶでしょうか?

① ショルダーハッキング(肩越し盗み見)
② スカベンジング(ゴミ箱漁り)
③ トラッシング(不要物探索)
④ プリテキスティング(口実攻撃)

2. 正解:

正解: ④ プリテキスティング(口実攻撃)

3. 解説:作り込まれた「設定」で相手を信じ込ませる

プリテキスティング(Pretexting)の語源は、英語の「pretext(口実、言い訳)」です。ただ「パスワードを教えてください」と怪しく頼むのではなく、「現在、システム障害が発生しており、復旧のためにお客様のアカウントデータを確認する必要があります」といった綿密なストーリー(架空のシナリオ)を用意して、相手が疑う余地を無くしてから情報を盗み出すのが特徴です。

【間違いやすいソーシャルエンジニアリングの特徴】 ← ココが試験のポイント!

手法名攻撃の具体的なアプローチ対策(防御側)
① ショルダーハッキング PCの操作画面やATMの暗証番号入力を、文字通り「後ろから盗み見る」手法。 画面フィルターの装着、周囲の確認
②、③ スカベンジング(トラッシング) オフィスのゴミ箱から、廃棄された書類やメモを拾い集めて情報を盗む手法。 シュレッダーの徹底、メディアの物理破壊
プリテキスティング 偽の「口実・シナリオ」を作って、会話やメールで情報を引き出す手法。 身元確認の徹底、情報開示ルールの厳格化

1. 理解のコツ: 日常生活の「オレオレ詐欺(特殊詐欺)」を想像してください。
・ただ見知らぬ人から電話がかかってきて「お金を振り込んで」と言われても誰も応じません。しかし、「警察官」や「銀行員」になりすまし、「あなたのアカウントが犯罪に悪用されています。今すぐ手続きしないと口座が凍結されます」という『架空のシナリオ』を突きつけられると、人はパニックになり、相手を信じてしまいますよね。
・ビジネスの世界におけるプリテキスティングも全く同じです。攻撃者は事前にSNS等でその企業の組織図や上司の名前を調べ、本物そっくりの設定を作り込んでから電話をかけてきます。電話を受けた社員は「本当にうちのIT部の人なんだ」と信じ込んで、自らパスワードや顧客情報を口頭で喋ってしまうのです。この『騙すための事前の設定(口実)作り』がプリテキスティングの核心です。

2. 試験対策の視点: 午前試験のセキュリティ(ソーシャルエンジニアリング)分野では、問題文の中に「架空のシナリオ」「口実」「身元を偽って情報を引き出す」というキーワードがあれば、迷わずプリテキスティングを選択してください。
他のソーシャルエンジニアリング(ショルダーハッキングや物理的な盗み見、ゴミ箱漁り)は「物理的な行動」を伴うのに対し、プリテキスティングは「人間の心理や会話のやり取り(シナリオ)」を伴う点で明確に区別できます。また、システム的な防御(ファイアウォールなど)が一切通用しない攻撃であるため、対策としては「電話口でパスワードを教えないという社内ルールの徹底」や「一度電話を切り、社内名簿の番号へかけ直して相手の身元を確かめる(コールバック)」といった、人間の運用ルールの教育が最重要となる点も試験でよく狙われます。


4. まとめ

「ITサポートや役員などになりすまし、綿密に作り込まれた架空のシナリオ(口実)を用いて、ターゲットからパスワードや機密情報を騙し取る手法」。これがプリテキスティングです。システムを介さないソーシャルエンジニアリングの脅威として、言葉の意味をしっかり記憶に定着させておきましょう!


【情報セキュリティ】透明な罠でクリックを奪い取る!「クリックジャッキング」|情報処理問題1000本ノック

Webサイトで「動画を再生する」ボタンを押しただけのはずが、裏で勝手に有料サービスを契約させられていた……。そんな、Webブラウザの仕組みを悪用してユーザーの意図しない操作を強制させる「クリックジャッキング攻撃」を攻略しましょう。

1. 【 問題 】:Webアプリケーションの脆弱性と攻撃(クリックジャッキング)

【 問題 】 Webブラウザへの攻撃手法の一つで、透明なサイトを重ねて表示するなどで、クリックを誘う手法は、どれでしょう。

(ア) クリックジャッキング
(イ) ヘッダーインジェクション
(ウ) バッファーオーバフロー
(エ) バックグラウンド・インジェクション

2. 正解:

正解: (ア) クリックジャッキング

3. 解説:見えている画面の「裏側」を操作させる罠

クリックジャッキング(Clickjacking)は、Webページの上に、別のWebページ(攻撃者が用意した罠サイト)を透明な状態で重ね合わせて表示し、ユーザーが「見えているボタン」を押したつもりが、実は「透明な裏のボタン」を押してしまうように仕向ける攻撃手法です。

【間違いやすいWeb・システム攻撃手法の特徴】 ← ココが試験のポイント!

攻撃名攻撃のアプローチと特徴主な対策
(ア) クリックジャッキング 透明な別サイトをiframe等で重ね、意図しないクリックをさせる。 HTTPレスポンスヘッダーに「Content-Security-Policy (CSP)」や「X-Frame-Options」を設定し、他サイトへの埋め込みを禁止する。
(イ) ヘッダーインジェクション HTTPレスポンスのヘッダー部分に改行などを注入(インジェクション)し、不正なヘッダーや偽のボディを追加する。 入力値のサニタイズ(改行コードの除去など)
(ウ) バッファーオーバフロー プログラムが用意したメモリ領域(バッファ)の容量を超えるデータを送りつけ、システムを暴走・乗っ取る。 安全な関数の使用、セキュリティパッチの適用

※ (エ)の「バックグラウンド・インジェクション」は試験を惑わすための架空の用語です。

1. 理解のコツ: 「ガラステーブルの上に置かれた書類」を想像してください。
・あなたの目の前には、「おもしろ動画を再生する」というボタン(本物の紙)が置いてあります。あなたはそれを押そうと指を伸ばします。
・しかし、その手前には目に見えない「透明なガラスの板(透明な罠サイト)」が設置されており、そこには「高額商品の購入を確定する」というボタンが配置されています。あなた自身は動画を再生したつもりでも、実際にあなたの指が触れて(クリックして)いるのは、手前の透明なガラス板にある購入ボタンです。このように、「見かけの画面」と「実際の操作対象」をすり替えてクリックを誘うから、クリックジャッキングと呼ばれます。

2. 試験対策の視点: 基本情報技術者や応用情報技術者、情報処理安全確保支援士試験において、この攻撃の定義は頻出です。問題文に「透明な(サイト・画面)を重ねて」「クリックを誘う・強制する」というキーワードがあれば一発でクリックジャッキングを特定してください。
また、この問題は「対策」とセットで非常によく出題されます。攻撃者はHTMLの「iframeタグ」などを使って、正規のサイトを自分の罠サイトに部品として埋め込み、それを透明化します。これを防ぐためには、サーバー側からブラウザに対して「うちのサイトを他のサイトに埋め込ませないでね!」という命令(X-Frame-Optionsヘッダーや、CSPのframe-ancestorsディレクティブ)を返してあげる必要があります。この防御策まで覚えておけば、セキュリティ分野の得点源になります。


4. まとめ

「Webページの上に透明化した別のページを重ね合わせ、ユーザーが気づかないうちに意図しないボタンをクリックさせる攻撃」。これがクリックジャッキングです。埋め込みを拒否する「X-Frame-Optionsヘッダー」などの具体的なセキュリティ対策と紐づけて、しっかりマスターしておきましょう!


【情報セキュリティ】マネーロンダリングや不正を防ぐ砦!「KYC」|情報処理問題1000本ノック

ネットで銀行口座を作ったり、暗号資産の取引所のアカウントを開設するとき、免許証の画像を送ったりスマホで顔を撮影したりしますよね。あの「本当に実在する本人かどうかを厳格に確かめる手続き」を指す「KYC」について攻略しましょう。

1. 【 問題 】:ビジネス法務・セキュリティ(本人確認手続き)

【 問題 】 銀行などの金融機関における口座開設や、特定のネットサービスへの新規登録などの際、サービスの申し込みをしてきた相手が架空の人物やなりすましではなく、実在する本人であることを証明するために、公的な身分証明書などを用いて実施する「顧客身元確認」の手続きを何と呼ぶでしょうか?

① AML(Anti-Money Laundering)
② KYC(Know Your Customer)
③ MFA(Multi-Factor Authentication)
④ NDA(Non-Disclosure Agreement)

2. 正解:

正解: ② KYC(Know Your Customer)

3. 解説:「あなたのお客様を知る」という不正防止の基本

KYCは「Know Your Customer(顧客を知る)」の略称です。直訳すると少しフランクに聞こえますが、ビジネスや法律の世界では「厳格な本人確認手続き」を指す専門用語として定着しています。犯罪グループが偽名で口座を作って詐欺の振込先に使ったり、テロ資金の送金に悪用したりするのを防ぐために、企業や金融機関に義務付けられている非常に重要なプロセスです。

【間違いやすいビジネス・セキュリティ用語の特徴】 ← ココが試験のポイント!

略称正式名称と意味特徴・主な目的
① AML Anti-Money Laundering(アンチマネーロンダリング) 犯罪で得た資金の出所を隠す「資金洗浄」を防ぐための規制や対策全体のこと。
KYC Know Your Customer(ノー・ユア・カスタマー) 公的証明書等を使って、取引相手が実在する本人かを確認する具体的な手続き。
③ MFA Multi-Factor Authentication(多要素認証) ログイン時などに、パスワード+生体認証など複数の要素を組み合わせる認証技術。
④ NDA Non-Disclosure Agreement(秘密保持契約) 取引によって知り得た秘密情報を外部に漏らさないことを誓う、企業間の契約。

1. 理解のコツ: 「レンタルビデオ店の入会」を想像してください。
・お店で会員証を作るとき、「私は佐藤です」と口頭で言うだけではカードは作れません。必ず「免許証や保険証(公的証明書)」を提示して、店員さんが名前と住所をメモしますよね。これがKYC(本人確認)の最も身近な例です。
・これがネットの世界(FinTechやオンラインサービス)になると、郵送でやり取りする代わりに、スマホのカメラでマイナンバーカードを読み取ったり、自分の顔を右や左に傾けて撮影したりしてシステム的に本人確認を行います。これを電子的なKYCという意味で「eKYC(electronic KYC)」と呼び、現在のデジタルビジネスに欠かせないインフラ技術となっています。

2. 試験対策の視点: 午前試験のストラテジ系(ビジネス法務やFinTech関連)やセキュリティ分野では、問題文の中に「実在する本人かを確認」「顧客の身元確認」「公的証明書による確認」という記述があれば、迷わずKYC(またはeKYC)を選んでください。
選択肢によく並ぶ「① AML(マネーロンダリング対策)」は、KYCを実施する大きな『目的』の1つです。「資金洗浄を防ぐための枠組みはどれか」と聞かれたらAMLが正解になりますが、「そのために行う本人確認の手続き自体」を聞かれた場合はKYCが正解になります。この関係性を整理して覚えておくことで、引っ掛け問題に惑わされなくなります。


4. まとめ

「架空の人物へのなりすましや犯罪利用を防ぐため、公的証明書などを用いて取引相手の氏名・住所・実在性を厳格に確かめる手続き」。これがKYCです。近年トレンドの「eKYC」という言葉や、目的である「AML(マネーロンダリング防止)」とセットで正しく理解しておきましょう!


【情報セキュリティ】ハッシュ化された値を一瞬で逆引き!「レインボーテーブル攻撃」|情報処理問題1000本ノック

セキュリティのためにパスワードを暗号(ハッシュ化)して保存していても、そのハッシュ値を盗まれると、特殊な「逆引き辞書」を使って一瞬で元のパスワードが暴かれてしまう危険があります。この強力な解読手法「レインボーテーブル攻撃」を攻略しましょう。

1. 【 問題 】:パスワード解読手法(レインボーテーブル攻撃)

【 問題 】 不正アクセスなどによってシステムから流出した、ハッシュ化(復元不可能な一方通行の暗号化)されたパスワードを解読する手法の一つです。想定される平文のパスワードと、それをハッシュ化した値の対応関係を、あらかじめ大量に計算して特殊な構造のリスト(表)にまとめておき、それを用いてハッシュ値から元のパスワードを高速に逆引きして割り出す攻撃手法を何と呼ぶでしょうか?

① ディクショナリ攻撃(辞書攻撃)
② パス・ザ・ハッシュ攻撃(Pass-the-Hash)
③ ブルートフォース攻撃(総当たり攻撃)
④ レインボーテーブル攻撃

2. 正解:

正解: ④ レインボーテーブル攻撃

3. 解説:「事前に計算しておく」ことで本番の解読速度を極限まで高める

レインボーテーブル攻撃は、ハッシュ関数の「同じ文字からは必ず同じハッシュ値が生成される」という特性を突いた攻撃です。ハッシュ化されたデータは理論上は元に戻せませんが、攻撃者はあらかじめ「文字」から「ハッシュ値」を計算した膨大な辞書(これをレインボーテーブルと呼びます)を用意しておくことで、盗んだハッシュ値をその辞書と照合し、一瞬で元のパスワード(平文)を特定します。

【間違いやすいパスワード解読手法の特徴】 ← ココが試験のポイント!

攻撃名アプローチの特徴主な対策
① ディクショナリ攻撃 辞書にある単語(password、admin等)をその場でハッシュ化して試す 複雑なパスワードの設定
② パス・ザ・ハッシュ ハッシュ値を解読せず、ハッシュ値そのものを認証サーバーに送りつけて突破する 認証プロトコルの強化
レインボーテーブル攻撃 あらかじめ膨大な「平文とハッシュ値のペア」を計算・表にしておき、一瞬で逆引きする ソルト(Salt)の追加 / ストレッチング

1. 理解のコツ: 「暗号文と辞書」に例えてみましょう。
・システムに保存されている「ハッシュ値」は、元の文字が分からないようにグチャグチャにされた暗号文です。泥棒がその場で「文字を組み替えてハッシュ化して、目の前の暗号文と同じになるか試す」のが③の総当たりや①の辞書攻撃です。これだと本番の計算に莫大な時間がかかります。
・一方でレインボーテーブル攻撃は、泥棒が家にいる間に、あらかじめ「あらゆる文字」をグチャグチャの暗号文に変換した『本物の文字 ⇔ 暗号文』の巨大な対応表(辞書)を先に作ってパソコンに保存しておきます。そして、いざシステムからハッシュ値を盗んだら、その表を使って「このハッシュ値に対応する元の文字はこれだ!」とページをめくるだけで一瞬で答えを見つけ出します。この『本番前にあらかじめ作っておく巨大な逆引き表』を使うのが、レインボーテーブル攻撃の恐ろしさです。

2. 試験対策の視点: 午前試験の問題文で「あらかじめ計算してまとめた」「ハッシュ値から元のパスワードを逆引き(高速に解読)」という表現があれば、一発でレインボーテーブル攻撃だと見抜いてください。
また、試験ではこの攻撃の**「対策」**がセットで非常によく狙われます。この攻撃を防ぐための最も効果的な技術は「ソルト(Salt:塩)」の追加です。ユーザーが入力したパスワードの後ろに、システム側が自動生成したランダムな文字列(ソルト)をくっつけてからハッシュ化することで、同じパスワードであっても全く異なるハッシュ値になります。これにより、攻撃者があらかじめ用意していたレインボーテーブル(逆引き表)を完全に無効化することができます。


4. まとめ

「平文のパスワードとハッシュ値の対応関係をあらかじめ大量に計算してデータ化(表に)しておき、流出したハッシュ値から元のパスワードを高速に割り出す攻撃」。これがレインボーテーブル攻撃です。対策である「ソルトの付加」というキーワードとセットで、強固に記憶に定着させておきましょう!

【情報セキュリティ】パスワードの使い回しを狙う!「クレデンシャル・スタッフィング」|情報処理問題1000本ノック

「パスワードを使い回さないでください」とどのサービスでも口酸っぱく言われるのは、この攻撃が恐ろしく強力だからです。どこか1箇所から漏洩したログイン情報を使い、別の有名サービスへ「当てずっぽうではなく、本物のリスト」でログインを試みるサイバー攻撃「クレデンシャル・スタッフィング」を攻略しましょう。

1. 【 問題 】:情報セキュリティ(サイバー攻撃手法)

【 問題 】 別のWebサイトや企業から流出したユーザーのID(メールアドレス)とパスワードのリストを入手し、自動化ツールなどを用いて他の無関係なWebサイト(ECサイトやSNSなど)に次々と入力することで、不正ログインを試みる攻撃手法を何と呼ぶでしょうか?

① ブルートフォース攻撃(総当たり攻撃)
② リバースブルートフォース攻撃(逆総当たり攻撃)
③ クレデンシャル・スタッフィング(アカウントリスト攻撃)
④ パスワードスプレー攻撃

2. 正解:

正解: ③ クレデンシャル・スタッフィング(アカウントリスト攻撃)

3. 解説:本物の「漏洩リスト」で攻めるため、防御が難しい

クレデンシャル・スタッフィングは、日本語で「アカウントリスト攻撃」とも呼ばれます。文字通り、すでにどこかで漏れている本物の「アカウントリスト(認証情報)」をシステムに詰め込む(スタッフィングする)攻撃です。攻撃者はユーザーが複数のサイトで同じIDとパスワードを使い回している確率が高いことを知っているため、あらかじめツールを使って数万〜数百万件のリストを高速で自動入力し、不正ログインを成功させます。

【間違いやすいパスワード攻撃の特徴】 ← ココが試験のポイント!

攻撃名アプローチの特徴対策(防御側)
① ブルートフォース攻撃 1つのIDに対し、パスワードを「aaaa」「aaab」と総当たりする アカウントロック(回数制限)
② リバースブルートフォース 「Password123」などの定番パスワードを固定し、IDを総当たりする 同上 / 推測されにくいパスワード
クレデンシャル・スタッフィング 他所で「流出した本物のIDとパスワードのペア」を試す パスワード使い回し防止 / 多要素認証
④ パスワードスプレー 多数のIDに対し、1〜2個の定番パスワードを時間を空けて試す アカウントロックの回避を狙う攻撃

1. 理解のコツ: 空き巣の犯行を想像してください。
・ブルートフォース攻撃は、1つの家の鍵穴に、手当たり次第に作った1万本の合鍵をガチャガチャと試し続ける泥棒です。怪しすぎてすぐに警察(アカウントロック)に通報されます。
・これに対してクレデンシャル・スタッフィングは、「A町で盗んだ本物の鍵の束」を持って、別のB町にある家々の鍵穴に次々と差し込んでいく泥棒です。本物の鍵を使っているため、一発でガチャリと開いてしまいます。防犯カメラ(システム)から見ても、「一発で正しい鍵を開けて入ってきた、ただの住人」に見えるため、不正な攻撃だと見破るのが非常に難しいという凶悪な特徴があります。

2. 試験対策の視点: 午前試験では、「別のWebサイトから流出した〜」「リストを用いて〜」という文言があれば、迷わずクレデンシャル・スタッフィング(またはアカウントリスト攻撃)を選んでください。他の総当たり攻撃(ブルートフォース)との最大の違いは、「すでに流出した実在の組み合わせリストを使っている点」です。
また、対策についてもよく問われます。システム側での「同一IPからの連続ログイン試行の遮断」や「WAFによる機械的アクセスの検知」はもちろんですが、根本的な解決策はユーザー側に「パスワードの使い回しをやめさせること」、およびシステム側で「多要素認証(MFA)を必須にすること」です。仮にパスワードが合致しても、スマホへのワンタイムパスワード通知などで最後の砦を守ることができます。


4. まとめ

「他のサイトから流出した実際のIDとパスワードのリストを使って、別のサイトへのログインを自動で試みる攻撃」。これがクレデンシャル・スタッフィング(アカウントリスト攻撃)です。防御側からは正規のログインに見えやすいため、多要素認証(MFA)の導入やパスワード使い回し防止といった根本対策がセットで狙われる重要キーワードです。

【アルゴリズム】その場その場の最良を選んで突き進む!「貪欲法」|情報処理問題1000本ノック

迷路を解くとき、全体のマップを見ずに「とりあえず今、一番ゴールに近づけそうな道」を毎回選んで進む手法があります。このように、各ステップでその時点で最適なものを選び続けるアルゴリズムの設計手法「貪欲法(グリーディアルゴリズム)」を攻略しましょう。

1. 【 問題 】:アルゴリズムの設計手法(貪欲法)

【 問題 】 最適化問題を解くためのアルゴリズムの設計手法のうち、将来の計画や全体の影響を考慮せず、各ステップにおいて「その時点で最も有利(最良)」と判断される選択を繰り返すことで、最終的な解に到達しようとする手法を何と呼ぶでしょうか?

① 動的計画法(ダイナミック プログラミング)
② 貪欲法(グリーディアルゴリズム)
③ 分割統治法(ディバイド アンド コンカー)
④ 全探索法(ブルートフォースアタック)

2. 正解:

正解: ② 貪欲法(グリーディアルゴリズム)

3. 解説:遠い将来より「いま目の前のトク」を優先する

貪欲法(どんよくほう)は、問題をいくつかのステップに分割し、それぞれの段階で「局所的な最適解」を貪欲(グリーディ)に選び続ける手法です。計算量が非常に少なく、素早くそれなりの解(近似解)を導き出せるのが大きなメリットです。ただし、目先の最良を選び続けた結果、最終的な合計(全体最適)がベストになるとは限らないという弱点もあります。

【よくある4つの設計手法の比較】 ← ココが試験のポイント!

手法名アプローチの特徴代表的な応用例
① 動的計画法 問題を小さな部分問題に分け、計算結果を記録して再利用する ナップサック問題、最長共通部分列
貪欲法 各ステップで「その時点で最良」な選択を繰り返す お釣りの硬貨枚数の最小化、ダイクストラ法
③ 分割統治法 問題を小さく分解してそれぞれを解き、最後に組み合わせる マージソート、クイックソート
④ 全探索法 可能性のあるすべてのパターンを力任せに調べる パスワードの総当たり、暗号解読

1. 理解のコツ: 「レジでお釣りを渡すときの硬貨の選び方」を想像してください。
480円のお釣りを渡すとき、私たちは無意識に「その時点で使える一番大きな硬貨」を貪欲に選びます。
・まず、480円以下で最大の「500円」は使えないので、次に大きい「100円」を4枚選びます(残り80円)。
・残り80円から、最大の「500円」「100円」は無理なので「50円」を1枚選びます(残り30円)。
・残り30円から、「10円」を3枚選びます(残り0円)。
これで合計8枚という「最も枚数が少ない正しい組み合わせ」に一発でたどり着けます。このように、日本の硬貨(500, 100, 50, 10, 5, 1)のような絶妙なバランスのシステムでは、貪欲法で常に100点満点の正解(最適解)が出せます。
しかし、もし「1円、4円、6円」という特殊な硬貨しかない国で「8円」のお釣りを作る場合、貪欲法だと「まず最大の6円を1枚、残りは1円を2枚」で合計3枚になりますが、本当の正解は「4円を2枚」の合計2枚です。このように、条件によっては100点満点にならないこともあるのが貪欲法の特徴です。

2. 試験対策の視点: 午前試験では、「その時点で最良のものを〜」というフレーズが出たら確実に貪欲法(または決定論的アプローチ、ヒューリスティック)を選びましょう。また、ネットワークの最短経路を求める「ダイクストラ法」や、最小全域木を求める「プリム法」「クラスカル法」のベースになっている思想もこの貪欲法です。午後試験では、アルゴリズムの穴埋め問題として「今一番コストが小さい要素をソートして取り出す処理」などを選ばせる形でよく登場します。


4. まとめ

「将来への影響は一切考えず、各ステップにおいてその時点で最も有利な選択を積み重ねて解を導く手法」。これが貪欲法です。完ペキな正解(最適解)にならないこともあるけれど、とにかく早くてシンプルな答えが出せる実用的なアルゴリズムとして覚えておきましょう!


【情報セキュリティ】「いつもと違う」を機械学習で見抜く!「UEBA」|情報処理問題1000本ノック

巧妙化するサイバー攻撃や内部不正は、正規のIDとパスワードを使って「一見正常なアクセス」として行われるため、従来のセキュリティ製品では見破れません。ユーザーや機器の日常的な行動を学習し、その異常性から脅威を検知する「UEBA」の仕組みを攻略しましょう。

1. 【 問題 】:セキュリティ監視技術(UEBA)

【 問題 】 組織のネットワーク内におけるセキュリティ対策技術のうち、「UEBA(User and Entity Behavior Analytics)」の説明として、最も適切なものはどれでしょうか?

① あらかじめ定義された「攻撃のパターン(シグネチャ)」のデータベースと、実際の通信内容を照合することによって、既知のサイバー攻撃を検知・遮断する。
② ユーザー(User)やサーバー・端末などの機器(Entity)の日常的な行動パターンを収集・分析して正常な状態の基準を構築し、機械学習などを利用してそこから逸脱した異常な行動を検出する。
③ 従業員が利用しているPCなどの端末(エンドポイント)のログをリアルタイムに監視し、マルウェアの感染を検知した際に遠隔から端末をネットワークから隔離する。
④ 外部からのサイバー攻撃の標的となる未修正の脆弱性をあらかじめ洗い出すために、既知の攻撃手法を模倣した疑似攻撃をシステムに対して実際に仕掛ける。

2. 正解:

正解: ② ユーザー(User)やサーバー・端末などの機器(Entity)の日常的な行動パターンを収集・ basin分析して正常な状態の基準を構築し、機械学習などを利用してそこから逸脱した異常な行動を検出する。

3. 解説:「犯人の型」ではなく「普段の姿」を覚える

これまでの多くのセキュリティ対策は、「ウイルスや攻撃のルール(シグネチャ)」を登録しておき、それに一致するものを悪とみなす方法(ルールベース)でした。しかし、この方法では「盗まれた本人のアカウント」を使った内部不正や、未知の攻撃には対応できません。そこで登場したのがUEBAです。攻撃の型を覚えるのではなく、ユーザーやPCが「普段どんな動きをしているか」を機械学習で学習(ベースライン化)し、そこから外れた「いつもと違う怪しい動き」を検知します。

【従来型セキュリティとUEBAの決定的な違い】 ← ココが試験のポイント!

対策のアプローチ検知の仕組み監視の対象得意なこと/防げる脅威
従来型(IDS/IPS等) 「悪意ある通信」のパターン一致(シグネチャ) ネットワーク通信全体 既知のマルウェアや、定番のサイバー攻撃の遮断。
UEBA 「普段の行動」からの逸脱(プロファイル・機械学習) ユーザー(User)および機器(Entity:サーバー・端末) 正規IDを悪用した内部不正、アカウント乗っ取り、未知の攻撃の検知。

※ ③は EDR(Endpoint Detection and Response)の説明です。
※ ④は ペネトレーションテスト(侵入実験)の説明です。

1. 理解のコツ: 「オフィスの警備員さん」に例えてみましょう。
・①の従来型は、「不審者のブラックリスト(手配書)」を持って立っている警備員です。手配書に載っていない人や、社員証(正規ID)を持った人はそのまま通してしまいます。
・これに対して②のUEBAは、社員全員の顔と普段の行動を完璧に覚えている、超ベテランの警備員です。たとえ本物の社員証を持った人が入ってきても、「普段は経理部で定時に帰るはずのAさんが、なぜか深夜2時に、一度も入ったことがない開発部のサーバー室にアクセスして、大量のデータをダウンロードしている。これは絶対に何かがおかしい!」と、その『行動の不自然さ』から異変を察知します。これがUEBAの機械学習による行動分析です。
2. 試験対策の視点: 安全確保支援士などの午前試験で「UEBA」を問う問題が出たら、アルファベットの意味をそのままヒントにしてください。UはUser(人)、EはEntity(機器やファイルなどのモノ)、BはBehavior(行動)、AはAnalytics(分析)です。問題文の中に「行動パターン」「プロファイリング」「機械学習」「普段と異なる」「異常な行動」といったフレーズがあれば、一発でUEBAを特定できます。また、SIEMと連携して動作するソリューションとしてもよく長文問題の事例に出てくるため、その役割を正確に押さえておきましょう。


4. まとめ

「既知の攻撃パターンに頼るのではなく、ユーザーや機器の日常的な行動を機械学習で学習し、そこから逸脱した『いつもと違う不自然な動き』から脅威や内部不正をあぶり出す技術」。これがUEBAです。ゼロトラスト環境における「継続的な監視」の要となるトレンド技術ですので、他のログ監視技術と区別して覚えておきましょう!


【情報セキュリティ】状況に応じて権限をリアルタイムに変える!「動的アクセス制御」|情報処理問題1000本ノック

「一度認証をパスすれば、どこからでも全てのデータにアクセスできる」という時代は終わりました。アクセス環境やデバイスの状態をリアルタイムに監視し、状況に応じて権限を変化させる「動的アクセス制御(動的認可)」の仕組みを攻略しましょう。

1. 【 問題 】:アクセス制御技術(動的アクセス制御)

【 問題 】 情報システムにおけるアクセス制御(認可)の仕組みのうち、「動的アクセス制御(Dynamic Access Control)」の説明として、最も適切なものはどれでしょうか?

① 社員や管理者といった組織内の「役割(ロール)」に基づいて権限を割り当て、ユーザーがどの役割に属しているかによってアクセス可否を決定する。
② データの所有者が、自身の判断で他のユーザーに対してそのデータへの読み書き権限を任意に付与したり剥奪したりする。
③ アクセスを要求してきたユーザーの場所(IPアドレス)、日時、使用デバイスのOSバージョンやセキュリティ状態などの「コンテキスト(状況情報)」をリアルタイムに評価し、アクセスの可否や権限の強さをその都度変化させる。
④ ユーザー名やパスワードの認証に加えて、指紋や顔認証などの生体情報を組み合わせることで、強固な本人確認を行う。

2. 正解:

正解: ③ アクセスを要求してきたユーザーの場所(IPアドレス)、日時、使用デバイスのOSバージョンやセキュリティ状態などの「コンテキスト(状況情報)」をリアルタイムに評価し、アクセスの可否や権限の強さをその都度変化させる。

3. 解説:「いつ、どこから、どんな状態で」を見極める

従来のアクセス制御の多くは、あらかじめ設定されたユーザー情報や役職に基づいて権限が決まる「静的」なものでした。しかし、リモートワークやクラウド利用が当たり前になった現代では、それだけではセキュリティを守りきれません。そこで登場したのが動的アクセス制御です。アクセスを試みた『その瞬間』の周囲の状況(コンテキスト)を総合的に判断して、権限をコントロールします。

【静的アクセス制御と動的アクセス制御の比較】 ← ココが試験のポイント!

制御のタイプ主な判断基準メリット弱点・リスク
ロールベース(静的) ユーザーの「役職」や「所属」 初期設定や管理がシンプル アカウントが乗っ取られたり、社外の危険な端末からアクセスされたりしても防げない。
動的アクセス制御 場所、時間、端末の状態、接続経路など(リアルタイム) 「社外からのアクセス時は重要データの閲覧を禁止する」「OSが古い端末は拒否する」といった柔軟な防御が可能。 評価システムが複雑になり、設計・運用の負荷が高まる。

※ ②は「任意アクセス制御(DAC: Discretionary Access Control)」の説明です(同じDACという略称ですが、動的アクセス制御とは全く別物なので混同に注意してください)。
※ ④は「多要素認証(MFA)」の説明であり、アクセス制御(認可)ではなく、本人確認(認証)の技術です。

1. 理解のコツ: 「オフィスのセキュリティゲート」に例えてみましょう。
・①の静的アクセス制御(ロールベース)は、「ゴールドカードの社員証を持っていれば、夜中だろうが、どれだけ怪しい格好をしていようが、いつでも重要書類室に入れる」というルールです。
・これに対して③の動的アクセス制御は、たとえゴールドカードを持っていても、「夜中の2時に、なぜか海外のIPアドレスから、しかもウイルス対策ソフトがOFFになっているパソコンでアクセスしてきたから、今は怪しいと判断して閲覧をブロックする(あるいは追加の認証を求める)」という、臨機応変なガードマンのような動きをします。この『状況を見てその都度判断を変える』のが、動的(ダイナミック)たる所以です。
2. 試験対策の視点: 近年の情報処理安全確保支援士などの試験では、「ゼロトラスト(何も信頼しない)」というセキュリティ思想がトレンドとなっています。このゼロトラストを実現するための具体的な技術として、この動的アクセス制御や「ABAC(属性ベースアクセス制御)」が非常によく狙われます。問題文の中に「コンテキスト」「リアルタイムに評価」「デバイスのセキュリティ状態」「場所や時間に応じて」といったフレーズがあれば、動的アクセス制御のサインです。他のアクセス方式との言葉の定義の違いをクリアにしておきましょう。


4. まとめ

「ユーザーの役職などの固定情報だけでなく、アクセス環境(場所・時間・端末の安全性など)のコンテキストをリアルタイムに評価し、アクセスの可否や認可レベルを動的に変更するセキュリティ技術」。これが動的アクセス制御です。現代の境界防御に頼らない最先端のセキュリティを支える重要キーワードとして、しっかり記憶に刻んでおきましょう!