‹ ぱすてく

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

平成22年度 春期 午後Ⅰ(旧試験)

平成22年度 春期に実施された情報処理安全確保支援士試験 午後Ⅰの全4問(記述式)の全設問に,運営者が独自に書いた解説を付けています。事例本文のどこが根拠になるかを示し,IPA の解答例・採点講評と並べています。

この試験について:情報処理安全確保支援士試験について

この年度を解いてみる

問1 Java プログラミング

Java プログラミングに関する次の記述を読んで,設問 1~3 に答えよ。

S 社は,従業者数 500 名(従業員 30 名,パートタイマ(以下,パートという)470 名),営業所が 1 か所の警備業者であり,各種イベントの警備や交通誘導警備を請け負っている。これまで,パートの勤務時間の集計と給与計算は,手書き帳票を基にして経理課にて行っていた。今回,情報システム課で Web アプリケーションによる勤務時間管理システムを開発して,集計などの作業をシステム化することとした。このシステム化によって,毎月初めの 5 営業日以内にパートが営業所に赴き,PC 操作によって自分の前月分の勤務時間集計表を印刷した後,その表に記載された勤務時間と給与支給金額に誤りがないことを確認して押印し提出するという作業の流れとなった。

なお,パートの勤務時間は,業務監督者が記録し,専任の担当者がデータベースに入力する。

〔システム構成〕

S 社の勤務時間管理システムのシステム構成は,図 1 のとおりである。

左に“ネットワーク構成”,右に“Web サーバのソフトウェア構成”の二つの枠がある。ネットワーク構成:Web サーバと DB サーバが接続され,それらと複数の PC(PC … PC)が同じネットワークにつながる。PC は全 25 台。Web サーバのソフトウェア構成:上から Java サーブレット,Java サーブレットコンテナ,HTTP サーバ,OS の順に重なる。
図 1 勤務時間管理システムのシステム構成

HTTP サーバ及び Java サーブレットコンテナはオープンソースソフトウェアを使用しており,Java サーブレットコンテナは Java Platform, Enterprise Edition 5(Java EE 5)に準拠したものである。また,利用者用 PC は,25 台を用意してパート全員で共用する。

システムの利用者 ID には,6 けたの数字からなる従業者番号を使用する。

〔システム仕様〕

S 社の情報システム課には従業員が 4 名在籍しているが,これまで T 君がほぼ 1 人でシステム開発,管理を行っており,今回の開発も T 君が 1 人で担当することとなった。T 君は,これまで Java サーブレットモデルを用いたシステム開発を経験したことがなかった。しかし,プログラム上でメモリを使用する際の境界チェックをしなくても Java バーチャルマシンによってメモリの使用状況が管理されるために,C 言語又は C++言語で開発したプログラムにおいてよく発生する a によるセキュリティ上の脆弱性が発生しないという利点を重視して,Java サーブレットモデルを用いた開発を決定した。

今回開発する勤務時間管理システムの仕様は,図 2 のとおりである。

1. 勤務時間管理システムは,利用者 ID 及びパスワードを使用して本人確認を行う。2. 利用者用 PC 上のブラウザ操作によって,Web サーバ内の Java サーブレットは勤務時間集計表を PDF ファイルとして動的に作成し,HTTP サーバの Web 公開領域に保存する。なお,勤務時間集計表の作成においては既存の勤務時間集計表作成プログラムを呼び出す。3. Web サーバ内の Java サーブレットは,勤務時間集計表へアクセスするためのリンク情報を含んだ HTML 文書をブラウザへ送信する。利用者は,ブラウザ上に表示されたリンクをクリックして,勤務時間集計表をダウンロードする。4. 定期的に起動されるプロセスによって,作成から 1 時間以上経過した勤務時間集計表を自動的に削除する。
図 2 勤務時間管理システムの仕様(抜粋)

〔勤務時間集計表の作成及びリンク表示のプログラム〕

T 君は,図 2 の仕様に基づいて Java プログラムを作成した。その Java プログラムのうち,勤務時間集計表を作成して,その表へのリンクを表示する部分について図 3 に示す。プログラム完成後,仕様に基づいた機能試験を試験環境にて行い,問題がないことを確認した。

package jp.co.s_sha.kinmuhyo;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class PDFDownloader extends HttpServlet {
   private static final long serialVersionUID = 1L;

   static final String KINMUHYO_LOCAL_PATH = "c:\\inetpub\\wwwroot\\KinmuHyo";
   static final String KINMUHYO_URL_PATH = "../KinmuHyo/";
   File tempPDF;

   public void init() {
      (省略) // データベースへ接続
   }

   public void destroy() {
      (省略) // データベースから切断
   }

   protected void doGet(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
     String tempUserID = request.getRemoteUser();   // tempUserID に利用者 ID を代入
     tempPDF = new File(KINMUHYO_LOCAL_PATH, tempUserID + ".pdf");
     makePDF(tempUserID, tempPDF);
     response.setContentType("text/html; charset=utf-8");
     PrintWriter out = response.getWriter();
      (省略) // 定型的な HTML 出力
     out.println("<a href=\"" + KINMUHYO_URL_PATH + tempPDF.getName() +
                 "\">こちら</a>からダウンロードしてください。");
      (省略) // 定型的な HTML 出力
   }

   protected void doPost(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
      (省略) // doGet メソッドの呼出し
   }

   protected void makePDF(String userID, File output)
           throws IOException {
      (省略) /* 勤務時間集計表作成プログラムを呼び出し,利用者 ID (userID) で示されるパートの勤務時間集計表を output で示されるファイルとして作成 */
   }
}
図 3 勤務時間管理システムのプログラム(抜粋)

〔トラブルの発生と対策〕

その後,S 社では勤務時間管理システムの運用を開始した。しかし,パートから,①マニュアルどおりに操作したにもかかわらず,ダウンロードした勤務時間集計表が他人のものだったという苦情があった。この問題が発生したときには 25 名の利用者が同時に勤務時間管理システムへアクセスしていた。T 君は,この問題の原因を調査するためにプログラムを見直していたが,なかなか原因を特定できなかった。さらに,最初にこの問題が発生してから 3 日後に,23 名の利用者が同時に勤務時間管理システムへアクセスしていた際にも,同じ問題が発生した。

この状況を見て,情報システム課の H 課長は勤務時間管理システムの運用停止を指示するとともに,T 君単独でのシステム開発には無理があると考え,セキュリティにも詳しいシステムコンサルタントの U 氏に支援を要請した。

支援を開始した U 氏は,最初に図 3 のプログラムを検査して,問題の原因と修正方法を指摘した。その指摘に従い,T 君はプログラムを修正し,テストを行って問題が発生しないことを確認した。

さらに U 氏は,悪意をもったパートが②他人のパスワードを使用しなくても,容易に他人の勤務時間集計表をダウンロードできる脆弱性があることを指摘した。

指摘を受けた T 君は,作成する勤務時間集計表のファイル名をランダム文字列とすれば脆弱性は解消できるのではないかと提案した。しかし U 氏は,そもそも個人情報が記録されたファイルを Web 公開領域に保存することに問題があると指摘して,脆弱性を解消するために図 2 の仕様を図 4 のように修正することを提案した。

1. 勤務時間管理システムは,利用者 ID 及びパスワードを使用して本人確認を行う。2. 利用者用 PC 上のブラウザ操作によって,Web サーバ内の Java サーブレットは勤務時間集計表を PDF ファイルとして動的に作成し,Web 公開領域ではなく Java サーブレット経由でだけアクセス可能な領域に保存する。なお,勤務時間集計表の作成においては既存の勤務時間集計表作成プログラムを呼び出す。3. Web サーバ内の Java サーブレットは,[ b ]をブラウザへ送信する。利用者は,ブラウザの PDF プラグイン機能によって表示された内容を印刷する。4. 定期的に起動されるプロセスによって,作成から 1 時間以上経過した勤務時間集計表を自動的に削除する。
図 4 勤務時間管理システムの修正仕様(抜粋)

その後,T 君は U 氏の支援を受けつつ,図 4 の仕様に沿って勤務時間管理システムの修正を行い,脆弱性が解消されたことを確認した。この結果を受けて,H 課長は勤務時間管理システムの運用再開を指示した。

出題趣旨(IPA)

レースコンディションを発生させるバグは,通常の機能テストでの発見が困難である。さらに,レースコンディションに起因する脆弱性は,その原因の発見と対策に時間が掛かる。したがって,レースコンディションの正しい理解に基づいて,プログラムの設計及びコーディングの時点で十分な注意を払うことが必要である。本問では,Webアプリケーション開発における脆弱性対策に必要な知識として,主にレースコンディションの仕組みとその対策についての理解を問う。

採点講評(問全体・IPA)

問1では,セキュアプログラミングの分野から,主にレースコンディションの発生の仕組みと対策について出題した。全体として正答率は想定どおりだった。

設問と解答例

設問1 解答欄1つ

本文中の a に入れる適切な字句を 15 字以内で答えよ。

〔a〕解答例

  • バッファオーバフロー
解説

本文の根拠

〔システム仕様〕

プログラム上でメモリを使用する際の境界チェックをしなくても Java バーチャルマシンによってメモリの使用状況が管理されるために,C 言語又は C++言語で開発したプログラムにおいてよく発生する a によるセキュリティ上の脆弱性が発生しない

空欄 a は,C 言語や C++言語で開発したプログラムでよく発生し,Java では発生しない脆弱性の原因を問う。本文は,メモリを使うときの境界チェックをしなくても Java バーチャルマシンがメモリの使用状況を管理してくれる,と述べている。境界チェックの不足で起こる代表的な問題は,確保した領域の大きさを超えてデータを書き込むバッファオーバフローである。

つまり,“境界チェック”“メモリの使用状況の管理”という二つの手掛かりが,入力が領域からあふれる問題を指している。

字数は 15 字以内で,解答例は“バッファオーバフロー”の 10 字。

設問2(1) 60字以内

マニュアルどおりに操作したにもかかわらず,他人の勤務時間集計表をダウンロードしてしまった原因について,図 3 のプログラム上の変数名を用いて,60 字以内で述べよ。

解答例

  • インスタンス変数tempPDFが複数のスレッドからほぼ同時に書き込まれたので,想定外の値となった。
解説

本文の根拠

図 3 のプログラム

File tempPDF;

図 3 のプログラム

tempPDF = new File(KINMUHYO_LOCAL_PATH, tempUserID + ".pdf");

〔トラブルの発生と対策〕

この問題が発生したときには 25 名の利用者が同時に勤務時間管理システムへアクセスしていた。

図 3 では,勤務時間集計表のファイルを表す tempPDF が,doGet メソッドの外でインスタンス変数として宣言されている。Java サーブレットは,複数の利用者の要求を複数のスレッドが同じサーブレットのインスタンスで処理することがあるので,インスタンス変数は全利用者で共有される。

ある利用者の要求が tempPDF に自分の ID のファイルを代入した直後に,別の利用者の要求が tempPDF を上書きすると,最初の利用者のリンクの組立て(tempPDF.getName())が,他人のファイル名で行われる。苦情が出たのが 25 名の利用者が同時にアクセスしていたときだったことも,同時実行による現象だと読める。Java EE 5 の API 仕様(SingleThreadModel)にも,この種の問題を避けるにはインスタンス変数を使わないか,その参照を同期化するよう勧める記述がある。

字数は 60 字以内で,解答例は 49 字。変数名 tempPDF と,複数のスレッドからほぼ同時に書き込まれる点,結果として想定外の値になる点を入れる。

設問2(2) 15字以内

この苦情の原因となるプログラムのバグで発生する問題は何と呼ばれるか。15 字以内で答えよ。

解答例(2通り)

  • レースコンディション
  • 競合状態
解説

本文の根拠

〔トラブルの発生と対策〕

この問題が発生したときには 25 名の利用者が同時に勤務時間管理システムへアクセスしていた。

〔トラブルの発生と対策〕

最初にこの問題が発生してから 3 日後に,23 名の利用者が同時に勤務時間管理システムへアクセスしていた際にも,同じ問題が発生した。

複数の処理が共有する資源に同時にアクセスしたとき,実行順序やタイミングによって結果が変わってしまうバグを,レースコンディション(競合状態)という。本文では,利用者がほとんどいないときには起きず,25 名や 23 名が同時にアクセスしたときにだけ起きており,タイミング次第で現れる点が典型的である。

解答例は“レースコンディション”と“競合状態”のどちらでもよい。講評は,この用語は脆弱性を理解,説明する上で必須であり,正答率が低かったので確実に理解してほしいとしている。

字数は 15 字以内で,“レースコンディション”が 10 字,“競合状態”が 4 字。

採点講評(IPA)

設問2(2)は,正答率が低かった。レースコンディションという用語は,脆弱性を理解,説明する上で必須であるので確実に理解してほしい。また,設問2(4)も正答率が低かった。レースコンディションの有無をテストするためには,“多数の”リクエストを“同時に”発行するというテスト方法が必須であることを理解しておいてほしい。

設問2(3) 45字以内

上記 (2) のバグを修正するためのプログラムの変更内容を,45 字以内で具体的に述べよ。ただし,図 2 に示した仕様は変更しないものとする。

解答例

  • インスタンス変数tempPDFをdoGetメソッドのローカル変数として定義する。
解説

本文の根拠

図 3 のプログラム

File tempPDF;

図 3 のプログラム

makePDF(tempUserID, tempPDF);

問題の原因は,全スレッドで共有される tempPDF が,スレッドごとに別の値を持つべき情報を保持している点にある。そこで tempPDF の宣言を,クラスの直下から doGet メソッドの中に移し,ローカル変数にする。ローカル変数は呼び出しごと(スレッドごと)に別の領域に置かれるので,他の要求に上書きされない。

tempPDF を使っているのは,doGet の中の new File(…),makePDF(tempUserID, tempPDF),リンクを出力する out.println(…) の三か所で,いずれも doGet の中にあるため,宣言を移すだけで済む。ファイルを Web 公開領域に保存してリンクで渡す図 2 の仕様は,そのまま変えずに直せる。

字数は 45 字以内で,解答例は 40 字。変数名 tempPDF,移し先のメソッド doGet,ローカル変数にする,の三点を入れる。

設問2(4) 50字以内

このプログラムに関して,上記 (2) のバグの有無を確認するためにテストを実施したい。どのような HTTP リクエストをどのように Web サーバに送信すればよいか。50 字以内で述べよ。

解答例

  • 利用者IDが異なる,多数のHTTPリクエストを,ほぼ同時にWebサーバに送信する。
解説

本文の根拠

〔勤務時間集計表の作成及びリンク表示のプログラム〕

プログラム完成後,仕様に基づいた機能試験を試験環境にて行い,問題がないことを確認した。

〔トラブルの発生と対策〕

この問題が発生したときには 25 名の利用者が同時に勤務時間管理システムへアクセスしていた。

T 君の機能試験は,仕様どおりに動くかを確かめるもので,問題は見つからなかった。レースコンディションは,複数の要求が重なったときにしか表に出ないので,一人ずつ順番に操作する試験では見つからない。確かめるには,複数の利用者 ID で作った多数の要求を,ほとんど同時に Web サーバへ送ればよい。

利用者 ID が違うことが要る理由は,tempPDF に代入される値が要求ごとに変わらなければ,上書きされても結果が変わらず,バグが現れないからである。実際に起きたのも 25 名が同時に使ったときだった。

字数は 50 字以内で,解答例は 41 字。“利用者 ID が異なる”“多数の HTTP リクエスト”“ほぼ同時に送信”の三要素を入れる。講評も,多数のリクエストを同時に発行することが必須だとしている。

採点講評(IPA)

設問2(2)は,正答率が低かった。レースコンディションという用語は,脆弱性を理解,説明する上で必須であるので確実に理解してほしい。また,設問2(4)も正答率が低かった。レースコンディションの有無をテストするためには,“多数の”リクエストを“同時に”発行するというテスト方法が必須であることを理解しておいてほしい。

設問3(1) 50字以内

この脆弱性を突いて,他人の勤務時間集計表をダウンロードする方法を 50 字以内で述べよ。

解答例

  • 他人の従業者番号を基に,勤務時間集計表のURLを推測し,ダウンロードを試みる。
解説

本文の根拠

〔システム構成〕

システムの利用者 ID には,6 けたの数字からなる従業者番号を使用する。

図 3 のプログラム

tempPDF = new File(KINMUHYO_LOCAL_PATH, tempUserID + ".pdf");

図 3 のプログラム

static final String KINMUHYO_URL_PATH = "../KinmuHyo/";

図 2

勤務時間集計表を PDF ファイルとして動的に作成し,HTTP サーバの Web 公開領域に保存する。

勤務時間集計表のファイル名は,利用者 ID(6 けたの従業者番号)に“.pdf”を付けたもので,Web 公開領域のディレクトリに置かれる。URL は“../KinmuHyo/”の下の“従業者番号.pdf”と推測でき,認証を通らずにその URL へ直接アクセスしても,HTTP サーバは返してしまう。悪意のあるパートは,他人の従業者番号を基に URL を組み立てて,ダウンロードを試みればよい。このように,リンクが示されていなくても URL を推測して資源に直接アクセスする攻撃は強制ブラウジング(forced browsing)と呼ばれる(OWASP)。

6 けたの数字は 100 万通りしかない。さらに集計表は作成から 1 時間以内なら残っているので,その間に試せば取得できる。

字数は 50 字以内で,解答例は 39 字。“他人の従業者番号”“URL を推測”“ダウンロード”の三点を入れる。講評は,URL 推測の問題は正答率が高く,Web サイト構築では確実に対策すべき事項だとしている。

採点講評(IPA)

設問3は,URL推測に関して出題したが正答率は高かった。URL推測に対する対策はWebサイト構築において必須の事項であり,確実に対策を行うことを期待したい。

設問3(2) 解答欄1つ

この脆弱性を解消する修正仕様に関して,図 4 中の b に入れる適切な字句を 20 字以内で答えよ。

〔b〕解答例

  • PDFファイル形式の勤務時間集計表
解説

本文の根拠

図 4

Web 公開領域ではなく Java サーブレット経由でだけアクセス可能な領域に保存する。

図 4

Web サーバ内の Java サーブレットは,bをブラウザへ送信する。利用者は,ブラウザの PDF プラグイン機能によって表示された内容を印刷する。

修正仕様では,集計表を Web 公開領域に置かず,Java サーブレットからだけ読める領域に保存する。すると,利用者がリンクをたどって HTTP サーバから直接ダウンロードする方法は使えない。そのため,サーブレットが,保存した集計表の中身そのものをブラウザへ送信する形に変わる。空欄 b の後ろに,“ブラウザの PDF プラグイン機能によって表示された内容を印刷する”とあるので,送るものは PDF ファイルの形の勤務時間集計表になる。

この方式では,URL を推測してもサーブレットを経由しないとファイルに届かないので,従業者番号から URL を組み立てる手口は成り立たない。

字数は 20 字以内で,解答例は“PDFファイル形式の勤務時間集計表”の 17 字。

採点講評(IPA)

設問3は,URL推測に関して出題したが正答率は高かった。URL推測に対する対策はWebサイト構築において必須の事項であり,確実に対策を行うことを期待したい。

出典:平成22年度 春期 情報処理安全確保支援士試験 午後Ⅰ 問1(表記を一部改変)

問2 データの暗号化とバックアップ

データの暗号化とバックアップに関する次の記述を読んで,設問 1~3 に答えよ。

G 社は,従業員数 800 名の医薬品販売会社であり,全国 15 か所に営業所をもっている。3 か月前,ある営業所で火災が発生し,その営業所内の PC とサーバが被害を受けた。顧客データや注文データなどの電子データが消失してしまい,顧客データを再入力したり,顧客に注文データを確認したりするなどの復旧作業に 1 か月を要するなど,事業に大きな影響が出た。G 社の経営陣は,今後同様のデータ消失が起きないように,営業所を対象としたデータバックアップを見直すよう,情報システム部に指示した。また,営業所では PC に顧客データなどの機密データを保管している一方,従業員が社外に PC を持ち出して仕事をしているので,これらの機密データの社外への漏えいを防ぐ対策についても見直すよう,経営陣は指示した。

情報システム部の L 課長は,これら二つの指示を受けて,部員の Y 君にバックアップ方式と機密保護方式を検討するように指示した。

Y 君は,対象とするデータを整理するために,営業所に対して,保有しているデータの洗出しを依頼した。その結果,PC に保存されているデータのうち,バックアップ又は機密保護が必要なものは表のとおりであった。

列は,データ,バックアップ,機密保護,データの取扱い,データの保存形式。顧客データ:バックアップ必要,機密保護必要。表計算ソフトで顧客(医療機関の関係者)の連絡先などを管理している。パスワードなどによる保護はしていない。電子メール(以下,メールという)による表計算ファイルの送受信は行っていない。保存形式は (a) 表計算ファイル。注文データ:バックアップ必要,機密保護必要。顧客から送付されてくるメールの本文中に医薬品の注文が記載されており,これで注文を受け付けている。保存形式は (b) メールボックスファイル内のメール(MIME 形式)。仕入原価データ:バックアップ不要,機密保護必要。本社からメールの添付ファイル(PDF ファイル)として医薬品の仕入原価などが定期的に送付されてくる。添付されている PDF ファイルはパスワードなどによる保護はされていない。保存形式は (b) メールボックスファイル内のメール(MIME 形式)(注文データと共通)。本社からメールの添付ファイルとして送付されてくる PDF ファイルをメールから取り出して PC に保存し,参照している。保存形式は (c) PDF ファイル。注:G 社が使用しているメールソフトは,すべてのメールを PC 上の一つのメールボックスファイルに格納する。
表 PC に保存されていて,バックアップ又は機密保護が必要なデータ

各営業所には,営業所内での情報共有のために医薬品のカタログデータなどを保管しているファイルサーバ(以下,営業所サーバという)が,サーバルーム内に設置されている。機密保護の観点から営業所サーバの管理状況を確認したところ,データの管理に問題はなかった。また,営業所サーバについては容量が比較的小さいので全データをバックアップの対象にすることにした。

〔暗号化方式の検討〕

まず Y 君は,表中の (a) と (c) の形式のデータについて暗号化を検討した。

Y 君は,暗号化の方法として,PC のハードディスクをすべて暗号化するソフトウェアを利用する方式(以下,ハードディスク暗号化方式という)と,従業員ごとに公開鍵暗号方式の鍵ペアをもち,ファイル単位で暗号化を行うソフトウェアを利用する方式(以下,ファイル暗号化方式という)の比較を行った。その結果,ファイル暗号化方式に比べ,ハードディスク暗号化方式は G 社で利用している PC では動作速度が著しく低下することが分かり,ファイル暗号化方式を採用することにした。

ファイル暗号化方式における暗号化は,図 1 のように行われる。従業員は,暗号化を開始するに当たって,まず秘密鍵と公開鍵の鍵ペアを生成する。ファイルの暗号化は,ファイルごとに異なる,乱数から生成された共通鍵を使用して行われる。暗号化に使われた共通鍵は従業員の公開鍵を使用して暗号化され,暗号化されたファイルとともにハードディスクに保存される。

左に“従業員ごとの鍵ペア”として秘密鍵と公開鍵の二つの箱がある。中央に“ファイルごとに異なる,乱数から生成された共通鍵”の箱がある。右上に“暗号化前のファイル”がある。公開鍵から右へ“暗号化に使用”の点線矢印が伸び,共通鍵の箱から下へ向かう“暗号化”の太矢印に至る。この太矢印の先は,下段の“暗号化されたファイル”の左側にある [ a ] の箱である。共通鍵の箱から右へ“暗号化に使用”の点線矢印が伸び,暗号化前のファイルから下へ向かう“暗号化”の太矢印に至る。この太矢印の先は,下段の“暗号化されたファイル”([ a ] の右側)である。注:ファイル暗号化方式によってファイルを暗号化すると,暗号化に関する情報がファイルに付加される。
図 1 ファイル暗号化方式におけるファイルの暗号化

また,ファイル暗号化方式におけるファイルの復号は図 2 のように行われる。

上段に“暗号化されたファイル”があり,その左側に [ a ] の箱がある。左に“従業員ごとの鍵”の枠があり,その中に [ b ] の箱がある。[ b ] から“復号に使用”の点線矢印が伸び,[ a ] から下へ向かう“復号”の太矢印に至り,その先に [ c ] の箱がある。[ c ] の箱から右へ“復号に使用”の点線矢印が伸び,暗号化されたファイルから下へ向かう“復号”の太矢印に至り,その先に“復号されたファイル”がある。
図 2 ファイル暗号化方式におけるファイルの復号

従業員が OS にログインしている状態であれば,暗号化されたファイルは通常のファイルと同様に,暗号化・復号を意識することなく利用することができる。しかし,従業員が OS にログインしていない状態では,従業員の b にアクセスすることができないので,ファイルが暗号化されたままの状態となり,PC からハードディスクが外された場合でも,ハードディスクからのデータ漏えいを防止することができる。

次に Y 君は,表中の (b) の形式のデータについて,暗号化を検討した。調査の結果,G 社及び顧客のメールソフトはすべて S/MIME に対応しており,暗号メールの利用に問題がなかったので,注文データ又は仕入原価データを含むメールはすべて S/MIME で暗号化してやり取りすることにした。さらに,G 社のすべての PC には,d に基づいて評価及び認証された TPM (Trusted Platform Module) バージョン 1.2 対応製品が搭載されていることが分かった。そこで,この TPM を用いて,ファイル暗号化方式の鍵ペア及び S/MIME 用の鍵ペアを安全に保管することにした。

〔バックアップ方式の検討〕

続いて Y 君は,バックアップ方式の検討を行った。営業所から,PC だけが被害を受けてデータが消失した場合は前営業日のデータに回復し,営業所全体が被害を受けた場合は最悪でも 2 週間前のデータに回復したいとの要望が出たので,これらの要望に基づいて検討することにした。Y 君は,バックアップ方式として,図 3 のように,PC のデータを営業所サーバにバックアップし,次に営業所サーバのデータを磁気テープ(以下,テープという)にバックアップする方式を考えた。

左に M さんの PC,N さんの PC など複数の PC が重なって描かれ,各 PC のハードディスクに“バックアップが必要なデータ”があり,そこから太矢印で“バックアップ用スクリプト”に至る。バックアップ用スクリプトから“コピー”の太矢印が,営業所サーバのハードディスクの個人別エリアにある,M さん用フォルダ内のバックアップデータ,N さん用フォルダ内のバックアップデータに伸びる。営業所サーバのハードディスクは,共用エリア(医薬品カタログ用フォルダ内のカタログデータなど)と個人別エリア(M さん用フォルダ,N さん用フォルダなど)からなり,ハードディスク全体から“バックアップソフト”へ,さらに“バックアップ”の太矢印でバックアップ装置のテープへ伸びる。バックアップソフトは営業所サーバの中にある。
図 3 バックアップ方式

PC のデータのバックアップを定期的に実行するため,ログアウト時に実行するバックアップ用スクリプトを設定する。そのスクリプトが,PC から営業所サーバへのバックアップ処理を実行する。退社時に従業員が OS からログアウトする際に,表中の (a) と (b) の形式のデータが,営業所サーバの個人別エリアに作成された各従業員のバックアップ用フォルダ内にコピーされる。営業所サーバにファイルがコピーされる際には,ファイル暗号化方式によって暗号化されているものは復号された上でコピーされる。

営業所サーバにバックアップソフトとバックアップ装置を導入する。毎週土曜日,バックアップソフトのスケジューラで,1 本のテープに全データのフルバックアップを行う。土曜日のバックアップが正常に完了していることを月曜日に確認した後,バックアップ装置のテープを未使用のものに交換し,取り出したテープを営業所のサーバルームに保管する。その週の金曜日に,保管しておいたテープを梱包し,商品配送などで利用している通常の宅配便サービスによって本社に送付する。本社では届いたテープを 1 年間安全に保管した後,古いものから順に安全に廃棄していく。

このバックアップ方式に対して L 課長は,①このバックアップ方式を導入することによって,社外への情報漏えいのリスクが高くなる可能性があると指摘した。

Y 君は,これを受けてバックアップ方式に新たな対策を加えた。

〔バックアップ方式の検証と改善〕

Y 君は,検討したバックアップ方式で運用できることを検証するために,まず,バックアップ用スクリプトで PC のデータを営業所サーバにコピーし,次に PC のデータ領域のファイルを消去した上で,営業所サーバからバックアップしたデータを PC に戻し,データを確認した。その結果,すべてのデータが問題なく使用できたので,一つの営業所でパイロット運用を開始した。

パイロット運用を開始して 2 週間後,ある従業員の PC が故障し,マザーボードの交換修理を行った。すると,暗号化されたデータが全く読めなくなってしまった。そこで,営業所サーバからバックアップしたデータを PC に戻したが,②それでもサーバから戻したデータの一部は PC で読めなかった。

Y 君は,この原因を調査したところ,TPM の利用方法を改善する必要があることが分かった。そこで,③ファイル暗号化方式の手順を一部修正した。修正された方式に基づいて実施したパイロット運用の結果は順調で,順次,すべての営業所で本格運用を開始していくこととなり,G 社営業所データの,暗号化とバックアップが実施されるようになった。

出題趣旨(IPA)

機密保護を実現する際には暗号化が有力な候補となるが,十分な検討を行わずに暗号化機能を導入すると,システム障害などが発生した際に,暗号化されたデータを復号することができず,結果として業務に支障を来してしまう可能性がある。本問では,まず,暗号化とバックアップそれぞれについて,基本的な仕組みと,導入時に考慮すべき点を出題することによって,暗号化及びバックアップの導入に関する基本的な理解力を問う。続いて,暗号化とバックアップを同時に利用した場合に発生する問題と解決方法について出題することで,機密性と可用性の両面から施策を検討し,解決する能力を問う。

採点講評(問全体・IPA)

問2では,PCに保存するデータの暗号化と,暗号化したデータをバックアップする際に検討すべき点について出題した。全体として正答率は想定どおりだった。

設問と解答例

設問1(1) 解答欄3つ

図 1,2 及び本文中の a ~ c に入れる適切な字句を解答群の中から選び,記号で答えよ。解答群 ア 暗号化された共通鍵 イ 公開鍵 ウ 電子署名 エ ハッシュ値 オ 秘密鍵 カ ファイルを復号する共通鍵

〔a〕解答例

  • ア

〔b〕解答例

  • オ

〔c〕解答例

  • カ
解説

本文の根拠

〔暗号化方式の検討〕

暗号化に使われた共通鍵は従業員の公開鍵を使用して暗号化され,暗号化されたファイルとともにハードディスクに保存される。

図 1

公開鍵から右へ“暗号化に使用”の点線矢印が伸び,共通鍵の箱から下へ向かう“暗号化”の太矢印に至る。

図 2

b から“復号に使用”の点線矢印が伸び,a から下へ向かう“復号”の太矢印に至り,その先に c の箱がある。

〔暗号化方式の検討〕

従業員が OS にログインしていない状態では,従業員の b にアクセスすることができない

a は,図 1 で公開鍵を使って暗号化された共通鍵が,暗号化されたファイルの先頭に付く部分である。本文のとおり,共通鍵は従業員の公開鍵で暗号化されてファイルとともに保存されるので,a は“暗号化された共通鍵”(ア)である。

復号は暗号化の逆をたどる。b は“従業員ごとの鍵”で,公開鍵で暗号化されたものを復号できるのは対になる秘密鍵(オ)である。これで a を復号して取り出される c は,ファイル本体を復号するための“ファイルを復号する共通鍵”(カ)である。公開鍵暗号で共通鍵を包み,その共通鍵でファイルを暗号化する組合せは,OpenPGP の仕様(RFC 4880)にも“セッション鍵を受信者の公開鍵で暗号化する”と書かれている。

なお,公開鍵(イ)は暗号化に使う鍵で,復号には使えない。電子署名(ウ)やハッシュ値(エ)は,この図のどこにも出てこない。

採点講評(IPA)

設問1では,暗号化の基本的な仕組みを出題した(1)は,正答率が高かったが,TPMに関して出題した(2)は,選択肢形式であるにもかかわらず正答率が低かった。TPMが搭載されているPCも多くなっているので,TPMの基本的な機能は理解しておいてほしい。

設問1(2) 解答欄2つ

ファイル暗号化方式において,G 社が利用している PC の TPM で必ず実行できる機能はどれか。解答群の中から二つ選び,記号で答えよ。解答群 ア 暗号化された共通鍵を,ハードディスクに格納する機能 イ 共通鍵でファイルを暗号化する機能 ウ 従業員の鍵ペアを生成する機能 エ 乱数を生成する機能

〔①〕解答例

  • ウ

〔②〕解答例

  • エ

〔備考〕順不同

解説

本文の根拠

〔暗号化方式の検討〕

そこで,この TPM を用いて,ファイル暗号化方式の鍵ペア及び S/MIME 用の鍵ペアを安全に保管することにした。

TPM は,鍵を安全に保管し,その鍵に関わる処理を行うためのチップである。本文でも,ファイル暗号化方式の鍵ペアと S/MIME 用の鍵ペアを TPM で保管するとしている。TPM 1.2 を対象とした Common Criteria の保護プロファイル(TCG,PC Client Specific TPM Family 1.2)は,TPM が乱数生成器(RNG)をもち,その乱数を鍵の生成などの内部処理にも使うこと,利用者の鍵を TPM が生成して鍵ブロブとして外へ出せることを定めている。よって,従業員の鍵ペアを生成する機能(ウ)と,乱数を生成する機能(エ)が,必ず実行できる機能である。

ア(暗号化された共通鍵をハードディスクに格納する機能)とイ(共通鍵でファイルを暗号化する機能)は,解答例では TPM の基本機能に当たらない選択肢である。講評は,選択肢形式であるのに正答率が低かったので,TPM の基本的な機能は理解しておいてほしいとしている。

二つ選ぶ設問で,解答例の備考は“順不同”。

採点講評(IPA)

設問1では,暗号化の基本的な仕組みを出題した(1)は,正答率が高かったが,TPMに関して出題した(2)は,選択肢形式であるにもかかわらず正答率が低かった。TPMが搭載されているPCも多くなっているので,TPMの基本的な機能は理解しておいてほしい。

設問1(3) 解答欄1つ

本文中の d に入れる適切な情報セキュリティに関係した評価基準を解答群の中から選び,記号で答えよ。解答群 ア CC (ISO/IEC 15408) イ JIS Q 15001 ウ JIS Q 27001 (ISO/IEC 27001) エ PCI DSS

〔d〕解答例

  • ア
解説

本文の根拠

〔暗号化方式の検討〕

d に基づいて評価及び認証された TPM (Trusted Platform Module) バージョン 1.2 対応製品が搭載されていることが分かった。

製品が評価・認証されたと言えるのは,製品の設計や実装を第三者が評価して認証する枠組みの場合である。CC(ISO/IEC 15408,JIS X 5070)は,IT 製品やシステムが適切に設計され,設計どおりに正しく実装されているかを評価する国際標準で,日本では IPA の JISEC 制度の下で評価・認証が行われる。TPM 1.2 についても,TCG が CC に基づく保護プロファイルを定めており,製品はそれに適合したものとして評価・認証される。

JIS Q 27001 は,組織の情報セキュリティのマネジメントシステムを対象とする規格であり,IPA によれば CC は組織の運用や管理を評価の対象としていない。JIS Q 15001 は個人情報保護のマネジメントシステム,PCI DSS はクレジットカード情報を扱う事業者のための基準で,どちらも製品の評価・認証の基準ではない。

ア(CC)と答えるのは,製品を評価・認証するという点がキーワードである。

設問2(1) 40字以内

本文中の下線①において,どのような情報漏えいのリスクが高くなる可能性があると L 課長は指摘したか。40 字以内で述べよ。

解答例

  • バックアップテープを本社に宅配便で移送する際にテープが盗難に遭う。
解説

本文の根拠

〔バックアップ方式の検討〕

営業所サーバにファイルがコピーされる際には,ファイル暗号化方式によって暗号化されているものは復号された上でコピーされる。

〔バックアップ方式の検討〕

その週の金曜日に,保管しておいたテープを梱包し,商品配送などで利用している通常の宅配便サービスによって本社に送付する。

バックアップのコピーのとき,ファイル暗号化方式で暗号化されたファイルは,復号された状態で営業所サーバに置かれる。したがって,そこから作るテープには機密データが暗号化されないまま入っている。このテープを,通常の宅配便サービスで本社へ送る。

営業所のサーバルームにある間は管理されているが,輸送中は社外に出る。輸送中にテープが盗難や紛失に遭えば,平文の機密データ(顧客データなど)が社外に漏えいする。これが L 課長の指摘したリスクである。

字数は 40 字以内で,解答例は 33 字。“テープが”“宅配便での移送中に”“盗難に遭う”の三つの要素を入れる。講評は,バックアップに限らず,対策を導入することで新たなリスクが生じないかを確認する必要があるとしている。

採点講評(IPA)

設問2は,正答率は高かった。バックアップに限らず,何らかの対策を検討する際には,その対策を導入することで新たなリスクが生じないか確認する必要性について認識しておいてほしい。

設問2(2) 30字以内

上記 (1) で述べた情報漏えいのリスクが高くなる可能性について,それに対する対策を 30 字以内で述べよ。

解答例(2通り)

  • テープにデータをバックアップする際,暗号化する。
  • 安全な移送サービスを利用する。
解説

本文の根拠

〔バックアップ方式の検討〕

営業所サーバにファイルがコピーされる際には,ファイル暗号化方式によって暗号化されているものは復号された上でコピーされる。

〔バックアップ方式の検討〕

商品配送などで利用している通常の宅配便サービスによって本社に送付する。

原因は,テープの中身が暗号化されていないことと,移送を通常の宅配便サービスに任せていることの二つなので,対策も二つある。一つは,テープにバックアップするときに暗号化しておくこと。盗まれても中身を読まれない。もう一つは,安全な移送サービス(盗難や紛失に備えた輸送,追跡できる輸送など)を使うこと。

解答例はどちらも正解で,どちらか一つを書けばよい。字数は 30 字以内で,解答例は 24 字と 15 字。

採点講評(IPA)

設問2は,正答率は高かった。バックアップに限らず,何らかの対策を検討する際には,その対策を導入することで新たなリスクが生じないか確認する必要性について認識しておいてほしい。

設問3(1)

本文中の下線②において,読めなかったデータは表中のどれか。そのデータの保存形式を,表中の (a)~(c) からすべて選び,記号で答えよ。

解答例

  • (b)
解説

本文の根拠

表

(b) メールボックスファイル内のメール(MIME 形式)

表の注

G 社が使用しているメールソフトは,すべてのメールを PC 上の一つのメールボックスファイルに格納する。

〔暗号化方式の検討〕

注文データ又は仕入原価データを含むメールはすべて S/MIME で暗号化してやり取りすることにした。

読めなかったデータは,表中の (b) メールボックスファイル内のメール(注文データ,仕入原価データ)で,答えは (b)。表の (a) と (c) はファイル暗号化方式で暗号化されたデータで,バックアップのときに復号されて営業所サーバへコピーされたので,戻せば読める。(b) は S/MIME で暗号化されたメールを格納したファイルで,ファイル暗号化方式の対象ではない(本文は (a) と (c) について検討したと述べている)ので,暗号化されたままバックアップされ,そのまま戻る。

戻した (b) のメールは S/MIME で暗号化されたままで,読むには受信者の S/MIME 用の秘密鍵が必要になる。その秘密鍵が使えなくなっていたことが,次の (2) の理由である。

答えは (b) だけで,(a) や (c) を加えると誤り。

採点講評(IPA)

設問3は,正答率は低かった。暗号化データのバックアップを検討する際には,バックアップデータの確実なリストアと,安全な保管を実現するために,データ保存形式と,鍵管理方法の理解が必要となってくる。代表的な暗号化アプリケーションについてはどのような対策が必要かを是非理解しておいてほしい。

設問3(2) 60字以内

本文中の下線②において,一部のデータが読めなかった理由を 60 字以内で述べよ。

解答例

  • TPMが交換され,メールボックスファイル内の暗号化されたメールを復号するための秘密鍵が使えなくなったから
解説

本文の根拠

〔バックアップ方式の検証と改善〕

ある従業員の PC が故障し,マザーボードの交換修理を行った。

〔暗号化方式の検討〕

この TPM を用いて,ファイル暗号化方式の鍵ペア及び S/MIME 用の鍵ペアを安全に保管することにした。

S/MIME 用の秘密鍵は,この PC の TPM で保管されていた。マザーボードの交換でその TPM も交換され,新しい TPM には古い秘密鍵がない。TCG の保護プロファイルでも,TPM の外に出す鍵は,TPM のストレージルート鍵(SRK)を頂点とする階層で包まれた鍵ブロブとして扱われ,SRK は各 TPM が所有者設定のときに作る,とされている。別の TPM は,その鍵ブロブを解くことができない。

バックアップしたデータは暗号化されたメールのままで復号できないから,メールボックスファイル内の暗号化されたメールは,営業所サーバから戻しても読めない。

字数は 60 字以内で,解答例は 52 字。“TPM が交換された”と“メールを復号するための秘密鍵が使えなくなった”の二点を入れる。

採点講評(IPA)

設問3は,正答率は低かった。暗号化データのバックアップを検討する際には,バックアップデータの確実なリストアと,安全な保管を実現するために,データ保存形式と,鍵管理方法の理解が必要となってくる。代表的な暗号化アプリケーションについてはどのような対策が必要かを是非理解しておいてほしい。

設問3(3) 60字以内

本文中の下線③において,どのように暗号化方式の手順を修正したか。60 字以内で述べよ。

解答例

  • ファイル暗号化方式とS/MIMEの鍵ペアをTPM外で作成して安全にバックアップした後,TPMを用いて保管する。
解説

本文の根拠

〔暗号化方式の検討〕

この TPM を用いて,ファイル暗号化方式の鍵ペア及び S/MIME 用の鍵ペアを安全に保管することにした。

〔バックアップ方式の検証と改善〕

Y 君は,この原因を調査したところ,TPM の利用方法を改善する必要があることが分かった。

鍵ペアを TPM の中だけに置いていると,TPM が壊れたり交換されたりしたときに,その鍵ペアを使えなくなるおそれがある。そこで,鍵ペアを TPM の外で作成し,先に安全な場所(暗号化した媒体など)にバックアップしてから,TPM に取り込んで保管する,という手順にする。TPM が壊れたり交換されたりしても,バックアップした鍵ペアを新しい TPM に入れ直せば,暗号化されたファイルもメールも復号できる。

本文の修正は“ファイル暗号化方式の手順を一部修正した”だが,S/MIME 用の鍵ペアにも同じ問題があるので,答えには両方(ファイル暗号化方式と S/MIME の鍵ペア)を書く。

字数は 60 字以内で,解答例は 55 字。“TPM の外で作成”“安全にバックアップ”“その後 TPM で保管”の順を入れる。講評は,データ保存形式と鍵管理方法の理解が必要だとしている。

採点講評(IPA)

設問3は,正答率は低かった。暗号化データのバックアップを検討する際には,バックアップデータの確実なリストアと,安全な保管を実現するために,データ保存形式と,鍵管理方法の理解が必要となってくる。代表的な暗号化アプリケーションについてはどのような対策が必要かを是非理解しておいてほしい。

出典:平成22年度 春期 情報処理安全確保支援士試験 午後Ⅰ 問2(表記を一部改変)

問3 転職サイトにおける個人情報保護

転職サイトにおける個人情報保護に関する次の記述を読んで,設問 1,2 に答えよ。

P 社は,従業員数 30 名の人材紹介会社である。コンサルタントによる人材紹介だけでなく,転職サイトも立ち上げている。この転職サイトには,求職者,求人企業が多数,登録している。求職者は,転職サイトの個人プロフィール登録画面で,氏名,生年月日,住所,電話番号,職歴などの個人プロフィールを登録する。求職者の転職サイトの利用は無料である。求人企業は,業種,募集職種,職務内容,給与,勤務地,応募資格などの求人募集内容の掲載を P 社に依頼する。求人企業は,求人募集時には求人件数に応じた利用料を,採用成立時には紹介料を P 社に支払う。

〔求職者の個人情報の保護〕

求職者は,求人募集内容を見て応募したい求人企業があれば,転職サイト内のそれぞれの求人企業の応募入力画面を利用して応募することができる。応募入力画面では,あらかじめ個人プロフィール登録画面で登録しておいた個人プロフィールをそのまま利用することもできるが,新たに入力することもできる。さらに,各求人企業に対する応募理由などを追加入力することもできる。この応募時の個人プロフィールは,P 社の Web サーバから,求人企業に,電子メール(以下,メールという)で自動送信される。

なお,求職者の個人情報を求人企業に提供することについては,求職者から事前に転職サイトの画面で同意を得ており,また,求人企業に対しても提供する個人情報の利用目的を利用規約で制限しており,特に問題ないと P 社は認識している。

求人企業のうち,数社から,暗号化されていないメールで求職者の個人情報を送信することについて,漏えいする危険性があるので改善してほしいとの要望があった。これを受けて,P 社の情報システム部の F 部長は,システム担当の Z 主任に,メールが盗聴される危険性を踏まえた改善案を作成するよう命じた。

Z 主任は,F 部長の指示に従って,改善案を表 1 にまとめた。

列は,案 1,案 2,案 3。行は,方式,実現手段,利点,欠点。方式:案 1 はメールの暗号化,案 2 はパスワード付きファイルの添付,案 3 は求人企業向け Web ページの追加。実現手段:案 1 は個人プロフィールを送信するメールを S/MIME 又は PGP を用いて暗号化する。案 2 は個人プロフィールを含む文書ファイルなどをパスワードで保護した状態でメールに添付して送信する。案 3 は応募があったときに,個人プロフィールを含めず,応募があったことだけを通知するメールを送信する。求人企業は,パスワード認証と TLS (SSL) で保護されている求人企業向け Web ページから個人プロフィールをダウンロードする。利点:案 1 は秘匿性が高い。案 2 はほとんどの求人企業で利用可能である。案 3 はメールに個人情報を含まない。欠点:案 1 は S/MIME,PGP は,求人企業に普及していない。案 2 は秘匿性が低い。パスワードの管理が必要となる。案 3 は求人企業の利用者が個人プロフィールにアクセスする際の手順が増える。パスワードの管理が必要となる。
表 1 個人情報を含むメールが盗聴される危険性を踏まえた改善案

次は,各案を比較した際の F 部長と Z 主任の会話である。

F 部長と Z 主任は,案 3 を採用することにした。求人企業向け Web ページの操作性については,求職者の個人プロフィールを簡単な手順で確認できるように設計することにした。

P 社では,求人企業向け Web ページを追加し,各求人企業に運用方法の変更を通知した上で,案 3 に沿った運用方法に切り替えた。

〔求人企業向け Web ページのパスワード〕

求人企業向け Web ページでは,表 2 に示すような利用者 ID とパスワードを求人企業の利用者ごとに発行し,各求人企業向けの Web ページだけにアクセスできるようになっている。求人企業の利用責任者は,最初に P 社に依頼するときに,各利用者のメールアドレスを含む申込書と,求人企業の登記事項証明書を郵送する。P 社では,利用者 ID は求人企業の各利用者にメールで送信するが,③初期パスワードの通知書は登記事項証明書に記載された所在地気付で利用責任者あてに一括して郵送している。求人企業の各利用者は,初めて求人企業向け Web ページにログインしたときには,パスワードを変更してから利用する。

なお,初期パスワードの通知書は,パスワードを変更した後も,各利用者が保管するように P 社からお願いしている。

列は,項目,生成方法/設定方法,例。利用者 ID:P 社が,求人企業の利用者に対して,登録順に 1 人に一つずつ割り振る連続番号(数字 8 けた)。例は 00000099。初期パスワード:利用者 ID を 3 倍した数字の下 8 けたと,発行日(西暦 4 けた,月 2 けた,日 2 けた)を合わせた 16 けたの数字。例は 0000029720100405。パスワード:初回ログイン時に,求人企業の利用者が設定する。8 けた以上の文字列で,英字,数字,記号が使用可能。例は A9d3&jw27。
表 2 求人企業向け Web ページの利用者 ID とパスワード

このような方法で運用していたところ,求人企業の Q 社から 3 名の利用者を含む申込みがあり,各利用者の初期パスワードを利用責任者あてに郵送した。その 3 名の初期パスワードを見た Q 社の利用責任者は,④他人の初期パスワードを推定可能であるという問題があると,P 社に指摘した。F 部長と Z 主任は,その指摘に対して,直ちに改善を行った。

また,別の問題点として,パスワード変更後にパスワードを忘れたという問合せがしばしば発生するようになった。そこで,Z 主任は,図のようなパスワード再設定手順を追加することを考え,F 部長に提案した。

(1) 求人企業の利用者が,パスワード再設定の申請ページに利用者 ID を入力する。(2) Web アプリケーションが自動的に,パスワード再設定の申請があった旨と,パスワード再設定の実行ページの URL を,P 社に登録されている利用者のメールアドレスあてにメールで通知する。第三者からのアクセスを避けるために URL には十分に長いランダムな文字列を含める。(3) 求人企業の利用者が,URL の示すパスワード再設定の実行ページにアクセスし,新パスワードを入力すると新パスワードが設定される。(4) パスワード再設定の実行ページの URL を通知後,20 分以内にアクセスがない場合は,実行ページの URL を自動的に無効にする。
図 求人企業向け Web ページのパスワード再設定手順(当初案)

F 部長は,⑤図のパスワード再設定手順では第三者にパスワードを再設定されてしまう危険性があることを指摘し,Z 主任に対応を指示した。Z 主任は,F 部長の指示に従い,⑥パスワード再設定手順を見直し,再提案した。

その後,P 社では,Z 主任の再提案を採用して,見直し後のパスワード再設定手順での運用を開始した。

出題趣旨(IPA)

個人情報のように,送受信の際に暗号化が必要とされる情報を,企業間で安全に送受信するのは,容易なことではない。企業間の送受信において電子メールを暗号化することは難しい場合が多い。TLS(SSL)で保護されたWebページを利用するのも一つの方法であるが,正当な利用者であることを確認する必要がある。本問では,暗号化,電子メール,パスワードなどに関する基本的な知識を前提として,具体的な状況に応じて解決策を提案できる能力を問う。

採点講評(問全体・IPA)

問3では,個人情報保護に関連して,企業間で情報を安全に受け渡す方法について出題した。全体として正答率は想定どおりだった。

設問と解答例

設問1(1) 解答欄2つ

本文中の a,b に入れる適切な字句を,a については 10 字以内で,b については 5 字以内で答えよ。

〔a〕解答例

  • S/MIME証明書

〔b〕解答例

  • メール
解説

本文の根拠

F 部長の発言

S/MIME は,各求人企業が a を用意するために認証サービスを年間契約することなどが必要である。

F 部長の発言

PGP は,自社で鍵の生成システムを用意できるとしても,クライアント PC の b ソフトが対応していないことが多く

a は,認証サービス(認証局)と契約して用意するものなので,認証局が発行する“S/MIME証明書”である。S/MIME は,メールの暗号化や署名に,認証局が本人性を保証した証明書を使う方式で,求人企業の各利用者が個別に証明書を用意する必要がある。

b は,PGP の暗号化に対応していないと一般の利用者が使いにくくなる,クライアント PC のソフトである。PGP は,メールの作成や読み取りに使うソフトが対応していないことが多いので,答えは“メール”(メールソフト)。

字数は a が 10 字以内で解答例は 9 字,b が 5 字以内で 3 字。

設問1(2) 30字以内

F 部長が,本文中の下線①のように述べている理由を 30 字以内で述べよ。

解答例

  • 証明書の正当性を確認できないから
解説

本文の根拠

会話

①各求人企業が自社で発行したものは,当社では a として受け入れられない

会話

S/MIME は,各求人企業が a を用意するために認証サービスを年間契約することなどが必要である。

証明書は,第三者の認証局が発行して初めて,その証明書が正しい持ち主のものだと確認できる。求人企業が自社で発行した証明書は,P 社から見ると,その企業が本物かどうか,証明書が改ざんされていないかを確認する手がかりがない。そのため,S/MIME 証明書として受け入れられない。

F 部長が認証サービスの年間契約を前提にしていることが,この点を表している。

字数は 30 字以内で,解答例は 16 字。“証明書の正当性(真正性)を確認できない”が骨子。

設問1(3) 30字以内

PGP では,通常,証明書のフィンガプリントを確認するが,正しいフィンガプリントの入手方法として安全と考えられるものを一つ挙げ,30 字以内で述べよ。

解答例

  • 紙媒体でフィンガプリントを入手する。
解説

本文の根拠

表 1

S/MIME,PGP は,求人企業に普及していない。

会話

PGP は,自社で鍵の生成システムを用意できるとしても

フィンガプリントは,公開鍵から計算したハッシュ値である(OpenPGP の V4 鍵では,鍵のパケットの SHA-1 ハッシュ。RFC 4880 12.2)。受け取った公開鍵のフィンガプリントを計算し,鍵の持ち主から別に入手した正しい値と照合すれば,鍵が途中で差し替えられていないと確認できる。ここで大事なのは,正しいフィンガプリントを,鍵を受け取ったネットワークとは別の経路(オフライン)で受け取ることである。同じ経路だと,攻撃者が鍵と一緒に差し替えられる。

そこで,紙に印刷したものを郵送・手渡しで受け取る,電話で読み上げてもらう,といった方法が安全と考えられる。

字数は 30 字以内で,解答例は 18 字。講評は,機密性に着目して暗号化を挙げた解答が多かったとしている。ここで問われているのは暗号化ではなく,値が正しいことの確認である。

採点講評(IPA)

設問1(3)は,正答率が低かった。証明書の真正性を確認するため,紙媒体や電話など,フィンガプリントのオフラインでの入手方法について解答してほしかったが,機密性に着目してしまい,暗号化を挙げた解答が多かった。

設問1(4) 50字以内

本文中の下線②を実現する対策の内容を 50 字以内で具体的に述べよ。

解答例

  • パスワードエラーが一定回数連続して発生したら,ログインを一定時間拒絶する。
解説

本文の根拠

会話

オンラインでパスワードを入力させる場合は,試行回数を多くできないように制限することもできるから 8 文字程度でも十分な場合が多い。

オンラインでパスワードを入力させる場合は,入力のたびにサーバが受け付けるので,サーバ側で試行回数を数えて制限できる。パスワードエラーが一定回数連続して起きたら,ログインを一定時間拒絶する,というのが具体的な対策である。これで,総当たり攻撃や辞書攻撃で試せる数が制限される。

添付ファイルのパスワードでは,攻撃者がファイルを手元に入手してオフラインで試すので,このような制限が掛けられない。F 部長が案 2 でパスワードを長くする必要があると言うのは,そのためである。

字数は 50 字以内で,解答例は 37 字。“一定回数連続して失敗”と“一定時間ログインを拒絶”の二点を,具体的な動作として書く。

設問2(1) 40字以内

本文中の下線③について,初期パスワードの通知書の郵送先を求人企業の登記事項証明書に記載された所在地とした P 社の意図は何か。40 字以内で述べよ。

解答例

  • あて先に実在する求人企業の従業員からの申込みであることを確認するため
解説

本文の根拠

〔求人企業向け Web ページのパスワード〕

求人企業の利用責任者は,最初に P 社に依頼するときに,各利用者のメールアドレスを含む申込書と,求人企業の登記事項証明書を郵送する。

〔求人企業向け Web ページのパスワード〕

初期パスワードの通知書は登記事項証明書に記載された所在地気付で利用責任者あてに一括して郵送している。

申込書と一緒に送られてくる登記事項証明書には,実在する企業の所在地が書かれている。初期パスワードの通知書を,申込書に書かれた宛先ではなく,この所在地あてに送れば,登記された所在地に実在する求人企業の利用責任者の手にだけ届く。つまり,申込みが実在する求人企業の従業員からのものであることが確認でき,なりすましの申込みを防げる。

字数は 40 字以内で,解答例は 34 字。講評は,“メールで送信すると盗聴のおそれがある”など,ほかの方法の欠点を述べただけの解答が散見され,登記事項証明書の所在地に実在する企業からの申込みであることを確認できる点を解答してほしかったとしている。

採点講評(IPA)

設問2(1)も,正答率が低かった。登記事項証明書の所在地に実在する企業からの申込みであることを確認できる点を解答してほしかったが,“メールで送信すると盗聴のおそれがある”など,ほかの方法の欠点だけを述べた解答が散見された。(2)は,正答率が高かった。初期パスワードを推定されないようにするために,ランダムな文字列や乱数を含めるべきであるということは,よく理解されていた。

設問2(2) 30字以内

本文中の下線④について,問題を解決するためには初期パスワードをどのように生成すればよいか。30 字以内で述べよ。

解答例

  • ランダムな文字列になるように生成する。
解説

本文の根拠

表 2

利用者 ID を 3 倍した数字の下 8 けたと,発行日(西暦 4 けた,月 2 けた,日 2 けた)を合わせた 16 けたの数字。

表 2

P 社が,求人企業の利用者に対して,登録順に 1 人に一つずつ割り振る連続番号(数字 8 けた)。

表 2 の例で,利用者 ID の 00000099 を 3 倍すると 297 で,初期パスワードは“00000297”に発行日“20100405”を続けた 0000029720100405 になる。ID は登録順の連続番号なので,同じ申込みの利用者の ID は連続し,発行日も同じである。自分の初期パスワードと ID から,同じ申込みの他の利用者の初期パスワードが計算で求められる。これが“他人の初期パスワードを推定可能である”という問題である。

解決するには,ID や発行日と関係のないランダムな文字列に生成すればよい。

字数は 30 字以内で,解答例は 19 字。講評は,初期パスワードを推定されないようにするために,ランダムな文字列や乱数を含めるべきだということはよく理解されていたとしている。

採点講評(IPA)

設問2(1)も,正答率が低かった。登記事項証明書の所在地に実在する企業からの申込みであることを確認できる点を解答してほしかったが,“メールで送信すると盗聴のおそれがある”など,ほかの方法の欠点だけを述べた解答が散見された。(2)は,正答率が高かった。初期パスワードを推定されないようにするために,ランダムな文字列や乱数を含めるべきであるということは,よく理解されていた。

設問2(3) 40字以内

本文中の下線⑤について,総当たり攻撃以外には,どのような手口で第三者にパスワードを再設定されてしまうか。40 字以内で述べよ。

解答例

  • メールを盗聴し,利用者よりも先に再設定実行ページにアクセスする手口
解説

本文の根拠

図(パスワード再設定手順)

Web アプリケーションが自動的に,パスワード再設定の申請があった旨と,パスワード再設定の実行ページの URL を,P 社に登録されている利用者のメールアドレスあてにメールで通知する。

図(パスワード再設定手順)

求人企業の利用者が,URL の示すパスワード再設定の実行ページにアクセスし,新パスワードを入力すると新パスワードが設定される。

〔求職者の個人情報の保護〕

メールが盗聴される危険性を踏まえた改善案を作成するよう命じた。

当初案では,再設定の実行ページの URL をメールで通知し,その URL にアクセスして新しいパスワードを入力するだけで再設定できる。メールには暗号化の仕組みがないので,盗聴すれば URL が分かる。URL に長いランダムな文字列を含めても,その URL 自体がメールに書かれていれば,推測できなくても,盗聴した者には関係がない。

そこで攻撃者は,利用者の ID を入力して再設定を申請させ,メールを盗聴して URL を知り,利用者よりも先にその実行ページにアクセスして新パスワードを設定する。20 分以内にアクセスがなければ URL は無効になるが,その間に先回りされると防げない。

字数は 40 字以内で,解答例は 33 字。“メールの盗聴”と“利用者より先にアクセス”の二点を入れる。総当たりの攻撃を除く,という設問の条件に合っている。

設問2(4) 40字以内

本文中の下線⑥について,Z 主任の考えた見直し案はどのようなものであったと考えられるか。40 字以内で述べよ。

解答例

  • パスワード再設定実行ページに,初期パスワードの入力を追加する。
解説

本文の根拠

〔求人企業向け Web ページのパスワード〕

初期パスワードの通知書は,パスワードを変更した後も,各利用者が保管するように P 社からお願いしている。

〔求人企業向け Web ページのパスワード〕

初期パスワードの通知書は登記事項証明書に記載された所在地気付で利用責任者あてに一括して郵送している。

問題は,メールだけで再設定が完結する点にある。メールを盗聴した第三者が,利用者になりすまして再設定できてしまう。そこで,メールとは別の経路で利用者本人だけに渡された情報を,再設定のときの本人確認に加える。本文は,初期パスワードの通知書をパスワード変更後も保管してもらうようにしており,これは郵送で届き,メールを盗聴しても得られない。よって,パスワード再設定の実行ページで,初期パスワードの入力を求める。

URL を盗聴した攻撃者は,初期パスワードを知らないので,新パスワードを設定できない。

字数は 40 字以内で,解答例は 31 字。“実行ページに”“初期パスワードの入力を追加”の二点を書く。

出典:平成22年度 春期 情報処理安全確保支援士試験 午後Ⅰ 問3(表記を一部改変)

問4 ウイルスの駆除及び感染防止

ウイルスの駆除及び感染防止に関する次の記述を読んで,設問 1~4 に答えよ。

K 社は,従業員数 1,000 名の事務機器販売会社である。K 社には,人事総務部,営業部,商品管理部,情報システム部がある。K 社のネットワークは図 1 に示すとおり,DMZ と社内ネットワークで構成されている。社内ネットワークは,内部サーバネットワークと部ごとの部門ネットワークに分割されている。社内ネットワーク上の PC から,インターネット上の Web サーバへのアクセスは,DMZ のプロキシサーバを経由して行うように,各 PC のブラウザが設定されている。

インターネットはファイアウォールに接続される。ファイアウォールは DMZ と社内ネットワークの L3SW に接続される。DMZ にはプロキシサーバ,メールサーバ,DNS サーバがある。社内ネットワークの中で,L3SW の下に,内部サーバネットワーク(L2SW に業務サーバとパッチ配信サーバ),人事総務部ネットワーク(L2SW に PC … PC),…,情報システム部ネットワーク(L2SW に PC … PC)がそれぞれ接続される。人事総務部から情報システム部までのネットワークを部門ネットワークという。凡例:L3SW はレイヤ 3 スイッチ,L2SW はレイヤ 2 スイッチ。
図 1 K 社のネットワーク(抜粋)

〔新種ウイルスの感染と駆除〕

ある日,情報システム部の A 主任は,営業部の C 課長から,PC の動作がおかしいので調べてほしいとの依頼を受けた。A 主任は,早速,C 課長の席を訪れ,PC の状態を確認したところ,全般的に動作が非常に遅く,業務に支障を来す状態となっていた。ハードウェアやソフトウェアの障害についてログを確認したが,障害発生を示す記録は見当たらなかった。そこで,A 主任は,ウイルス感染を疑い,その検査を行うことにした。K 社では,図 2 に示すウイルス駆除手順が決められており,A 主任はその手順に従って作業を進めた。

(1) 感染が疑われる PC を社内ネットワークから切断する。(2) 情報システム部では,最新のウイルス定義ファイルを入れた CD-ROM を作成し,その CD-ROM を用いて,PC のウイルス対策ソフトのウイルス定義ファイルを最新に更新する。(3) すべてのハードディスクドライブに対してウイルス検査を行い,検知されたウイルスの駆除を行う。(4) すべてのウイルスの駆除を行った後,社内ネットワークに接続する。(5) OS とアプリケーションのセキュリティパッチの適用状態を確認して,もし未適用のものがある場合は,最新のセキュリティパッチまですべてを適用する。
図 2 K 社のウイルス駆除手順

しかし,手順 (3) まで行ったが,ウイルスは検知されなかった。セキュリティパッチの適用状態を確認したところ,前月にリリースされた OS のセキュリティパッチが適用されていないことが判明した。そこで,A 主任は,PC を社内ネットワークに接続した上で,OS に対して最新のセキュリティパッチまでをすべて適用した。この時点で,PC の状態を確認したが,最初に確認したときと同様な状態であった。

A 主任は,情報システム部の B 課長に状況を説明して,指示を仰いだところ,現在導入されている I 社製ウイルス対策ソフトとは異なるベンダのウイルス対策ソフトで,ウイルス検査を試みるよう指示があった。そこで,PC を社内ネットワークから再び切断して,I 社製ウイルス対策ソフトをいったん削除した後,J 社製ウイルス対策ソフトを導入し,再度,検査を行ったところ,X ウイルスを検知したという警告が表示された。A 主任は,X ウイルスの駆除を行い,駆除が成功したと表示されたことを確認した。その後,J 社の Web サイトで,X ウイルスについて情報収集を行った。その結果,X ウイルスは新種のウイルスであることと,図 3 に示す感染方法と特徴が報告されていることが分かった。

X ウイルスは,次の二つの感染方法をそれぞれ,同一サブネット内の,自らの IP アドレスを除くすべての IP アドレスに対して,IP アドレスの昇順に試みる。感染方法 1 OS の脆弱性(1)を攻撃することによる感染:OS の脆弱性を攻撃して,感染しようとする。この動作を 10 分間隔で行う。感染方法 2 OS の管理者 ID に対するパスワード辞書攻撃による感染:OS の管理者 ID としてよく使用される識別名のアカウントに対して,よく使われる約 1,000 個のパスワードを使用した攻撃を試みて,管理者権限を取得した上で,X ウイルス自身をコピーし実行することで感染しようとする。この動作を 30 分間隔で行う。また,三つ目の感染方法として,PC に接続されたすべての USB メモリに対し,次の方法を試みる。感染方法 3 USB メモリを媒介する感染:USB メモリに X ウイルス自身のコピーと,自動実行ファイルを作成して,別の PC にその USB メモリが接続されたときに感染しようとする。感染した PC の動作の特徴として,次のことが確認されている。特徴 1 X ウイルス自身は動的リンクライブラリであり,OS のシステムプログラムの一部として起動されるので,そのプロセスの停止を行うことはできない。特徴 2 X ウイルスはインターネット上の特定の Web サーバに接続し,決められた名前のファイルをダウンロードした後,そのファイルを実行しようとする。今のところ,その Web サーバに決められた名前のファイルが存在しないので,ダウンロードは失敗する。Web サーバへの接続には,ブラウザのプロキシ設定情報を利用する。この動作を 60 分間隔で行う。注(1) この脆弱性に対するセキュリティパッチは前月にリリースされている。
図 3 X ウイルスの感染方法と特徴

〔X ウイルス駆除手順の作成〕

A 主任は,J 社製ウイルス対策ソフトをすべての PC とサーバに導入することは,費用的な問題ですぐにはできないことや,I 社製ウイルス対策ソフトでも近々検知できるようになると思われることから,C 課長以外の PC については,J 社製ウイルス対策ソフトの導入は,ひとまず行わないことにした。そこで,X ウイルスの感染方法と特徴から,X ウイルスに特化した駆除手順を作成することにした。駆除手順を作成するに当たっては,感染 PC の特定方法,X ウイルスの駆除作業,感染防止策の三つを検討した。まず,X ウイルスの感染方法と特徴を基にして,感染 PC の特定方法を検討した。X ウイルスに感染した PC の特定方法を図 4 に示す。

特定方法 1:感染方法 1 から,部門の L2SW の空きポートに接続したパケットモニタで,[ a ] パケットを監視し,連続した [ b ] に対して昇順に問い合わせ,[ c ] を要求している PC を,感染 PC として特定する。(部門の L2SW には,モニタポートは付いていない。)特定方法 2:特徴 2 から,[ d ] サーバのログ解析を行い,[ e ] に接続を試みている PC を,感染 PC として特定する。
図 4 X ウイルスに感染した PC の特定方法

X ウイルスの駆除作業については,J 社から無償で提供されている,X ウイルス専用駆除ツールを利用することにした。

感染防止策については,感染方法 1~3 に対応して,それぞれ,図 5 の感染防止策 1~3 を行うこととした。

なお,X ウイルスに感染していない PC だけではなく,①X ウイルスの駆除に成功した PC にも,図 5 の感染防止策を行うことにした。

感染防止策 1:OS とアプリケーションの脆弱性を解消するために,一時的に②特別な接続方法で社内ネットワークに接続し,内部サーバネットワーク上にあるパッチ配信サーバから,セキュリティパッチのダウンロードを行い,最新のセキュリティパッチまでを適用する。(“特別な接続方法で社内ネットワークに接続”に下線②が付いている。)感染防止策 2:[ f ]。感染防止策 3:USB メモリの使用を規則で禁止するとともに,USB メモリ接続時の自動実行機能を,PC の設定で無効化する。
図 5 X ウイルスの感染防止策

以上の検討結果を踏まえ,図 6 の駆除手順を決めた。

(1) 感染 PC を特定する。(具体的な方法は図 4 参照)(2) 感染 PC を社内ネットワークから切断する。(3) 感染 PC に,X ウイルス専用駆除ツールを利用する。(4) 駆除が成功したと表示された場合は,(5) へ進む。そうでない場合は,その PC の使用を禁止し,X ウイルス専用駆除ツールの更新を待って再度駆除を試みるか,ハードディスクドライブを初期化して,OS とアプリケーションの再インストールを行う。(5) 感染防止策 1~3 を実施する。(具体的な方法は図 5 参照)(6) 社内ネットワークに接続する。
図 6 X ウイルスの駆除手順

〔X ウイルス駆除の実行〕

A 主任は,情報システム部員とともに,まず,図 6 の (1) を実施した。その結果,営業部で使用している 180 台の PC のうち,30 台が感染 PC であることが分かった。その他の部門ネットワークで,感染 PC は発見されなかった。これら 30 台の感染 PC のうち 23 台については,前月のセキュリティパッチが適用されていなかった。残り 7 台については,OS の管理者 ID のパスワードが,感染方法 2 で使用されるパスワード辞書のものと一致していた。

また,営業部員へのヒアリング調査の結果,この X ウイルス感染は,ある営業部員が,自宅で仕事をしようとファイルを持ち帰るときに使用した,個人所有の USB メモリからの感染が発端であることが判明した。

これら 30 台の感染 PC に対して,X ウイルスの駆除手順に従って,情報システム部員が駆除作業を行い,無事,X ウイルスの駆除を完了した。また,X ウイルスに感染していない PC に対しても,感染防止策を実施し,X ウイルスへの対応を完了した。

その後,B 課長は,セキュリティパッチ適用の時期を,PC の利用者の判断にゆだねていたことが,X ウイルスの感染を広げた原因の一つと考え,K 社が保有するすべての PC への強制的なセキュリティパッチ適用と,サーバへの速やかなセキュリティパッチ適用の方法を検討するよう,A 主任に指示した。

出題趣旨(IPA)

ウイルスには,ウイルス対策ソフトで検知,駆除ができないものもあり,その場合,そのウイルスに応じた対応が必要となる。本問では,新種のウイルスの感染方法や感染後の動作の特徴などから,感染PCの特定方法や,駆除手順,再感染防止策の立案について問う。

採点講評(問全体・IPA)

問4では,新種のウイルスに感染した場合の駆除手順や再感染防止策の立案について出題した。全体として正答率は想定どおりだった。

設問と解答例

設問1 30字以内

図 3 中の特徴 2 について,感染 PC 上のファイルを攻撃者のサーバにアップロードするようなプログラムのファイルがダウンロードされた場合,どのような被害が発生する可能性があるか。30 字以内で具体的に述べよ。

解答例

  • 秘密情報の入ったファイルが攻撃者に盗まれる可能性
解説

本文の根拠

図 3 特徴 2

X ウイルスはインターネット上の特定の Web サーバに接続し,決められた名前のファイルをダウンロードした後,そのファイルを実行しようとする。

〔X ウイルス駆除の実行〕

ある営業部員が,自宅で仕事をしようとファイルを持ち帰るときに使用した,個人所有の USB メモリからの感染が発端である

特徴 2 のとおり,X ウイルスはインターネット上の特定の Web サーバから決められた名前のファイルをダウンロードして実行しようとする。今は,その名前のファイルがサーバに存在せず,失敗している。攻撃者が,感染 PC 上のファイルをアップロードするプログラムをその名前で置けば,ダウンロードされたプログラムが感染 PC で実行される。

PC には,営業部員が持ち帰って仕事をするファイルなど,秘密情報が入っている。それが攻撃者のサーバへ送られるので,被害は秘密情報の入ったファイルが攻撃者に盗まれることである。

字数は 30 字以内で,解答例は 24 字。“秘密情報(ファイル)”と“攻撃者に盗まれる”の二点を入れる。

設問2 解答欄5つ

感染 PC の特定方法について,図 4 中の a ~ e に入れる適切な字句を答えよ。a についてはプロトコル名を 5 字以内で,b,c についてはそれぞれ 10 字以内で,d については 5 字以内で,e については 20 字以内で答えよ。

〔a〕解答例

  • ARP

〔b〕解答例

  • IPアドレス

〔c〕解答例

  • MACアドレス

〔d〕解答例

  • プロキシ

〔e〕解答例

  • インターネット上の特定のWebサーバ
解説

本文の根拠

図 3

X ウイルスは,次の二つの感染方法をそれぞれ,同一サブネット内の,自らの IP アドレスを除くすべての IP アドレスに対して,IP アドレスの昇順に試みる。

図 4 特定方法 1

(部門の L2SW には,モニタポートは付いていない。)

図 3 特徴 2

Web サーバへの接続には,ブラウザのプロキシ設定情報を利用する。

特定方法 1 は,感染方法 1・2 が,同一サブネット内の IP アドレスを昇順に試すことを使う。同じサブネットの相手にパケットを送るには,その IP アドレスの MAC アドレスを ARP で調べなければならない。ARP 要求は,ブロードキャストでネットワーク全体に送られる(RFC 826)。したがって,モニタポートの無い L2SW の空きポートにパケットモニタを付けても,他の PC あての通信は見えないが,ブロードキャストされる ARP(a)は見える。感染 PC は,連続した IP アドレス(b)に対して昇順に問い合わせて,MAC アドレス(c)を要求するので,その PC を感染 PC として特定できる。

特定方法 2 は,特徴 2 を使う。Web サーバへの接続にはブラウザのプロキシ設定情報を使うので,通信は DMZ のプロキシ(d)サーバを通る。そのログを解析し,インターネット上の特定の Web サーバ(e)に接続を試みている PC を探せば,感染 PC が分かる。

字数は a が 5 字以内(解答例 3 字),b と c が 10 字以内(6 字,7 字),d が 5 字以内(4 字),e が 20 字以内(18 字)。講評は,a と c の正答率が低く,モニタポートの無い L2SW では,ブロードキャストパケットを監視しなければならないことに気づいてほしかったとしている。

採点講評(IPA)

設問2のa及びcは,正答率が低かった。モニタポートのないL2SWに接続したパケットモニタで感染PCを特定するためには,ブロードキャストパケットを監視しなければならないことに気づいてほしかった。

設問3 15字以内

本文中の下線①について,駆除に成功した PC に対して,感染防止策をとらなかった場合には,どのようなことが起こり得るか。15 字以内で述べよ。

解答例

  • Xウイルスに再び感染する。
解説

本文の根拠

〔X ウイルス駆除の実行〕

これら 30 台の感染 PC のうち 23 台については,前月のセキュリティパッチが適用されていなかった。残り 7 台については,OS の管理者 ID のパスワードが,感染方法 2 で使用されるパスワード辞書のものと一致していた。

図 6

駆除が成功したと表示された場合は,(5) へ進む。

X ウイルス専用駆除ツールが行うのは,ウイルスを取り除くことだけで,感染の原因になった脆弱性,弱い管理者パスワード,USB メモリの自動実行機能は,そのまま残る。社内には,まだ駆除されていない感染 PC や USB メモリがあるかもしれない。感染防止策をとらずに社内ネットワークへ戻すと,それらから再び攻撃され,X ウイルスに再び感染する。

図 6 の手順で,駆除が成功したと表示された PC にも (5) の感染防止策を実施するのは,このためである。

字数は 15 字以内で,解答例は 13 字。“再び感染する”が骨子で,

設問4(1) 50字以内

感染防止策 1 を実行するに当たって,下線②のように接続する必要がある。特別な接続方法を 50 字以内で具体的に述べよ。

解答例

  • 当該PCとL2SWの間にファイアウォールを設置し,通信をパッチ配信サーバとの間に限定する。
解説

本文の根拠

図 3

同一サブネット内の,自らの IP アドレスを除くすべての IP アドレスに対して,IP アドレスの昇順に試みる。

図 5 感染防止策 1

内部サーバネットワーク上にあるパッチ配信サーバから,セキュリティパッチのダウンロードを行い,最新のセキュリティパッチまでを適用する。

感染防止策 1 では,パッチが未適用の PC を,パッチ配信サーバに接続してパッチを当てる。その間 PC は脆弱なままで,通常どおりに部門ネットワークへつなぐと,同じサブネットにいる感染 PC が脆弱性を攻撃して,再び感染する。そこで,当該 PC と L2SW の間にファイアウォールを置き,通信をパッチ配信サーバとの間に限定する。こうすれば,他の PC からの攻撃は届かない。

字数は 50 字以内で,解答例は 45 字。“ファイアウォールを設置”“パッチ配信サーバとの通信に限定”の二点を入れる。講評は,X ウイルスの感染方法から,同一ネットワーク上に感染 PC がある場合に感染する可能性があることに注目してほしかったとしている。

採点講評(IPA)

設問4(1)は,正答率は低かった。Xウイルスの感染方法から,同一ネットワーク上に感染PCがある場合に,感染する可能性があることに注目して,解答してほしかった。

設問4(2) 解答欄1つ

感染防止策 2 として,f に入れる適切な字句を,30 字以内で述べよ。

〔f〕解答例

  • 管理者IDのパスワードを推測しにくいものに変更する。
解説

本文の根拠

図 3 感染方法 2

OS の管理者 ID としてよく使用される識別名のアカウントに対して,よく使われる約 1,000 個のパスワードを使用した攻撃を試みて,管理者権限を取得した上で,X ウイルス自身をコピーし実行することで感染しようとする。

〔X ウイルス駆除の実行〕

OS の管理者 ID のパスワードが,感染方法 2 で使用されるパスワード辞書のものと一致していた。

感染防止策は,感染方法 1~3 に対応して 1~3 がある。感染方法 2 は,管理者 ID に対して約 1,000 個のよく使われるパスワードを試す辞書攻撃で,管理者権限を取得して自身をコピー・実行する。実際に 7 台は,管理者 ID のパスワードがその辞書のものと一致していた。

対策は,管理者 ID のパスワードを,辞書に載らない,推測しにくいものに変更することである。

字数は 30 字以内で,解答例は 26 字(“f”の字は答えに含まれない)。“管理者 ID のパスワード”“推測しにくいものに変更”の二点を入れる。

出典:平成22年度 春期 情報処理安全確保支援士試験 午後Ⅰ 問4(表記を一部改変)