min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

情報処理安全確保支援士(SC)令和3年度 春期 午後2 解答速報(2021年4月18日実施)

解答速報というか。自分なりの解答例。

 

※ 2021/6/25 追記

合格だった。

min117.hatenablog.com

 

IPAの解答はこれ

https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2021r03_1/2021r03h_sc_pm2_ans.pdf

 

※ 2021/7/10 採点講評が掲載された

https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2021r03_1/2021r03h_sc_pm2_cmnt.pdf

 

自分の答え(赤は明らかな間違い)(青が正しいと思われる

午後II
問1
 設問1
  (1) 過去に漏えいした既知のIDとパスワードの組みを使い総当たりで不正にログインを試行する攻撃 
  (2) 過去に使用したことのあるID又はパスワードを使用せずに設定する方法 
  (3) クライアントのブラウザにcookieを保存し、それを持たない環境からのアクセスを判別する手法 
  (4) a 記録時の保存形式タイムゾーン 
  (5) b 9 
 設問2
  店舗管理システムと社内LANの間でUSBメモリを用いてデータを受渡しする際にそれを介して侵入する
 設問3
  (1) c オ
  (2) d イ e カ f ウ
 設問4
  (1) 1(5?7?) 
  (2) /etcフォルダ及びshadowsファイルそれぞれの参照更新は管理者権限が必要であるため脆弱性Mだけでは権限不足により参照が許可されないから 
  (3) /etc/hosts.allowにSSHの接続元として攻撃者のIPアドレスを追記する変更 
  (4) 24
  (5) FW2においてR1サーバのインターネットからのSSHによるインバウンド通信の接続元をV社とN社に限定し、各サーバへの同接続元からの通信は拒否する措置
 設問5
  複数の脆弱性を組み合わせて悪用され影響を及びしうるかの観点

 

全体として「具体的に述べよ」とあるところは必ず文中の言葉を使い、文中にある機器名に対して「何を」「どうするか」を明確になるよう回答した。 

 

青色(正しそう)と感じた根拠は5chにある(他の人の)答えによる。

matsuri.5ch.net

 

以下、自分が回答に際して考えた内容。 

午後II
問1
 設問1
  (1) 過去に漏えいした既知のIDとパスワードの組みを使い総当たりで不正にログインを試行する攻撃 
  (2) 過去に使用したことのあるID又はパスワードを使用せずに設定する方法 

  「パスワードリスト攻撃」というくらいだから、既に漏洩したパスワード(正確にはIDとパスワードの組み合わせ)が攻撃者の手元にあって、それを使っているのだろう。

 

 (1)の問題文は「一般にどのような攻撃か」なん聞き方だから、文中の単語を使って答える必要なない問題で、自分の言葉を使っても減点はあまり無いだろうと感じた。

 「一般に」ということは、仮にそれが新聞記事になったとしても(一般の人に)正確に意味が伝わるようにしなければいけない。なので、内容としては「総当たり」であること、「不正」なログインであること、「試行」であることを盛り込むべきと考えて回答した。

 

 (2)は「パスワードの安全な設定方法とは何か。35字以内で具体的に述べよ」と言っているから、答えは必ず「○○な方法」となるべき。設問をオウム返しで語尾につけるのが正しいお作法のハズ。

 あとは些細なことだが「ID又はパスワード」にするか「ID及びパスワード」にするかで数分悩んでしまった(前者にした)。

 

午後II
問1
 設問1
  (3) クライアントのブラウザにcookieを保存し、それを持たない環境からのアクセスを判別する手法 

 (3)も「ログインが普段と異なる環境から行われたことを判定する技術的手法を、45字以内で具体的に述べよ」と聞いているから、 答えは必ず「○○な手法」となるべき。

 

 解答の主旨としては「IPアドレスcookieの組み合わせ等によって判別する」ことが答えられればいいはずだけど、ここはあえてcookie一本に絞って回答してみた。

 ポイントとしては

 「cookieクライアント側(のブラウザ)に保存されること」(サーバではない)

 「cookieを持っていない環境からのアクセス場合に、普段と違うと判定する」こと

 の2点だろうと思う。

 

 IPアドレスの記載がないので減点される気もするが、実務ではcookieメインでチェックしてるみたいだし…これでいいかなと。

www.netbk.co.jp

f:id:min117:20210419053504p:plain

 

午後II
問1
 設問1
  (4) a 記録時の保存形式タイムゾーン 
  (5) b 9 

(4)「タイムゾーン」は思いつかなかった。アタリマエすぎて言葉が出なかった。

(5)日本とイギリス(グリニッジ天文台)との時差は9時間。だからJSTUTCの時差も9時間。これはほとんと地理の問題だ。イギリス旅行しといて良かった。

min117.hatenablog.com

 

午後II 問1
 設問2
  店舗管理システムと社内LANの間でUSBメモリを用いてデータを受渡しする際にそれを介して侵入する

 これも問題文が「社内LANから店舗PCを経由せずにどのようにマルウェアが侵入すると想定されるか。侵入方法を50字以内で具体的に述べよ」と聞いているから、 答えは必ず「○○な方法」となるべき。 

 

読み取るべき情報としては

・問題にされているのは「店舗管理サーバにマルウェアが侵入するリスク」である(P6の表1)

・N社の関係部門は、管理用PCを操作して店舗管理サーバを利用する(P3の注記2)

店舗管理システムと社内LANとの間でデータの受渡しが必要な場合はUSBメモリ用いる(P3の注記2)

 

なので、店舗管理サーバにマルウェアが侵入するためには「USBメモリを介して管理用PCが感染し、そこから(IP-VPNを通じた)ネットワーク経由でサーバに感染する」とも読み取れる。

 

しかし他方で、USBメモリ直接店舗管理サーバに挿してデータの受渡しをする可能性も否定されていない(店舗管理サーバは店舗管理システムの一部なわけだから)。

 

ので、解答としてはUSBメモリを介して感染する」ことを主眼としつつ、極力問題文(P3の注記2)にある言葉をそのまま利用して文章にした。

 

午後II
問1
 設問3
  (1) c オ
  (2) d イ e カ f ウ

(1)情報セキュリティ委員会 が正しいと思う。

 問題となっている組織(P7の表2 N-CSIRTの構成部門) を、N社の組織図(P2)と比べてみる限りは「情報セキュリティ委員会」なんて組織は存在しないのだが、P7の図6の中に「情報セキュリティ委員会の承認」とあるから、インシデント発生時にはこの組織が立ちあがるのだろう。

(2)d 検知 e 分析 f 根絶

 このあたりは常識の範囲で答えても正解してしまいそうな気がする。

 

午後II
 設問4
  (1) 1(5?7?)

(1)は今回の試験の中では一番の難問だったのではないかと思う(5chを見ていても、誰も正解を言っていない)。

 大事なポイントは各セグメントの末尾にあるスラッシュ(/28 と /30。これによってサブネットマスクの大きさが決まるのでIPアドレスの範囲が定まる

f:id:min117:20210419060818j:plain

N社

 x1.y1.z1.0/28 だから(クラスCで16個のIPアドレスを持つわけで)

 x1.y1.z1.0から x1.y1.z1.15までがN社内のIPアドレスであって

★x1.y1.z1.16より後ろのアドレスからの通信は不正アクセス

と分かる。

f:id:min117:20210419061922p:plain

 

で、FW2のログ(P9の図9)と見比べてみると

f:id:min117:20210419062502j:plain

x1.y1.z1.で始まるものは4個ある。

これらのうち

★x1.y1.z1.16より後ろのアドレスからの通信は不正アクセス

なものを探せばよい。

そうすると

 x1.y1.z1.100

 x1.y1.z1.240

が不正とわかる。

 

さらに問題文=設問4(P12)をよく読むと「…のうち不正ログインを行なったと推測される接続元IPアドレスは幾つか。個数を答えよ」と聞いているから、これら4個のうちSSH接続を行なったものだけを拾えばよい

そうするとやはり

 x1.y1.z1.100

 x1.y1.z1.240

の2つなわけで、結局N社(x1.y1.z1.0/28)からではない不正なアクセスは2個あった。

 

同様に、V社(x2.y2.z2.128)を見てみると

f:id:min117:20210419060818j:plain

V社

 x2.y2.z2.128/30 だから(クラスCで4個のIPアドレスを持つわけで)

 x2.y2.z2.128から x2.y2.z2.131までがV社内のIPアドレスであって

★x2.y2.z2.127より前 or x2.y2.z2.132より後ろのアドレスからの通信は不正アクセス

と分かる。

 

で、x2.y2.x2が接続元かつSSHの接続を見てみると

f:id:min117:20210419064121j:plain

4つあって

 x2.y2.z2.130

 x2.y2.z2.129

 x2.y2.z2.60

 x2.y2.z2.58

これらのうち

★x2.y2.z2.127より前 or x2.y2.z2.132より後ろのアドレスからの通信は不正アクセス

なんだから

 x2.y2.z2.60

 x2.y2.z2.58

こいつら2つが不正アクセスと分かる。

 

あとはa2.b2.c2.d2からのSSHは明らかに不正アクセスだから、まとめると

 x1.y1.z1.100

 x1.y1.z1.240

 x2.y2.z2.60

 x2.y2.z2.58

 a2.b2.c2.d2

5個が不正アクセスであると分かる。

 

5chを見ていると、「7個だ」「いや9個だ」「いやいや1個だ」と、さまざまな意見があるが、こうしてみると5個なんじゃないか?と考えざるをえない。 

matsuri.5ch.net

 

 

午後II
 設問4
  (2) /etcフォルダ及びshadowsファイルそれぞれの参照更新は管理者権限が必要であるため脆弱性Mだけでは権限不足により参照が許可されないから 

(2)はLinuxを使っていれば余裕で分かる問題だが、問題文が「”/etc/shadow/”ファイルの性質を含めて70字以内で述べよ」 と言っている以上、その性質(管理者のみがアクセスできる)には必ず触れる必要があると思われる。

 

 自分の解答としては(試験中に焦って時間がなかったせいもあるが)shadowをshadowsと誤記してしまったし、一般権限でも/etcフォルダの参照だけならできるのに、できないような書き方をしてしまって、かなり減点されてしまいそう。

 f:id:min117:20210419065551p:plain

 ただし、問題文が「…脆弱性Mだけを悪用しても…参照できない理由を…述べよ」と言っているから、解答としては「脆弱性Mに触れる」「…だからと答える」べきで、そこは満たせたから、部分点は取れそうな気もする。

 

午後II
 設問4
  (3) /etc/hosts.allowにSSHの接続元として攻撃者のIPアドレスを追記する変更 

 ここも問題文は 「攻撃者が行なった設定変更の内容を、45字以内で具体的に述べよ」と指示しているから、答えとしては「…な変更」となるべき。

 「R1サーバにSSH接続するのに、どこでブロックされているかな?」という視点で問題文を読み返してみると、P4の(3)R1サーバへの接続制御 で、/etc/hosts.allow ファイルの設定で接続元を(N社とV社のみに)限定しているのが分かるから、ここに書き加える変更をしたと答えればよい。

 

午後II
 設問4
  (4) 24

 (4)は、問題文にヒントがあって、「…F2ファイルには…考えられるか。図9中の値及び図10中の値を用いて求めよ」とあるわけだからそこに答えがある

 

 図9をみると320kバイトのファイルをアップロードしている(これがF1)なんだから

f:id:min117:20210419070713j:plain

その直前にある960kバイトは、その3倍の大きさと分かる。

 320kバイトの固定長のF1に8個のアドレス

が書かれていた(図10の(3))とあるから、その3倍の

 960kバイトのファイルには24個のアドレス

書かれていたはず、と分かる。

 

午後II
 設問4
  (5) FW2においてR1サーバのインターネットからのSSHによるインバウンド通信の接続元をV社とN社に限定し、各サーバへの同接続元からの通信は拒否する措置
 設問5
  複数の脆弱性を組み合わせて悪用され影響を及びしうるかの観点

 (5)は、問題文が「SSH接続及びHTTP接続を使った攻撃から開発用システムを保護するための措置 を75字以内で具体的に述べよ」とあるから、SSHとHTTPそれぞれの接続元を限定すべき記載をするのが正しいのだろうが、SSHしか書かなかった。減点されてしまう。

 

 ただし、接続元を何で制限するかというと、そこは/etc/hosts.allowとするのは間違いで、FW2で制限するのが正しいと思う。P4の(1)には「インターネットからのインバウンド通信は、FW2において…遮断している」とあるし、/etc/hosts.allowで制限したとしても、脆弱性がある限り突破されてしまうからだ(実際今回もN社とV社に制限していたのに突破されてしまっている)。

 

 問題文でさらに気になるのは「SSH接続及びHTTP接続を使った攻撃から開発用システムを保護するための措置 を75字以内で具体的に述べよ」と言っているところで、開発用サーバ(R2)に限定していないので、P3の図にある「開発用システム」の枠内にあるサーバは全て保護しなければいけないのだろう。

 

 そうするとやはりR2サーバの/etc/hosts.allowに書くだけでは足りない。ガチガチにやるとすれば

 R1サーバの/etc/hosts.allow N社とV社だけに限定する

 Webサーバの/etc/hosts.allow R1サーバだけに限定する

 アプリサーバとデータベースも同じ

かつ

 FW2で、SSHとHTTPの接続元をN社とV社のみに限定する

が必要になると思う。 

 

午後1はこちら。

min117.hatenablog.com