正解は ア
エクスプロイトコード(exploit code)は、攻撃コードとも呼ばれ、ソフトウェアの脆弱性(セキュリティ上の欠陥)を悪用して、不正な動作(任意コードの実行、権限昇格、サービス停止など)を引き起こすために作られたプログラムやコードのことです。攻撃者が悪用する一方で、セキュリティの専門家が、対象システムにその脆弱性が実際に存在し悪用可能かどうかを検証する(脆弱性の実証や対策の有効性確認を行う)目的で利用することもあります。選択肢aの「攻撃コードとも呼ばれ、ソフトウェアの脆弱性を悪用するコードのことであり、使い方によっては脆弱性の検証に役立つこともある」が、エクスプロイトコードの説明として正しく、正解です。他の選択肢を確認すると、マルウェアを特定するための特徴的なコードはマルウェア定義ファイル(シグネチャ)、メッセージとシークレットデータから計算されるハッシュコードはMAC(メッセージ認証符号)、ログインのたびに変化する認証コードはワンタイムパスワードであり、いずれもエクスプロイトコードとは異なる概念です。「脆弱性を悪用するコード」という点がエクスプロイトコードの本質です。
エクスプロイトコード(攻撃コード)=脆弱性を悪用するコード。攻撃にも、脆弱性の検証(実証)にも使われる。混同注意:シグネチャ(マルウェア定義)、MAC(改ざん検知)、ワンタイムパスワード(認証)。