情報処理安全確保支援士の令和3年度 春季試験 午後Ⅱ 問1問題の解説を行っていきます。
ネットワークスペシャリスト・情報処理安全確保支援士に最短・最速で合格する方法についてはこちら
出題テーマ『パスワードリスト攻撃』・『セキュリティインシデント対応』
出題テーマの1つ目は『パスワードリスト攻撃』です。
近年行われている攻撃手法の1つです。
詳細については問題として問われていますので解説の際にご紹介します。
2つ目は『セキュリティインシデント対応』です。
『セキュリティインシデント対応』は実際に攻撃を受け実害が発生したインシデント発生時にどう対応していくかの対応方針です。
全体を通して数問は知識が必要となってきますが、文中のヒントから回答できる設問だけで合格点が達する国語の問題ということができます。
設問1 (1)
『パスワードリスト攻撃とは?』という知識の問題となっています。
パスワードリスト攻撃とは、あるサイトでIDとパスワードが漏洩した際に、攻撃者は漏洩したIDとパスワードの組み合わせ(パスワードリスト)を用いて別のサイトへログインを試みことです。
ということで解答例としては『あるサイトで漏洩したIDとパスワードのリストを使用して、別のサイトにログインを試みる攻撃(44文字)』となります。
漏洩したパスワードリストはダークウェブなどで販売されるケースもあります。
自分のIDとパスワードが漏洩しているかはこちらのサイトにメールアドレスを入力することで簡単に確認することができます。
Google Chromeをご使用の場合は『パスワードの確認』という警告を表示してくれます。
設問1 (2)
パスワードリスト攻撃を知っていること前提の内容ですので、こちらも知識の問題となります。
パスワードリスト攻撃はあるサイトから漏洩したIDとパスワードを使用して、他のサイトでそのIDとパスワードを使用してログインを試みるというものです。
サイトAとサイトBのIDとパスワードを共通のものに設定しているとログインされてしまいますが、別のパスワードを使用していれば、ログインはされません。
ということで解答例としては、『サイトごとにそれぞれ異なるパスワードを設定すること(25文字)』と導き出すことができます。
現実問題として、パスワードは共有のものにしてしまっている場合が多いかと思います。
パスワードを共有にしないということを記憶だけで行うのは不可能で、共有しないためにはブラウザに覚えさせたり、『1Password』などのパスワード管理サービスを使用するなどが挙げられます。
設問1 (3)
この問題は答えが2つあり、そのどちらかを回答できればよいのですが、どちらも知識が必要となる問題となっています。
解答①
IPアドレスに登録された情報から国や地域を特定することができるジオロケーションという技術があります。
この技術を用いれば、普段は東京からアクセスされていたが、海外からのアクセスを行われたなどがあれば普段と異なる環境からのアクセスなのでは?と判断することができます。
解答例としては、『IPアドレスに紐づくジオロケーションから普段と異なる環境から行われたと判断をする。(41文字)』となります。
国や地域が特定できるとありますが、東京、千葉、神奈川など都道府県単位となりますので、住所が特定されるまでは起こりえませんのでご安心ください。
こちらのサイトで今お使いのグローバルIPアドレスのジオロケーションを確認することができますので興味があれば見てみてください。
解答②
以前ログインしたサイトを訪れるとIDとパスワードを入力しなくてもログインしている状態で閲覧できたり、Amazonや楽天などでカートに追加して、後日再度訪れた際にカートに入れ直すこともせず、カートには以前追加した商品が入っていることを経験したことがありますでしょうか。
これをどうやって実現しているのだろうと考えたことはありますでしょうか。
TCPはセッションを持ちますが、一定期間通信が行われなければセッションはクローズされてしまい、情報を保持し続けるということが難しくあります。
HTTPの場合はセッションという概念がありませんので、この情報をちょうだいというリクエストとサーバからのレスポンスを持ってやり取りは終了してしまいます。
では、サービス側はどのようにして、『このユーザだからこの情報だ』と判断しているのでしょうか。
答えは『Cookie』です。(正確には実現している技術がいくつかある中で、その中の1つ方法としてCookieが挙げられます。)
初回の通信時にサーバはクライアントにCookieを渡します。
このCookieにはユーザを特定するセッションIDが保持されており、次回アクセスする際にクライアントは受け取ったCookieをサーバへHTTPリクエストと一緒に渡します。
受け取ったCookieからサーバはユーザを特定することができ、過去のログイン状態やカート状態などを表示させることができます。
過去にアクセスしたことがあればCookieはあるはずですので、Cookieがない状態でのアクセスがあった場合は普段と異なる環境からのアクセスなのでは?と考えることができます。
ということで、『通信の際Cookieの有無で過去にログインがあった端末からのアクセスかを判断する。(41文字)』
設問1 (4)
知識の問題ですが、これは一般常識レベルの知識ですので解答することは難しくないと思います。
答えは『タイムゾーン』です。
ログにおいて、いつ発生したかを確認することができるタイムゾーンは超重要です。
今回のように海外に拠点がある場合はタイムゾーンがバラバラになっていることがよくあります。
バラバラの場合は頭で計算しながらログを見るという手間がかかりますので、世界標準時(UTC)もしくは日本標準時(JST)のどちらかで統一するという設定が一般的かと思います。
設問1 (5)
知識の問題ですが、こちらも一般常識というか地理の知識です。
世界標準時(UTC)と日本の標準時(JST)は9時間の時差がありますので、答えは『9』です。
現実問題としてはサマータイムがありますので、国際とくにヨーロッパとのやりとりの際は考慮する必要があります。
設問2
こちらは文章中のヒントから論理的に考えることで解答することができます。
図2の注記2を確認しますと、『店舗管理システムと社内LANとは、ネットワークが分離されている。』と記載があります。
図2の構成図を確認しましても、社内LANと店舗管理LANは完全に切り離されていますので、ネットワーク的にアクセスすることができないことがわかります。
更に注記2を読み進めていきますと、『店舗管理システムと社内LANとの間でデータの受渡しが必要な場合は、USBメモリを用いる。』と記載があります。
店舗管理システムと社内LANの唯一の接点がUSBメモリによるやりとりですので、
解答例としては『社内LANとのデータの受渡しに用いるUSBメモリ経由でマルウェアに感染したファイルを移してしまうこと(50文字)』と導き出すことができます。
設問3 (1)
表2記載のcの役割としては『基本方針の策定やN社インシデント対応ポリシの承認を担当する。』と記載があります。
図6を確認します。
(3)の文章内に『その他の権限が必要な場合は、N-CSIRT長は、情報セキュリティ委員会の承認を得る。』と記載があります。
(5)の文章内にも『不特定多数への情報開示は、事前に情報セキュリティ委員会の承認を得る。』とも記載があります。
N-CSIRTの行動に対して承認を行っている部署は『情報セキュリティ委員会』なので、答えは『情報セキュリティ委員会(オ)』と解答することができます。
設問3 (2)
インシデント対応のライフサイクルという言葉を知らなくても論理的に考えてあげることで解答することができます。
図7の空白でない箇所を確認すると、最初に『準備』を行い、2番目は空白となっていて、3番目に『封じ込め』と『復旧』を行い、最後に『事後活動』を行っています。
選択肢を確認していきますと『開示(ア)』、『トレーニング(エ)』、『復習(オ)』、『レビュー(キ)』、インシデントが発生している最中にトレーニングや復習なんて流暢なことをしていられませんし、開示するよりも対応が先ですし、レビューに関しても対応が終わった後ですので、これらはインシデント対応がすべて終わった後に行う『事後活動』の内容であることがわかります。
残った選択肢としては、『検知(イ)』、『根絶(ウ)』、『分析(カ)』となります。
3番目に行っている行動としては『封じ込め』、『復習』と何か実際に対応を行っています。
残った選択肢の中で実際に対応を行っているはf:『根絶(ウ)』となります。
残ったdとeは順不同で『検知(イ)』と『分析(カ)』となります。
設問4 (1)
図8を確認しますと『N社でもV社でもない複数のIPアドレスからSSH接続があり』と記載があります。
図9の中でサービスでSSHと記載があるものをピックアップします。
そして、図2の注記4にN社とV社のグローバルIPアドレスの記載がありますので、これらを除くと『5』IPアドレスということが導き出せます。
設問4 (2)
『/etc/shadow』ファイルの特性を知っている必要がある知識の問題ですが、推測することで解答は導き出すことができるかと思います。
『/etc/shadow』はLinuxにおけるユーザIDとパスワードなどを管理している重要なファイルです。
ルート権限のユーザで閲覧することができますが、ユーザ権限(利用者アカウントの権限)では閲覧することすらできません。
この特性を知っている場合はそのまま解答して頂ければと思いますが、知らなくても推測することで解答することができます。
表3の脆弱性Mについての概要を確認すると、『開発支援ツールJを実行している利用者アカウントの権限で任意のコマンドを実行できる。』と記載がありますので、脆弱性Mを利用して行えるのは利用者アカウント権限までであることがわかります。
図4の(3)に『SSH接続でR1サーバにログインするための認証情報は、”/etc/shadow”ファイルに格納されている。具体的には利用者アカウント、利用者アカウントごとに異なるソルト値、及びソルト値と平文パスワードから計算したハッシュ値が含まれている』と記載があります。
ユーザIDやパスワードが含まれている重要なファイルである『/etc/shadow』の閲覧(参照)には管理者権限が必要なのではと考えることができます。
ということで、解答例として『脆弱性Mは利用者アカウントの権限でコマンドが実行可能で、“/etc/shadow”の参照には管理者権限が必要となるため。(60文字)』と解答することができます。
設問4 (3)
図3の(3)に、『R1サーバの”/etc/hosts.allow”ファイルの設定において、SSH接続の接続元をN社とV社に限定している。このファイルの変更には、管理者権限が必要である。』このような記載があります。
攻撃者はインターネット経由でアクセスしたいのですが、現状は『/etc/hosts.allow』によって接続元がN社とV社に限定されています。
『/etc/hosts.allow』を変更し、攻撃者のIPアドレスを許可してあげればインターネットからアクセスすることができますので、解答例としては『攻撃者のIPアドレスを“/etc/hosts.allow”のSSHの接続元に追加した。(43文字)』と導き出すことができます。
設問4 (4)
図10を確認しますと、(3)に『F1ファイルは、AC-Xのホームディレクトリに配置された後、IPアドレスa1.b1.c1.d1のサーバにアップロードされ、その後ホームディレクトリから削除されていた。F1ファイルはフォレンジック調査によって復元でき、サイズは320kであった。F1ファイルには、ツールXが8個のIPアドレスをスキャンした結果が格納されており、IPアドレスごとの出力結果は固定長であった。』と記載があります。
図9を確認します。
アウトバウンド通信で2つ記載がありますが、先程確認した図10の記載より下の通信がF1ファイルのことを差しているということがわかります。
F2は上の通信となりますが通信量としては960kバイトとF1ファイルの320kバイトの3倍あります。
ですので、F1ファイルは320kバイトで8IPアドレスで、F2はその3倍で960kバイトで24IPアドレスと計算することができます。
ということで解答は『24』となります。
設問4 (5)
設問4(3)でも解答したように現在はSSH接続は『/etc/hosts.allow』ファイルによって接続元の制限が行われています。
脆弱性により『/etc/hosts.allow』が変更されてしまうとされてしまいますのでR1サーバの設定のみで対策を行うことは難しいです。
図2の構成図で開発用システムを確認すると接続ポイントにFW2があります。
FWはこういったアクセス制御に特化しているネットワーク・セキュリティ機器ですし、開発用システムとインターネットの境界にあるため絶妙な位置に設置されています。
このFW2で『/etc/hosts.allow』と同じような制限を加えてみたらどうかというのが解答となります。
解答例としては『FW2にインターネットから開発システム宛の通信の接続元をV社とN社のセグメントに限定する設定とするということ。(55文字)』となります。
R1サーバで脆弱性が見つかっても、FWでも制限を行っていますので、攻撃者はアクセスすることが難しくなります。
逆にFWで脆弱性が見つかっても、R1サーバ側でも接続元制限を行っていますので、攻撃者が攻撃を行うにはFWとR1サーバの両方を突破しなくてはいけなくなりますので、現状よりはより強固なセキュリティ対策となります。
設問5
表3を確認すると脆弱性Lおよび脆弱性Mそれぞれ『影響度が小さい』とされ対応が見送られています。
設問4(2)でも解答しましたが、今回の攻撃は脆弱性Mだけでは成立せず、脆弱性MとLが組み合わさることにより攻撃として成り立つというものでした。
つまり、過去に影響がないと判断した脆弱性も含めて、組み合わせによる観点が抜けているということが挙げられます。
解答例としては『過去分を含め脆弱性の組み合わせで影響をうけるかという観点(28文字)』と導き出すことができます。
公式解答との比較・予想配点
私の解答と公式解答を比較してみました。
満点ではないにせよ、少なくとも7割~8割程度は取れているかと思いますので合格ラインには達していると思います。
予想配点はあくまで予想ですので参考程度でお願いします。
『パスワードリスト攻撃』に関しては知識が必要な問題でした。
ですが知識が必要な『設問1(1) 8点』、『設問1(2) 8点』、『設問1(3) 8点』の合計24点除いても、残り76点分ありますので文章中から適切にヒントを拾って解答することで解答十分に合格点を狙える点数を取得することができるかと思います。
配点 |
|||
設問1 (1) | あるサイトで漏洩したIDとパスワードのリストを使用して、別のサイトにログインを試みる攻撃(44文字) | 外部から入手した利用者 ID とパスワードの組みのリストを使ってログインを試行する攻撃 | 8点 |
設問1 (2) | サイトごとにそれぞれ異なるパスワードを設定すること(25文字) | 他のサービスで利用したパスワードとは別のものを設定すること | 8点 |
設問1 (3) | IPアドレスに紐づくジオロケーションから普段と異なる環境から行われたと判断をする。(41文字) 通信の際Cookieの有無で過去にログインがあった端末からのアクセスかを判断する。(41文字) |
IP アドレスから分かる地理的位置について,過去のログインのものとの違いを確認する。 Web ブラウザの Cookie を利用し,過去にログインした端末かを判定する。 |
8点 |
設問1 (4) | タイムゾーン | タイムゾーン | 5点 |
設問1 (5) | 9 | 9 | 5点 |
設問2 | 社内LANとのデータの受渡しに用いるUSBメモリ経由でマルウェアに感染したファイルを移してしまうこと(50文字) | マルウェアに感染した USB メモリを介して管理用 PC に侵入し,さらに店舗管理サーバへ侵入する。 | 10点 |
設問3 (1) | 情報セキュリティ委員会(オ) | 情報セキュリティ委員会(オ) | 3点 |
設問3 (2) | d:検知(イ) 順不同 e:分析(カ) 順不同 f:根絶(ウ) |
d:検知(イ) 順不同 e:分析(カ) 順不同 f:根絶(ウ) |
各3点 |
設問4 (1) | 5 | 5 | 5点 |
設問4 (2) | 脆弱性Mは利用者アカウントの権限でコマンドが実行可能で、“/etc/shadow”の参照には管理者権限が必要となるため。(60文字) | 脆弱性 M を悪用しても一般利用者権限での操作であるが,“/etc/shadow”ファイルの閲覧には管理者権限が必要であるから | 10点 |
設問4 (3) | 攻撃者のIPアドレスを“/etc/hosts.allow”のSSHの接続元に追加した。(43文字) | 攻撃の接続元 IP アドレスを“/etc/hosts.allow”ファイルに追加する。 | 8点 |
設問4 (4) | 24 | 24 | 5点 |
設問4 (5) | FW2にインターネットから開発システム宛の通信の接続元をV社とN社のセグメントに限定する設定とするということ。(55文字) | FW2 において,インターネットからのインバウンド通信は N 社と V 社からの通信だけを許可する。 | 8点 |
設問5 | 過去分を含め脆弱性の組み合わせで影響をうけるかという観点(28文字) | 複数の脆弱性が同時に悪用される可能性の観点 対応を見送った脆弱性の影響の観点 |
8点 |
引用元
問題および解答例に関しては、独立行政法人 情報処理推進機構(IPA)より引用しています。