情報処理安全確保支援士 2015年 秋期 午後1 問01
ソフトウェアの脆弱性への対応に関する次の記述を読んで、設問1~5に答えよ。
Q社は従業員数300名の食品販売会社であり、消費者向けにインターネットを介して健康食品を販売している。
Q社の社外向け情報システムは、販売システム(以下、Eシステムという)と広報システム(以下、Fシステムという)から成り、G社のデータセンタに設置されている。EシステムはQ社の販売チャネルの大部分を担っており、保守のための時間帯を除き、常時稼働している。Fシステムは投資家などに対する財務情報・会社情報を提供している。両システムは、Q社のシステム部が構築、運用している。
Eシステムは、Eサーバ、待機サーバ、データベースサーバ(以下、DBサーバという)などから成る。Eサーバは、Eサーバ1とEサーバ2から成る冗長構成であり、ロードバランサ(以下、LBという)によって負荷分散を行っている。待機サーバは、Eサーバ1及びEサーバ2がともに停止した際に、Eシステムの利用者に停止を告知するためのものである。Q社の社外向け情報システムのネットワーク構成を図1に示す。

Eサーバでは、HTTPサーバ、Webアプリケーションサーバ(以下、WASという)及びWebアプリケーションソフトウェア(以下、WebアプリEという)が稼働している。WebアプリEは、オープンソースソフトウェアのWebアプリケーションフレームワーク(以下、WEという)を使用して開発された。WebアプリEとWFは、WASと同じ権限で動作する。また、HTTPサーバにはオープンソースソフトウェアのWAFが付属しており、HTTPサーバの一部として動作する。WAFにはルールを設定することができるが、現在は何も設定していない。WebアプリEは、商品情報、購入者情報、購入履歴情報などが格納されたDBサーバにアクセスする。Eサーバのソフトウェア構成を表1に示す。

Fシステムは、Fサーバ1台から成る。FサーバはHTTPサーバを搭載しており、静的なHTMLコンテンツを公開している。Fサーバには、WF、WAFを導入していない。Q社では、社外向け情報システムの開発検証用に図1中のEシステム、Fシステムと同一構成のシステムをそれぞれ別に用意している。
WAFのルールの記述形式を図2に、WAFの動作を図3に示す。


〔脆弱性の確認〕
ある日、システム開発担当のS主任に別の部署の社員からWFの特定バージョン(以下、バージョンZという)の脆弱性(以下、脆弱性Xという)が公表されたという連絡があった。S主任が、Q社でのWFのバージョンZの使用の有無を調査したところ、EサーバのWFが該当していた。早速、脆弱性Xへの対応をS主任と部下のTさんとで行うことになった。
Tさんが確認したところ、次のことが分かった。
・脆弱性Xは、HTTPリクエストが適切に処理されないバグを突いて、ClassLoaderを不正に操作できるというものである。
・攻撃者が“class.classLoader”という文字列を含むHTTPリクエストを送信することによって、任意のファイルへの書込みなど、WASの動作権限で任意の攻撃コードを実行できる。
・攻撃方法及び攻撃コードが既にインターネットで公開されており、攻撃は容易である。
・修正モジュールが既に提供されている。
S主任は脆弱性Xの確認結果を経営陣に報告し、Eサーバ1及びEサーバ2を停止させるとともに、LBの設定を変えて待機サーバに切り替えた。次は、その後のS主任とTさんの会話である。
S主任:Eサーバに対して、攻撃者が脆弱性Xをどのように悪用できるのか具体的に説明してくれるかな。
Tさん:表2の攻撃コードの例を使って説明します。攻撃者は攻撃コードを表2の項番の順にEサーバに送ることで、任意のコマンド“XXXX”を実行できます。表2の攻撃コードの送信後、WASのアクセスログ(以下、WASログという)のファイルがaに作成されます。今回の脆弱性情報によると、GETメソッドに限らずPOSTメソッド、Multipart/form-dataのPOSTメソッド、Cookieによる攻撃の可能性もあります。さらに、攻撃者がWASログを細工する可能性もあります。
S主任:それでは、攻撃の有無を確認するには、WASログだけでなく、社外向け情報システムの全サーバとFWのログも調査する必要があるね。

S主任とTさんは念のため、Q社の社外向け情報システムの全サーバとFWのログを調査したが、不審な内容は見つからなかった。
〔脆弱性への対策〕
S主任とTさんは、脆弱性Xへの対策として、修正モジュールによる方法とWAFによる方法の二つを比較検討した。Q社では、ビジネス上の理由から、Eシステムを5日以内に再稼働させる必要がある。しかし、修正モジュール適用後のWebアプリEの動作検証に10日間を要することが分かった。一方、WAFによる対策は、脆弱性Xを悪用した攻撃を防ぐ効果があり、動作検証を含めて2日間で実施可能と分かった。
そこで、WAFによる対策について、更に検討することにした。次は、WAFのルールについてのS主任とTさんの会話である。
S主任:WAFでは、どのようにルールを記述するのかな。
Tさん:表3のように記述します。表3の[パターン]列には、正規表現で示された文字列を指定します。当初、①“^class¥..*”という[パターン]がセキュリティ専門家によって公表されましたが、これでは遮断されない攻撃が見つかりました。その後、表3に示す正しい[パターン]が別のセキュリティ専門家によって公表されました。

S主任:では、表3どおりに記述することにしよう。他に注意することはあるかな。
Tさん:攻撃ではないHTTPリクエストを遮断してしまうhに注意する必要があります。例えば、表3のルールでは、“class.abc”を含むHTTPリクエストが遮断されてしまいます。さらに、WAFによる対策に加えて、攻撃時のリスク軽減対策として、②現在のWASの動作権限設定を見直します。
S主任は、修正モジュールが提供されている場合は、一般的には修正モジュール適用による対策が望ましいが、本ケースではWAFによる対策を選択すべきと判断し、経営陣に説明して了承を得た。開発検証用のシステムで③動作検証を実施し、問題ないことを確認後、本番環境のシステムで設定を行い、Eシステムを再稼働させた。本来ならば、追加したWAFのルールで攻撃を遮断する前に、④本番環境のシステムに追加したルールの[動作]に“検知”を指定し、一定期間運用するのが望ましい。しかし、今回は緊急対応のため、そのような運用はしなかった。
その後、Q社では、脆弱性Xの修正モジュール適用による悪影響がないことを確認し、それを適用した。
設問1:
Eシステム及びFシステムそれぞれについて、Q社のビジネスを踏まえて、情報セキュリティの3要素のうち重視すべき要素とその理由を、重視すべき要素は5字以内、理由は25字以内でそれぞれ述べよ。
模範解答
Eシステム:要素:可用性
理由:販売チャネルの大部分を担い、常時稼働が必要なため
Fシステム:要素:完全性
理由:投資家に正確な財務情報、会社情報を提供するため
解説
解答の論理構成
-
まず、Eシステムが担う役割を確認します。問題文には
「“EシステムはQ社の販売チャネルの大部分を担っており、保守のための時間帯を除き、常時稼働している。”」
とあります。売上に直結し、停止がそのまま機会損失になるため最優先は可用性です。 -
次に、Fシステムの役割を確認します。問題文には
「“Fシステムは投資家などに対する財務情報・会社情報を提供している。”」
とあります。投資家に対して誤った数値を出すことは企業価値や法令遵守に影響します。そこで最重要は完全性です。 -
以上より、情報セキュリティの3要素(機密性・完全性・可用性)のうち
・Eシステム:可用性
・Fシステム:完全性
を重視するという解答に至ります。
誤りやすいポイント
- 可用性と完全性を逆にしてしまう
「常時稼働」のキーワードを見落とし、Eシステムでも数値を扱うから完全性と誤解しがちです。 - Fシステムを“公開サイトだから可用性”と短絡的に判断する
公開はしているものの、投資関連情報の正確さが最重要である点を逃さないことが必要です。 - 機密性を選んでしまう
いずれの説明文にも“秘匿”や“個人情報”といった機密性を最優先する根拠が提示されていない点に注意します。
FAQ
Q: Eシステムは顧客の個人情報も扱いますが、なぜ機密性ではないのですか?
A: 個人情報保護も重要ですが、問題文が強調しているのは「販売チャネルの大部分」「常時稼働」です。最も重視するものを一つ選ぶ設問なので可用性を優先します。
A: 個人情報保護も重要ですが、問題文が強調しているのは「販売チャネルの大部分」「常時稼働」です。最も重視するものを一つ選ぶ設問なので可用性を優先します。
Q: Fシステムでも可用性は必要では?
A: もちろん稼働は必要ですが、投資家向け情報は停止より誤情報の方が影響が大きいと判断できます。したがって完全性が最重視となります。
A: もちろん稼働は必要ですが、投資家向け情報は停止より誤情報の方が影響が大きいと判断できます。したがって完全性が最重視となります。
Q: もし三要素すべてを等しく守るならどう選べばいいですか?
A: 出題意図は“優先度”を問うことです。業務影響の大きさを比較し、最重要要素を一つ選択できるかがポイントです。
A: 出題意図は“優先度”を問うことです。業務影響の大きさを比較し、最重要要素を一つ選択できるかがポイントです。
関連キーワード: 可用性、完全性、販売システム、財務情報、正確性
設問2:
本文中のaに入れる適切な字句を、表2中の字句を用いて15字以内で答えよ。
模範解答
a:公開ディレクトリ
解説
解答の論理構成
- 問題文には「表2の攻撃コードの送信後、WASのアクセスログ(以下、WASログという)のファイルがaに作成されます。」とあります。
- 表2の項番1の説明は「WASログの出力先を公開ディレクトリ上に変更する。」であり、ここで “公開ディレクトリ” という言葉が明示されています。
- 攻撃コードがログ出力先を “公開ディレクトリ” に変更してから任意コードを埋め込む流れであるため、a には攻撃者が意図的に設定したこの場所をそのまま入れるのが妥当です。
- したがって、a に入る字句は「公開ディレクトリ」です。
誤りやすいポイント
- 「webapps/ROOT」を直接答えにしてしまう
└ 説明文ではあくまでも “公開ディレクトリ” と表現しており、ディレクトリ名そのものを聞いているわけではありません。 - “ログファイル格納先” など抽象的に書く
└ 問題は具体的な字句を求めており、表2で明示された言葉をそのまま使う必要があります。 - “公開フォルダ” と書き換える
└ 固有表現を変更すると減点対象になります。
FAQ
Q: なぜ “公開ディレクトリ” と呼ばれるのですか?
A: HTTPサーバが外部公開用コンテンツを配置する領域であり、ブラウザが直接アクセスできるため “公開” の語が付いています。
A: HTTPサーバが外部公開用コンテンツを配置する領域であり、ブラウザが直接アクセスできるため “公開” の語が付いています。
Q: “webapps/ROOT” と “公開ディレクトリ” は同じものですか?
A: 今回のシステム構成では “webapps/ROOT” が公開ディレクトリとして機能していますが、問題文は一般名称である “公開ディレクトリ” を使っています。
A: 今回のシステム構成では “webapps/ROOT” が公開ディレクトリとして機能していますが、問題文は一般名称である “公開ディレクトリ” を使っています。
Q: ログを公開ディレクトリに出力すると何が危険なのですか?
A: JSP など動的スクリプトを含むログファイルが外部から直接呼び出せるため、攻撃者が任意のコードを実行できてしまいます。
A: JSP など動的スクリプトを含むログファイルが外部から直接呼び出せるため、攻撃者が任意のコードを実行できてしまいます。
関連キーワード: WAF, 正規表現、クラスローダ、ログ改ざん、公開ディレクトリ
設問3:〔脆弱性への対策]について、(1)〜(4)に答えよ。
(1)表3中のb〜gに入れる適切な字句を、図2中の字句を用いて答えよ。(b, d, fは順不同)
模範解答
b:ANY
c:遮断
d:COOKIE
e:遮断
f:Multipart
g:遮断
解説
解答の論理構成
-
【問題文】には「GETメソッドに限らずPOSTメソッド、Multipart/form-dataのPOSTメソッド、Cookieによる攻撃の可能性もあります。」とあり、攻撃はあらゆる HTTP リクエストに潜む可能性が示されています。
-
図2の説明では、[検証対象] に指定できる語として「GET」「POST」「ANY」「COOKIE」「Multipart」が列挙されています。
-
攻撃コードを完全に遮断したいので、[動作] は図2に定義されている「遮断」を用います。
-
以上を踏まえ、表3の各行の意図を整理すると次のとおりです。
- 行1は「任意のメソッドのパラメタ名」を対象にする必要があるため [検証対象]=「ANY」。攻撃は防御したいので [動作]=「遮断」。
- 行2は Cookie 由来の攻撃を想定しているため [検証対象]=「COOKIE」。同じく [動作]=「遮断」。
- 行3は 「Multipart/form-data のフィールド名」を対象とするため [検証対象]=「Multipart」。同じく [動作]=「遮断」。
-
したがって、空欄は
b:ANY
c:遮断
d:COOKIE
e:遮断
f:Multipart
g:遮断
誤りやすいポイント
- ANY を「GET と POST の両方を対象にする語」と誤解し、Multipart や Cookie を別途カバーできていない回答をしてしまう。
- 図2の [動作] に「検知」もあるため、緊急対応であっても遮断ではなく検知を選んでしまう。
- Multipart と POST を混同し、Multipart の欄に POST を記入してしまう。
FAQ
Q: そもそも ANY と GET/POST を重ねて書く必要はないのですか?
A: ANY は「任意のメソッドのパラメタ名」をひとまとめに対象にします。GET・POST だけでなく将来追加されるメソッドも一括でカバーできるため、本問では ANY 1行で十分です。
A: ANY は「任意のメソッドのパラメタ名」をひとまとめに対象にします。GET・POST だけでなく将来追加されるメソッドも一括でカバーできるため、本問では ANY 1行で十分です。
Q: どうして検知ではなく遮断を選んだのですか?
A: 【問題文】で「攻撃は容易である」「ビジネス上の理由から、Eシステムを5日以内に再稼働させる」と緊急性が強調されており、被害を即時防止する必要があります。このためログだけを残す検知ではなく遮断を設定します。
A: 【問題文】で「攻撃は容易である」「ビジネス上の理由から、Eシステムを5日以内に再稼働させる」と緊急性が強調されており、被害を即時防止する必要があります。このためログだけを残す検知ではなく遮断を設定します。
Q: Multipart を POST が兼ねていると思っていました。別に定義する理由は?
A: Multipart/form-data はファイルアップロードなどに用いられ、図2には「Multipart」が独立して指定可能と明記されています。Multipart を POST と同一視すると、ファイルアップロード経由の攻撃を取りこぼす恐れがあります。
A: Multipart/form-data はファイルアップロードなどに用いられ、図2には「Multipart」が独立して指定可能と明記されています。Multipart を POST と同一視すると、ファイルアップロード経由の攻撃を取りこぼす恐れがあります。
関連キーワード: 正規表現、WAF, HTTPメソッド、Cookie, ファイルアップロード
設問3:〔脆弱性への対策]について、(1)〜(4)に答えよ。
(2)本文中の下線①に示した[パターン]にマッチする文字列を解答群の中から全て選び、記号で答えよ。
解答群
ア:anObject.class.classLoader
イ:class.ClassLoader
ウ:class.classLoader
エ:class['classLoader']
模範解答
イ、ウ
解説
解答の論理構成
- 【問題文】には、下線①として【引用】「①“^class¥..*”という[パターン]」が示されています。
- 図2で正規表現の要素が定義されており、該当部分を引用すると
・【引用】「^ :文字列の先頭にマッチする。」
・【引用】「¥. :“.”とマッチする。」
・【引用】「* :直前の要素と0回以上マッチする。」
です。 - したがって ① の意味は
- ^…文字列の先頭
- class…文字列 class
- ¥.…直後にドット .
- .*…その後に 0 文字以上の任意文字列
で構成され、「文字列の先頭が “class.” で始まるすべての文字列」に一致します。
- 解答群を検証すると
- ア:anObject.class.classLoader → 先頭が class でないため不一致
- イ:class.ClassLoader → 先頭が class. で始まるため一致
- ウ:class.classLoader → 先頭が class. で始まるため一致
- エ:class['classLoader'] → class の直後が [ でドットが無いので不一致
- よって、①の[パターン]にマッチする文字列は【解答】「イ、ウ」となります。
誤りやすいポイント
- .* の意味を「ドットを含む文字列」と誤解し、class['classLoader'] を選んでしまう。
- ¥. の存在を見落とし、ドットの有無を確認しないまま anObject.class.classLoader を選択する。
- ^ を無視して「途中に class. があれば良い」と判断してしまう。
FAQ
Q: .* にはドットが含まれても良いのですか?
A: はい。.* は「ドットを含む任意の文字列」を表すので、ドットの有無は問いません。ただしその前に必ず class. が必要です。
A: はい。.* は「ドットを含む任意の文字列」を表すので、ドットの有無は問いません。ただしその前に必ず class. が必要です。
Q: 大文字小文字は区別されますか?
A: 正規表現にその指定が無いのでデフォルトでは区別します。解答群に大文字小文字混在がありますが、class 部分はすべて小文字なので問題ありません。
A: 正規表現にその指定が無いのでデフォルトでは区別します。解答群に大文字小文字混在がありますが、class 部分はすべて小文字なので問題ありません。
Q: ^class¥..* と似たパターンで ¥W を使うとどう違いますか?
A: ¥W は「非英数字」を示すため、ドット以外の区切り文字でもマッチします。今回のパターンはドットに限定している点が異なります。
A: ¥W は「非英数字」を示すため、ドット以外の区切り文字でもマッチします。今回のパターンはドットに限定している点が異なります。
関連キーワード: 正規表現、WAF, パターンマッチ、文字列先頭、例外処理
設問3:〔脆弱性への対策]について、(1)〜(4)に答えよ。
(3)本文中のhに入れる適切な字句を解答群の中から選び、記号で答えよ。
解答群
ア:フェールセーフ
イ:フェールソフト
ウ:フォールスネガティブ
エ:フォールスポジティブ
模範解答
h:エ
解説
解答の論理構成
- まず本文には
“攻撃ではないHTTPリクエストを遮断してしまうhに注意する必要があります。”
とあります。 - これは「本来通過させるべき正常な通信を誤って遮断してしまう」状況を指しています。
- 一般にセキュリティ製品で
・正常通信を“攻撃”と誤認 → フォールスポジティブ(False Positive)
・攻撃通信を“正常”と誤認 → フォールスネガティブ(False Negative)
と呼び分けます。 - 選択肢を見ると、正常通信を遮断するケースに該当するのは “エ:フォールスポジティブ” です。
- よって h には “フォールスポジティブ” が入ります。
誤りやすいポイント
- 「フォールスネガティブ」と取り違える
攻撃を見逃すケース(検知しない)がフォールスネガティブであり、本文の状況とは逆です。 - “フェールセーフ/フェールソフト”との混同
これらは障害時のシステム挙動を示す設計思想で、検知精度の話ではありません。 - 「遮断=安全だから正しい」と短絡する
過剰遮断は可用性を損ね、業務影響が大きいことを踏まえる必要があります。
FAQ
Q: ルール適用前に “検知” 動作で運用する理由は?
A: “フォールスポジティブ”を把握し、本番影響を最小化するためです。まず記録だけ行って誤検知を洗い出し、調整後に“遮断”へ切り替えます。
A: “フォールスポジティブ”を把握し、本番影響を最小化するためです。まず記録だけ行って誤検知を洗い出し、調整後に“遮断”へ切り替えます。
Q: フォールスポジティブを削減する一般的な方法は?
A: ホワイトリスト方式の導入、正規表現のチューニング、シグネチャの優先順位付け、学習型WAFの導入などが挙げられます。
A: ホワイトリスト方式の導入、正規表現のチューニング、シグネチャの優先順位付け、学習型WAFの導入などが挙げられます。
Q: フォールスポジティブが多いときの業務上のリスクは?
A: 正常取引まで止まることで顧客離脱や売上減少が発生し、担当者の対応負荷も増加します。可用性確保とセキュリティのバランスが重要です。
A: 正常取引まで止まることで顧客離脱や売上減少が発生し、担当者の対応負荷も増加します。可用性確保とセキュリティのバランスが重要です。
関連キーワード: WAF, 正規表現、フォールスポジティブ、侵入検知、ログ解析
設問3:〔脆弱性への対策]について、(1)〜(4)に答えよ。
(4)本文中の下線②について、設定をどのように見直すべきか。25字以内で述べよ。
模範解答
WAS を必要最小限の権限で動作させる。
解説
解答の論理構成
- 【問題文】には、脆弱性 X を悪用すると「任意のファイルへの書込みなど、WASの動作権限で任意の攻撃コードを実行できる」とあります。
- さらに、表1では「WAS」の「現在の動作権限設定」が「管理者権限」と示されており、攻撃成功時にシステム全体へ深刻な影響が及ぶ状態です。
- 本文中の下線②には「現在のWASの動作権限設定を見直します」と記されており、見直しの方向性としては権限を下げる以外にありません。
- 以上より、攻撃コード実行後の被害を最小化するためには「WAS を必要最小限の権限で動作させる」ことが最適解となります。
誤りやすいポイント
- 「OS」や「HTTPサーバ」の権限を変更すると誤解しがちですが、指定対象は下線②が示す「WAS」です。
- 「WAF を導入したから権限制御は不要」と考えるのは誤りです。多層防御の観点から権限の縮小も必須です。
- 「一般ユーザ権限で動かす」と断定すると、サービスに必要な権限まで失う可能性があります。「必要最小限の権限」と抽象度を保つことが重要です。
FAQ
Q: なぜ「管理者権限」を維持したままでも WAF で防げるのでは?
A: WAF による対策が回避される可能性や未知の脆弱性に備え、被害発生時の影響範囲を縮小する「最小権限」が安全設計の基本だからです。
A: WAF による対策が回避される可能性や未知の脆弱性に備え、被害発生時の影響範囲を縮小する「最小権限」が安全設計の基本だからです。
Q: 具体的にはどのように権限を下げればよいですか?
A: OS のサービスアカウントを専用ユーザに変更し、書込み・実行ディレクトリを限定します。管理者権限グループから除外し、必要なポートやファイルだけにアクセス許可を与えます。
A: OS のサービスアカウントを専用ユーザに変更し、書込み・実行ディレクトリを限定します。管理者権限グループから除外し、必要なポートやファイルだけにアクセス許可を与えます。
Q: 権限を下げると運用に支障が出ませんか?
A: 事前にテスト環境で動作確認を行い、サービス実行に必須な権限を洗い出すことで、本番環境でも問題なく運用できます。
A: 事前にテスト環境で動作確認を行い、サービス実行に必須な権限を洗い出すことで、本番環境でも問題なく運用できます。
関連キーワード: 最小権限、特権分離、WAF, 脆弱性対策
設問4:
本文中の下線③について、WAFに関して具体的に何を検証すべきか。二つ挙げ、それぞれ30字以内で述べよ。
模範解答
①:脆弱性Xを突く攻撃を防げること
②:Eシステム利用のための正常な通信が許可されること
解説
解答の論理構成
- まず設問は「本文中の下線③」―すなわち
「開発検証用のシステムで③動作検証を実施し、問題ないことを確認後」と示された工程で、WAFに対して“何を”検証すべきかを問うています。 - 文中で WAF ルールについて説明する部分に
「Tさん:攻撃ではないHTTPリクエストを遮断してしまうhに注意する必要があります。」
とあり、誤遮断(フェールス・ポジティブ)への懸念が明示されています。 - さらに脆弱性 X への対策目的として
「WAFによる対策は、脆弱性Xを悪用した攻撃を防ぐ効果があり」
と記されています。 - よって動作検証では以下の2点を確認しなければなりません。
- 新ルールが “脆弱性Xを突く攻撃” を確実に遮断できること
- 同時に “Eシステムを通常利用する正当な通信” が阻害されないこと
- これを 30 字以内でまとめると模範解答の
「①:脆弱性Xを突く攻撃を防げること」
「②:Eシステム利用のための正常な通信が許可されること」
となります。
誤りやすいポイント
- 攻撃遮断だけに着目し、業務トラフィックが通るかの検証を漏らす。
- ④で触れられる “検知モード運用” と ③の “動作検証” を混同し、ルール順序やログ出力を検証項目に挙げてしまう。
- 「POST だけ」「GET だけ」など特定メソッドだけを対象にしてしまい、本文で警告されている「POSTメソッド、Multipart/form-dataのPOSTメソッド、Cookieによる攻撃の可能性」を見落とす。
FAQ
Q: 動作検証では負荷試験やパフォーマンス確認も必須ですか?
A: 本設問は“WAFルールが適切に機能するか”の確認が焦点であり、性能評価までは要求されていません。
A: 本設問は“WAFルールが適切に機能するか”の確認が焦点であり、性能評価までは要求されていません。
Q: ルールの [動作] を一度 “検知” にしてから “遮断” へ変更する手順は検証項目ですか?
A: ④で触れられる推奨運用ですが、③の動作検証そのものでは “遮断できる”“正常通信を通す” の2点が主体です。
A: ④で触れられる推奨運用ですが、③の動作検証そのものでは “遮断できる”“正常通信を通す” の2点が主体です。
Q: 正規表現の書式誤りも検証対象に含めるべきでしょうか?
A: 書式誤りはルールがそもそも動作しないため、結果的に“攻撃が防げるか”で検出できます。設問の趣旨は機能面の2点です。
A: 書式誤りはルールがそもそも動作しないため、結果的に“攻撃が防げるか”で検出できます。設問の趣旨は機能面の2点です。
関連キーワード: WAF, 正規表現、フェールス・ポジティブ、パラメータ検証、攻撃遮断
設問5:
本文中の下線④について、WAFのルールの[動作]に“検知”を指定し、一定期間運用することにはどのような利点があるか。45字以内で述べよ。
模範解答
販売機会損失など、ビジネスへの影響を与えずに誤検知の検証ができる。
解説
解答の論理構成
- 原文では、WAFのルールは通常 “遮断” で本番導入する前に “検知” で様子を見る運用が推奨されています。
引用:
「④本番環境のシステムに追加したルールの[動作]に“検知”を指定し、一定期間運用するのが望ましい。」 - “検知” 動作は「通信を通過させ、ログに記録する」(図2)ため、ビジネスに影響を与えずにデータだけ取得できます。
引用:
「[動作]には…検知:通信を通過させ、ログに記録する。」 - この運用により、実利用トラフィックでルールが誤ってマッチしないかを安全に確認できます。もし誤検知が多い場合でも遮断しないため「販売チャネルの大部分を担う」Eシステムへの影響を回避できます。
引用:
「EシステムはQ社の販売チャネルの大部分を担っており…常時稼働している。」 - したがって、利点は「ビジネスへの影響を与えずに誤検知を検証できる」点に集約され、模範解答の内容となります。
誤りやすいポイント
- “検知” と “遮断” の違いを混同し、「攻撃を防げる」と答えてしまう。
- 「一定期間運用=攻撃を受ける期間が延びる」と誤解し、利点を否定的に書く。
- 利点を「ログが取れる」だけにとどめ、なぜそれが重要か(ビジネス影響の回避)まで言及しない。
FAQ
Q: なぜ開発検証用システムだけでなく本番でも “検知” 運用が必要ですか?
A: 開発検証環境では実トラフィック量・種類が限られるため、本番で初めて現れる想定外のリクエストが誤検知を引き起こす可能性があるからです。
A: 開発検証環境では実トラフィック量・種類が限られるため、本番で初めて現れる想定外のリクエストが誤検知を引き起こす可能性があるからです。
Q: “検知” 期間中に実際の攻撃を受けたらどうなりますか?
A: ルールにマッチした攻撃は通過しますがログは残るため、直ちに遮断へ切り替える判断材料を得られます。
A: ルールにマッチした攻撃は通過しますがログは残るため、直ちに遮断へ切り替える判断材料を得られます。
Q: どのくらいの期間 “検知” で運用すればよいのですか?
A: 通常は業務サイクルを一巡させ、主要機能が全て実行される期間(例:数日〜数週間)を目安にします。
A: 通常は業務サイクルを一巡させ、主要機能が全て実行される期間(例:数日〜数週間)を目安にします。
関連キーワード: WAF, 誤検知、ログ分析、本番運用、影響評価


