※解答はIPAのサイトを引用しておりますが、解説は独自ですので参考程度にご覧ください
(1) [a]、[b]に入る適切な文字列をそれぞれ答えよ
答: [a] < [b] >
[a]は<が入ります。「<」はhtmlの特殊文字の一つで「<(小なり)」文字を表します。ltは「less than」の略です。
[b]は>が入ります。「>」はhtmlの特殊文字の一つで「>(大なり)」文字を表します。gtは「greater than」の略です。
HTMLでは特殊な意味を持つ文字がいくつかあり、そのうち「<」と「>」は本文とタグを区切る開始と終了という特別な意味を持つ文字になります。
利用者がこの文字を利用し画面Aの備考に「<script>alert(’XSS!’)</script>」という入力した場合、画面には’XSS!’と表示され、想定していない動作を起こさせることが可能になってしまいます。
対策として「<」を「<」に、「>」を「>」にそれぞれ変換することで「<script>alert(’XSS!’)</script>」という入力があった場合、「<script>alert(‘XSS!’);</script>」と出力し、タグとしての動作を無効化(サニタイジング)することが可能です。
図3(3)にて”画面Bの備考を出力する際には、エスケープ処理が正しく行われておりXSS脆弱性は認められない”とありますので変換し、無効化(サニタイジング)していることがわかります。
よって解答の[a]には<が、[b]は>が入ります。
(2) [c]に入る適切な文字列を記号で答えよ
答: [c] エ
[c]はエ.javascript:alert(‘XSS!’)が入ります。
href属性とはHTMLに用意されている属性のひとつで、リンク先を指定する属性です。
図3(4)にて”画面B上で参考URLのリンクをクリックすると’XSS!’という内容のダイアログが表示された。”とあり、特別な対策はとられていないことがわかります。
HTMLでは属性とはタグで囲まれている範囲はすべてスクリプトとして実行されますので、利用者がこれを利用し画面Aの参考URLに次のように入力することによりスクリプトが実行されてしまいます。
<a href=”javascript:alert(‘XSS!’)>javascript:alert(‘XSS!’)</a>
このようにタグの属性部分に”javascript:alert(‘XSS!’)”を埋め込むとで’XSS!’という内容のダイアログが表示されます。
よって解答はエになります。
(1) 下線①について改修方法を具体的に述べよ
答: 入力内容をチェックし、URLのスキームがhttpまたはhttpsでない場合はエラーを返す
画面Bのように利用者が入力した値をhrefタグ内に使う場合は、事前に入力値のURLのスキームがhttpまたはhttpsであることチェックし、URLのスキームがhttpまたはhttpsでない場合はエラーを返するように改修することで図3で特定されたXSSの脆弱性の対策を行うことが可能です。具体例としては次のようなコードになります。
//URLのスキームがhttpまたはhttpsでない場合はエラーを返すコード
if ($data !~ /^(http|https):/) {
エラー
}
(2) 下線②について、実行が許可されるのはどのようなスクリプトファイルか
答: 現在のオリジンと一致するオリジンのスクリプトファイル
Content-Security-Policy (CSP) は、XSSなど特定の種類の攻撃を検知し影響を軽減するために追加できるセキュリティレイヤです。
”Content-Security-Policy:script-src ‘self’;”を設定の意味ですが、
script-src…スクリプト関連の権限を制限する
’self’…現在のオリジンと一致する※サブドメインは除外
上記より「現在のオリジンと一致するオリジンからのみスクリプトファイルの実行を許可する」という意味になります。
オリジン(Origin)とは、スキーム(プロトコル)、ホスト、ドメイン、ポート番号をつなぎ合わせたものです。
また、ホストとドメインを省略せずにつなげた記述形式のことをFQDNといいます。
例)https://www.dxnote.net:443/pre/index.htmlの場合、スキームはhttps、ホストはwww、ドメインはdxnote.net、ポート番号は443、パス名が/pre/index.htmlになり、オリジンはhttps://www.dxnote.net:443になります。
(3) 下線③について、実行が制限されてしまうのはどのようなスクリプトファイルか。また、変更後の呼び出し方法を具体的に述べよ
答: [ファイル] 現在と異なるオリジンに配置されたスクリプトファイル
[変更後の呼び出し方法] 現在のオリジンと一致する場所にスクリプトファイルを配置し、そのファイルを呼び出すよう変更する
実行が制限されてしまう[ファイル] は”現在と異なるオリジンに配置された外部スクリプトファイル”になります。
外部スクリプトファイルとはsrc属性に指定して外部ファイルから読み込むファイルのことで、次のような外部jsファイルを呼び出す記述がそれに該当します。
<script src=”http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js”></script>
この場合、現在のD社サーバのオリジンと一致せず、script-src ‘self’に違反するためにスクリプトの実行が拒否されます。
対処方法としてD社サーバと一致する場所にスクリプトファイルを配置し、そのファイルを呼び出すよう変更することでスクリプトの実行が許可されます。
例として<script src=”https://dsys.u-sya.co.jp/common/js/jquery.min.js”></script>のようなコードになります。
よって[変更後の呼び出し方法]は、現在のオリジンと一致する場所にスクリプトファイルを配置し、そのファイルを呼び出すよう変更するになります。
(1) [d]、[e]に入れる適切な字句を記号で答えよ
答: [d] ウ [e]ア
[d] にはウ.情報セキュリティ管理策が入ります。
ISO/IEC27017とは、クラウドサービスに関する情報セキュリティ対策を実施するためのガイドライン規格であり、クラウドサービスを提供する組織と利用する組織の両方を対象としています。
なお、内容を変えることなく国内規格化したものとして「JIS Q 27017:2016」があります。正式名称は次のとおりです。
■ISO/IEC27017(JIS Q 27017:2016) 情報技術ーセキュリティ技術ーISO/IEC27002に基づくクラウドサービスのための 情報セキュリティ管理策の実践の規範
[e] にはア.個人情報保護が入ります。
ISO/IEC27018は、クラウドサービス事業者がパブリッククラウド上で管理する個人情報の保護に焦点を当てたガイドライン規格です。クラウドサービスの中で、個人情報に限定した規格です。ISO/IEC27002をベースとして、クラウド上で取り扱われる個人情報を保護するためのベストプラクティスを提供しています。
(2) 下線④について、取り得る措置を述べよ
答: ファイルに対しU社が管理する鍵で暗号化してからアップロードする
Gサービスを経由してU社と協力会社との間で受け渡すファイルの内容を保護する措置については、ファイルに対しU社が管理する鍵で暗号化したうえでGサービスにアップロードする措置が考えられます。これによりGサービスの暗号化に加え、U社と協力会社のパスワードを知る社員のみにアクセス制限され、セキュリティが確保されます。
(1) [f]に入れる適切な内容で答えよ
答: [f] 同一利用者IDによるログイン失敗
表4項番1のように利用者IDを固定した状態でパスワードを変えながら突破できるまでログイン試行を続ける攻撃をブルートフォース攻撃と呼びます。この攻撃の対策は「同一利用者IDによるログイン失敗」の回数が一定回数を超えた場合、不正として検知しアカウントロックなどの対処を行うことで対策ができます。
(2) 下線⑤について、他の場合とはどのような場合か
答: アクセス元IPアドレスを変えながら、不正アクセスを続けた場合
表4項番2のように少数の決められたパスワードに対して利用者IDを変えながら突破できるまでログイン試行を続ける攻撃をリバースブルートフォースと呼びます。この攻撃の対策として、同一IPアドレスからの異なる利用者IDによるログイン失敗の回数が一定回数を超えた場合に不正として検知する対処では不十分で、「アクセス元IPアドレスを変えながら、不正アクセスを続けた場合」について検知ができません。
(1) [g]に入れる適切な内容を答えよ
答: [g] メッセージをKサービスとの間で中継
図3の(3)~(5)でオリジンbを作成している理由は、中間者攻撃による対策になります。
中間者攻撃とは、通信を盗聴し、本物の応答がクライアント端末に届く前に偽の応答を送り込むことで偽サイトに誘導するといったものがあります。
この攻撃の事前準備として攻撃者は「メッセージをKサービスとの間で中継」するためにインターネット上に不正なサーバを用意します。
そして通信を行う二者間に割り込み、通信内容を盗聴、改ざんなどをおこなう攻撃を行います。
この対策としてオリジンbを生成します。オリジンbはWebブラウザがアクセスしたWebサイトのオリジンです。
もし攻撃者が通信を盗聴し用意した「偽サイトのオリジン」をクライアントに送信した場合、最終的にKサービスのものと一致せず
なりすましや改ざんなどの不正アクセスから防げることになります。
よって、解答は「メッセージをKサービスとの間で中継」になります。
(2) [h]~[k]に入れる適切な内容を答えよ
答: [h] 生体認証 [i] Kサービス
[j] アカウントを削除 [k] アカウントを無効に
[h] には「生体認証」が入ります。
表5のスマートフォンの認証機器使用時の利用者確認で”スマートフォンに組み込まれた生体認証装置による生体認証”とあります。生体認証とは、顔、指紋、虹彩、静脈などの生体情報を使って本人を識別する仕組みです。この「生体認証」によりスマートフォンの盗難、紛失時に不正使用される可能性は低いと考えられます。
[i] には「Kサービス」、[j] には「アカウントを削除」が入ります。
退職者による不正アクセスを防ぐために、退職後は直ちに利用者認証を行っているKサービスによって退職者アカウントを削除し、退職者による情報漏えいを防ぎます。
[k] には「U社管理者へ連絡」が入ります。
USB接続外部認証器を紛失したときは、直ちに所有元であるU社の管理者へ連絡し、紛失したUSB接続外部認証器のアカウントを無効化および紛失者が別の方法で認証を行えるようにする対処が必要となります。
(3) 下線⑥のように考えた理由は何か
答: Gサービスへのアクセスを、ファイル受渡し用PCからのアクセスだけに限定できるから
3ページの[セキュリティインシデントの発生]の文中で”Dシステムの利用規約では、ファイル受渡し用PCには、各協力会社の社内への設置、並びに盗難対策、マルウエア対策及びファイルの不正持ち出し対策を求めている。また、Dシステムにはファイル受渡し用PCからだけアクセスすることを求めている”とあります。
表6のEシステムのOS内蔵の生体認証機能では”ファイル受渡し用PCが認証器を兼ねる”ことから、解答は「Gサービスへのアクセスを、ファイル受渡し用PCからのアクセスだけに限定できるから」になります。
(1) [a]~[d]に入る適切な役割を記号で答えよ
答: [a] ア [b] イ [c] イ [d] ウ
[a]はア.経営者が入ります。
リソースとは資源という意味を持ち、人材・物資・予算・時間がリソースに該当します。
経営者の説明にて”テレワークセキュリティ全般を考え、必要なリソースを確保する。”とあるように、必要な予算を確保することは「経営者」の役割となります。
[b]はイ.システム管理者が入ります。
経営者の説明にて”インシデント発生時の対処のルールを定める”とあるように、セキュリティリスクを評価・把握し、技術的なセキュリティ対策を策定し実施するのは「システム管理者」の役割になります。
また、システム管理者は実施状況について定期的に点検を行い、経営者に報告します。
[c]はイ.システム管理者が入ります。「システム管理者」は、インシデント発生を防止するためハードウエアやソフトウエア等の適切な管理を行います。 社内システムのパスワードについて制限をかけ不正アクセスを防止することはシステム管理者の役割になります。
[d]はウ.テレワーク勤務者が入ります。「テレワーク勤務者」はパスワード等の認証情報についての適切な設定及び管理を行います。
(2) [e]に入る適切な字句を答えよ
答: [e] CRYPTREC
CRYPTRECとは、電子政府推奨暗号の安全性を評価・監視し、暗号技術の適切な実装法・運用法を調査・検討するプロジェクトのことです。 CRYPTREC暗号リストとは、2003年に発表された「電子政府における調達のために参照すべき暗号のリスト(電子政府推奨暗号リスト)」を改定したものです。
※CRYPTREC暗号リストの詳細については電子政府における調達のために参照すべき暗号のリスト(令和3年4月1日最終更新)をご覧ください
(1) 図6中の下線①のネットワーク構成を示す用語を記号で選び答えよ
答: エ.ローカルブレイク
ア.OpenFlowは、SDNのひとつであり、単一のソフトウエアによりネットワーク機器を集中的に制御することができるプロトコルです。コントロールプレーン(制御機能)とデータプレーン(データ転送機能)に分離し、コントロールプレーンについては「OpenFlowコントローラ」と呼ばれる制御装置で経路制御やトラフィックを集中管理する役割を担い、データプレーンでは「OpenFlowスイッチ」と呼ばれる機器でパケットを転送します。これにより柔軟なネットワーク制御が可能になります。また、特徴として全てのネットワーク機器にフローテーブルと呼ばれるテーブルが存在し、フローエントリと呼ばれる処理ルールを設定することで独自の方式でパケット転送を実現することができます。
イ.Software-Defined Networkingは、ソフトウェアを用いてネットワークを制御する技術の総称です。
SDNは「ホップバイホップ方式」「オーバーレイ方式」「ハイブリット方式」の3つの方式に分類することができます。
・ホップバイホップ方式は、代表的なプロトコルにOpenFlowがあげられます。コントロールプレーン(制御機能)とデータプレーン(データ転送機能)に分離し、制御機能をSDNコントローラと呼ばれるソフトウエアにより一か所で集中管理することで、物理的な変更をすることなく、柔軟なパケット制御をすることが可能です。
・オーバーレイ方式は、仮想スイッチ間でIPトンネル通信を使用し、IPネットワーク上をL2のパケットをカプセル化し転送する方式です。物理ネットワークの設定を変更する必要がなく、サーバ仮想化が導入されている場合に使用されます。
代表的なプロトコルにVXLANがあげられます。VXLANはパケットをカプセル化することでL3のネットワーク上にL2ネットワークを構築できるトンネリングプロトコルです。
・ハイブリット方式は、ホップバイホップ方式とオーバーレイ方式のスイッチが接続され両方あわさった方式になります。
ウ.ゼロトラストネットワークは、ゼロトラストネットワークとは、外部ネットワーク(インターネット)と内部ネットワーク(社内LAN)との境界による防御には限界があり、 内部ネットワーク内にも脅威が存在すると考え、内部ネットワークについても決して信頼しないという考えのもとデータや機器等の単位でのセキュリティ強化を意識したネットワークのことです。
エ.ローカルブレイクアウトは、特定のサービスやアプリケーションからの決められた通信については、データセンタなどに設けられたインターネットとの接点を使わず、各拠点から直接通信するネットワーク構成です。
下線①で”Bサービスへのアクセスだけを拠点VPNサーバから、DCを経由せずに支社に施設したインターネット接続回線を経由させる”ということで、解答はエ.ローカルブレイクアウトなります。
(2) 下線②についてトラブルを引き起こした原因を具体的に述べよ
答: Bサービスのアクセス制限機能によって通信が拒否されたから
表1のBサービスの構成要素の説明で、”アクセス機能制限によって、アクセス元IPアドレスがUTMのグローバルIPアドレスの場合だけアクセスが許可される”とあります。図7新NWの構成ではローカルブレイクアウトとなり、DCを経由せずに支社に施設したインターネット接続回線を経由することになるため、アクセス元IPアドレスはDC内のUTMのグローバルIPアドレスではなく、支社ルータのWAN側のIPアドレスになります。よって解答は、UTMのグローバルIPアドレス以外のアクセスのためBサービスのアクセス制限機能によって通信が拒否されたから、になります。
(1) 下線③についてどのような設定変更か
答: マルウエア内にFQDNで指定したC&CサーバのIPアドレスの変更
”C&CサーバのIPアドレス、及びそのFQDNの正引き結果のIPアドレスの二つを合わせたIPアドレスのリストを作成し、そのリストのIPアドレスはUTMで拒否する”ということですが、DNSサーバのAレコードを変更しC&CサーバのFQDNと紐付くIPアドレスを異なるIPアドレスで応答するように設定変更した場合、作成したIPリストと一致しないため遮断することができなくなります。
(2) 下線④についてDNSシンクホール機能を有効化した場合でもUTMでの通信拒否が必要な理由を述べよ
答: C&Cサーバへの通信時にDNSへの問合せを実行しない場合があるから
DNSシンクホールとは、クライアントから悪意のあるFQDNの名前解決要求に対して、あらかじめ用意している本来とは異なったIPアドレスを応答し、悪意あるサイトへの接続を防ぐ機能です。しかし、サイトへの接続の際にFQDNでのアクセスではなく、IPアドレスを直接指定してアクセスした場合は、名前解決要求が行われないためDNSシンクホールは機能しません。そのためUTMでの通信拒否が必要となります。
(3) [f]に入れる適切な字句を答えよ
答: [f] イベントログの消去を示すログ
図8初期調査結果の[攻撃者の活動の特徴]より一部の業務PCでは全てのイベントログが消去された痕跡があった。全てのイベントログが消去された後、イベントログの消去を示すログが記録されていた。という特徴があります。そのためαログ、βログに加え消去を示すログが記録されていないかを確認する必要があります。
(4) 下線⑤について問題ないと判断されるのはPCやサーバがマルウエアβに感染後、マルウエアβがどのような挙動をしていたからか
答: 横展開機能と待機機能だけを実行していた場合
表2のマルウエアβの特徴で”PC又はサーバが感染すると、いずれかの機能を、あらかじめ定められた確率でランダムで実行する。この実行は1週間の感覚を置いて繰り返され、遠隔操作機能の実行に成功すると繰り返しの実行を停止する”とあります。つまり、横展開機能と待機機能だけを実行していた場合は遠隔操作機能の実行に失敗しているため問題ないと判断できます。
(5) 下線⑥について可能である理由を述べよ
答: UTMのIDS機能によって攻撃が検知でき、システム管理者に連絡がされるから
図4[情報連携の手順]より”連携サーバ及び連携端末にはSSHアプリケーションプログラムがされている。3時間に一度、自動的に連携端末から連携サーバにSSH通信を行い、認証に成功すると共有フォルダにあるファイルを、連携端末の特定フォルダにコピーする。”という動作になっていることが分かり、3時間間隔でしか通信が行われないため、連携サーバへの不審な通信を即座に検知することができません。連携サーバをDCのDMZに移設した場合、UTMを経由することになりますが、UTMのIDS機能にて不審な通信を直ちに検知でき、システム管理者に連絡することが可能となり、インターネットから連携サーバが攻撃を受けたときにより迅速な対応が可能になります。
(1) [g]に入れる適切な日付を答えよ
答: [g] 7月14日
表2のマルウエアβの特徴の(2)横展開機能にて、アクセス可能な機器に細工されたファイルを生成する動作をすることが分かります。このことから、いずれかのPCがマルウエアβに感染した日付から連携サーバにも細工されたファイルが置かれる可能性があると考えられます。図8初期調査結果の[タイムライン]より7月14日に業務PCがマルウエアβに感染したことが分かりますので、解答は7月14日になります。
(2) [h]に入れる適切な字句を答えよ
答: [h] IPリストに登録されたIPアドレス
表2のマルウエアβの特徴の(3)遠隔操作機能にて、マルウエアβに感染したPCはC&Cサーバと通信し、攻撃者が遠隔操作できる状態になるということが分かります。よってIPリストに登録されたIPアドレスかどうかでグループの判断が行われます。
(3) 下線⑦についてどのような通信記録があった会員が該当するか。通信記録の内容を述べよ
答: 連携端末以外の送信元からC&Cサーバ宛の通信記録
調査2のグループAと判定された記録は任意の送信元からC&Cサーバ宛へのアクセス通信記録になります。 この記録のうち”連携端末からほかのPCやサーバへの感染拡大が明らかな会員”ということで、送信元がPCやサーバがC&Cサーバ宛へ通信記録が存在した場合、連携端末が感染拡大をさせていることが分かります。よって解答は、連携端末以外の送信元からC&Cサーバ宛の通信記録になります。
(4) 下線⑧についてどのような対応か
答: 連携端末をネットワークから切り離す対応
調査2のグループAと判定された記録のある会員は任意の送信元からC&Cサーバ宛へアクセスしていたことが判明していますが、 22ページの説明にて会員にマルウエアβの感染を拡大させている可能性が指摘があったあと、Eさんは全会員に連携端末をネットワークから切り離してもらう指示をしていますので送信元が連携端末だけに限られている会員については、ほかのPCやサーバへ感染拡大をさせた可能性が低いと考えます。よって解答は連携端末をネットワークから切り離す対応になります。