エクスプロイトコード|情報処理安全確保支援士試験 令和2年 秋期午前Ⅱ試験 問3

出典:令和2年秋期 午前Ⅱ 問3 分野:セキュリティ / 情報セキュリティ
エクスプロイトコードの説明はどれか。
  • ア:攻撃コードとも呼ばれ,ソフトウェアの脆弱性を悪用するコードのことであり,使い方によっては脆弱性の検証に役立つこともある。
  • イ:マルウェア定義ファイルとも呼ばれ,マルウェアを特定するための特徴的なコードのことであり,マルウェア対策ソフトによるマルウェアの検知に用いられる。
  • ウ:メッセージとシークレットデータから計算されるハッシュコードのことであり,メッセージの改ざん検知に用いられる。
  • エ:ログインのたびに変化する認証コードのことであり,窃取されても再利用できないので不正アクセスを防ぐ。
解説

エクスプロイトコードは、ソフトウェアの脆弱性を悪用するためのスクリプトやプログラムです。

脆弱性とは、ソフトウェアの弱点や欠陥のことです。エクスプロイトコードは、その弱点を実際に突くことで、不正な動作を再現します。

使われ方 内容
攻撃目的 攻撃者が脆弱性を悪用し、不正アクセスやマルウェア感染などに利用する
検証目的 研究者や開発者が、脆弱性の有無や影響を確認するために利用する

エクスプロイトコードは、使い方によって意味合いが変わります。攻撃者が使えば危険な攻撃コードになりますが、セキュリティ担当者が使えば、脆弱性を検証し、対策につなげるための実証用コードにもなります。

また、複数のエクスプロイトコードをまとめ、さまざまな脆弱性を攻撃できるようにしたツールをエクスプロイトキットといいます。これは実際の攻撃に悪用されることがあります。

つまりエクスプロイトコードは、「脆弱性を実際に悪用できることを示すコード」です。攻撃にも検証にも使われるため、取り扱いには注意が必要です。

したがって、が適切です。

❌他選択肢が誤りの理由
イ:マルウェア定義ファイルとも呼ばれ,マルウェアを特定するための特徴的なコードのことであり,マルウェア対策ソフトによるマルウェアの検知に用いられる。
⇒マルウェア定義ファイル、又はシグネチャに関する説明です。既知のマルウェアを検出するための特徴情報であり、脆弱性を悪用するコードであるエクスプロイトコードとは異なります。
ウ:メッセージとシークレットデータから計算されるハッシュコードのことであり,メッセージの改ざん検知に用いられる。
⇒MAC、又はメッセージ認証コードの説明です。共通鍵などの秘密情報を使ってメッセージの完全性を確認するための仕組みであり、脆弱性を悪用するコードではありません。
エ:ログインのたびに変化する認証コードのことであり,窃取されても再利用できないので不正アクセスを防ぐ。
⇒ワンタイムパスワードの説明です。認証を強化するための仕組みであり、脆弱性を悪用するエクスプロイトコードとは目的が異なります。
TSUNAGARU-ADVICE

まず押さえたいこと

エクスプロイトコードは、ソフトウェアやシステムの脆弱性を悪用するためのコードです。攻撃に使われる一方で、管理された環境では脆弱性が実際に悪用可能かを検証するために使われることもあります。

迷ったときの判断軸

マルウェア定義ファイルはマルウェア検知に使う特徴情報、メッセージとシークレットデータから計算するハッシュコードはMAC、ログインのたびに変化する認証コードはワンタイムパスワードの説明です。エクスプロイトコードは、脆弱性を突いて動作させる攻撃用コードと判断しましょう。

科目Bにつなげるために

科目Bでは、脆弱性情報・PoC・エクスプロイトコード・パッチ適用の関係を読み取る問題が出ることがあります。エクスプロイトコードが公開されると悪用リスクが高まるため、影響範囲の確認と早期の修正・緩和策が重要になると理解しておきましょう。