基本情報技術者 2016年 春期 午後 問01
Webサーバに対する不正侵入とその対策に関する次の記述を読んで、設問に答えよ。
A社は、口コミによる飲食店情報を収集し、提供する会員制サービス業者である。会員制サービスを提供するシステム(以下、A社システムという)を図1に示す。

(1) FW、Webサーバ及びDBサーバがあり、スマートフォンなどの利用者端末とはインターネットを介して接続されている。
(2) WebサーバはDMZに置かれており、DBサーバはLANに置かれている。また、利用者端末からWebサーバへの接続には、セキュリティを考慮してTLSを用いている。
(3) 会員登録を行った利用者(以下、会員という)には、IDとパスワードが発行される。
(4) DBサーバには、会員情報(氏名、メールアドレス、訪れた飲食店情報、ログイン情報(IDとパスワード)など)と公開情報(飲食店情報、評価情報)が保管されている。
(5) 会員は、公開情報を閲覧することができる。また、Webサーバにログインすることで、DBサーバに保管してある自分の会員情報と自らが書き込んだ公開情報の更新、及び新しい公開情報の追加が行える。
(6) 非会員は、公開情報の閲覧だけができる。
(7) 会員がWebサーバにログインするには、IDとパスワードが必要であり、A社システムはDBサーバに保管してあるログイン情報を用いて認証する。
(8) Webサーバ及びDBサーバでは、それぞれでアクセスログ(以下、ログという)が記録されており、システム管理者が定期的に内容を確認している。また、システム管理者は、通常、LANからWebサーバやDBサーバにアクセスして、メンテナンスを行っている。
なお、外部からTelnetやSSHでWebサーバに接続して、インターネットを介したリモートメンテナンスが行えるようにしてあるが、現在はリモートメンテナンスの必要性はなくなっている。
ある日、システム管理者が、ログの確認において、通常とは異なるログが記録されているのを発見した。そのログを詳しく調査したところ、システム管理者以外の者が管理者IDと管理者パスワードを使ってWebサーバに不正侵入したことが明らかになった。
そこで、システム管理者は上司と相談し、会員制サービスを直ちに停止した。次に、今回の不正侵入に対する被害状況の特定と対策の検討を行った。不正侵入による被害状況と対策の一部を抜粋したものを表1に示す。
また、パスワードの変更に合わせて、パスワードの強度(パスワードの候補数)の検討を行った。これまでパスワードは、英小文字26文字だけを受け付け、長さは6文字だった。これに対し、他の3通りのパスワードの強度を比較した。その比較結果を表2に示す。

この強度の比較結果を踏まえ、次のようにA社システムを変更し、対策を実施した後に会員制サービスを再開することにした。
(1) パスワードの文字種としては、英大文字と英小文字、数字、記号を受け付ける。
(2) 長さが8文字以上16文字以下から成るパスワードを受け付ける。
(3) 辞書に登録されている文字列など推測されやすいパスワードは受け付けない。
設問1:
問題文を見る 表1、2中のに入れる適切な答えを、解答群の中から選べ。
aに関する解答群
ア:TLSを使用していても不正侵入が行われたことから、TLSの使用を直ちに中止し、通常のHTTPで通信を行う。
イ:新たな秘密鍵と公開鍵を生成し、その鍵に対する公開鍵証明書の発行手続きを行う。
ウ:公開鍵証明書の再発行手続きを行い、同じ秘密鍵を使用する。
エ:秘密鍵へのアクセスが確認できていないことから、秘密鍵の変更や公開鍵証明書の再発行は行わず、念のため秘密鍵の保管場所を、ネットワーク経由でアクセスできないディレクトリに変更する。
bに関する解答群
ア:TelnetやSSH以外にHTTPも利用できるようにするために、HTTPのポートを開放する。
イ:インターネットからのアクセスをFWで禁止し、TelnetやSSHのポートは閉じる。
ウ:システム管理者がどこからでもすぐにA社システムのメンテナンスができるように、TelnetやSSHのポートの開放は継続する。
エ:パスワードやA社システムの実装情報の漏えいを防ぐために、Telnetのポートは閉じ、SSHに限定してポートを開放する。
cに関する解答群
ア:管理者パスワードは変更し、全会員にパスワードの変更を依頼する。
イ:管理者パスワードは変更し、漏えいした会員だけにパスワードの変更を依頼する。
ウ:管理者パスワードはそのままにし、全会員にパスワードの変更を依頼する。
エ:管理者パスワードはそのままにし、漏えいした会員だけにパスワードの変更を依頼する。
dに関する解答群
ア:2×8
イ:26
ウ:2×26
エ:7×8
オ:10×26
カ:
eに関する解答群
ア:2
イ:2×8
ウ:26
エ:208
オ:
カ:
模範解答
a:イ、b:イ、c:ア、d:カ、e:オ
解説
解答の導き方
この問題は、不正侵入後の対策と、パスワードの候補数の比べ方を問うています。まず、被害の内容とシステムの使い方を分けて考えます。
a:秘密鍵に関する対策
本文には、Webサーバへの不正侵入が確認された一方で、「秘密鍵への不正アクセスがあったかは確認できなかった」とあります。
TLS(Transport Layer Security:通信内容を暗号化する仕組み)を使うと、利用者端末とWebサーバの間でやり取りする内容を盗み見されにくくなります。しかし、Webサーバ自体に侵入された場合、サーバ内に保管されている秘密鍵が読み取られた可能性までは否定できません。
公開鍵証明書は、Webサーバの公開鍵が正しいものであることを示す電子的な証明書です。秘密鍵と公開鍵は対になっているため、秘密鍵が漏れた可能性を否定できないときは、新しい鍵の組を作り、その公開鍵に対する証明書を発行してもらう必要があります。同じ秘密鍵を使い続けると、漏えいしていた場合の危険が残るためです。
したがって、秘密鍵と公開鍵を新たに作り、公開鍵証明書も発行し直す イ が適切です。TLSの使用をやめるのではなく、鍵を新しくします。
b:リモートメンテナンス用ポートに関する対策
FW(Firewall:通信を通してよいかを判定する装置)を経由してWebサーバに侵入され、さらにDBサーバにも侵入されたとあります。DB(Database:情報を整理して保存する仕組み)サーバには、会員情報や公開情報が保管されています。
本文では、外部からTelnetやSSHでWebサーバに接続するリモートメンテナンスが可能ですが、「現在はリモートメンテナンスの必要性はなくなっている」とされています。Telnetはネットワーク越しに端末を操作する通信方式で、SSH(Secure Shell:通信を暗号化して遠隔操作する方式)も同じく遠隔操作に使われます。
もう使わない機能のために、インターネットから接続できる入口を残す必要はありません。リモートメンテナンス用ポートへの外部からのアクセスをFWで禁止し、TelnetやSSHのポートを閉じる イ が適切です。SSHだけに限定する選択肢もありますが、リモートメンテナンス自体が不要なので、SSHのポートも閉じます。
c:会員と管理者のパスワード変更
不正侵入には管理者IDと管理者パスワードが使われています。そのため、管理者パスワードは変更する必要があります。
会員については、一部の情報が漏えいしたことは分かっていますが、それ以外の会員については、漏えいの有無を特定できていません。漏えいが確認されていない会員にも、漏えいしていないと断定できない状態です。そのため、漏えいした会員だけでなく、全会員にパスワードの変更を依頼します。
よって、管理者パスワードを変更し、全会員に変更を依頼する ア が適切です。
d:英小文字の長さを6文字から8文字にした場合
パスワードの候補数は、各文字の位置に何通りの文字を置けるかを掛け合わせて求めます。同じ文字を別の位置で使えるので、文字数が 文字で、1文字に使える候補が 種類なら、候補数は です。
(a) は英小文字26文字から6文字を選ぶため、候補数は です。(b) は同じく英小文字26文字から8文字を選ぶため、候補数は です。
(b) が(a)の何倍かは、候補数の比を取ります。
したがって、dには が入ります。長さが2文字増えると、追加された2か所それぞれに26通りの選択肢があるためです。
e:英大文字も使えるようにした場合
(b)は英小文字だけなので、1文字に使える候補は26種類です。(c)は英大文字と英小文字を使えるので、1文字に使える候補は 種類です。
どちらも8文字なので、候補数の比は次のようになります。
1文字ごとの候補が2倍になり、それが8文字分あるため、候補数は 倍です。したがって、eには が入ります。
なお、再開後の設定では、使用できる文字の種類を増やすだけでなく、パスワードを8文字以上16文字以下にし、辞書にある文字列など推測されやすいものを受け付けないようにしています。候補数を増やすことに加え、推測しやすいパスワードを避けることも大切です。
誤りやすいポイント
- TLSは通信を保護する仕組みですが、Webサーバへの侵入そのものを防ぐ仕組みではありません。TLSを使っていたことだけを理由に、秘密鍵の漏えいを否定することはできません。
- SSHはTelnetより安全な方式ですが、使う必要がなくなった遠隔接続の入口を残す理由にはなりません。不要なポートは閉じます。
- 漏えいが確認できた会員だけに変更を依頼するのでは不十分です。ほかの会員の漏えい有無を特定できていないため、全会員が対象になります。
- 文字種の比率は、8文字分について考えます。英大文字を加えると1文字ごとの候補数は2倍ですが、8文字全体の候補数は 倍ではなく、 倍です。
FAQ
Q:秘密鍵への不正アクセスが確認できていなくても、新しくする必要がありますか?
A:確認できていないことは、アクセスされていないことの証明にはなりません。不正侵入があった以上、秘密鍵が漏れている可能性を考え、新しい鍵に切り替えるのが安全です。
A:確認できていないことは、アクセスされていないことの証明にはなりません。不正侵入があった以上、秘密鍵が漏れている可能性を考え、新しい鍵に切り替えるのが安全です。
Q:なぜ会員全員にパスワード変更を依頼するのですか?
A:漏えいした会員以外について、漏えいの有無を特定できていないためです。対象を限定すると、実際には漏えいしていた会員が変更対象から外れるおそれがあります。
A:漏えいした会員以外について、漏えいの有無を特定できていないためです。対象を限定すると、実際には漏えいしていた会員が変更対象から外れるおそれがあります。
Q:パスワードの候補数が多ければ、推測されにくいと考えてよいですか?
A:候補数が多いほど、すべての候補を試す方法では見つけにくくなります。ただし、辞書にある単語などは候補数の多さだけでは守れない場合があるため、推測されやすいパスワードを避けることも重要です。
A:候補数が多いほど、すべての候補を試す方法では見つけにくくなります。ただし、辞書にある単語などは候補数の多さだけでは守れない場合があるため、推測されやすいパスワードを避けることも重要です。
関連キーワード: TLS、公開鍵証明書、ファイアウォール、ポート、パスワード強度




