現在稼働しているシステムに不正アクセスなどのセキュリティ・インシデントが発生した場合に備えて,その対応手順をまとめておくことは重要である。しかし,それだけでは不十分である。その手順で必要な操作を実施できるようにしておく必要がある。つまり,セキュリティ・インシデントを想定した訓練を実施しておくのである。セキュリティ・インシデントの被害を最小限に抑え,できるだけ早く復旧するためには不可欠である。

実際に手を動かすことが重要

 システム管理者は,セキュリティ・インシデントが発生しないように,さまざまな予防策を講じていることだろう。このコラムで何度も書いているように,セキュリティ・インシデントが発生した場合の対策手順を用意しておくことは重要である。

 ただし,対策手順を文書としてまとめておくことと,実際に手を動かして対応することは別である。「特定のポートが攻撃されているようなら,ファイアウオールでそのポートへのトラフィックを遮断する」と文書に明記しておいても,実際にファイアウオールの設定を変更できるだろうか。「侵入されたことが明らかになったら,証拠を取得した後でバックアップ・データから復旧する」と書かれていても,きちんと復旧できるだろうか。

 ファイアウオールなどは,導入して一度設定したら,頻繁に変更することはない。一度設定したことがあっても,長い時間が経過していれば,説明書があり,手順が分かっているつもりでいても,いざ設定変更するとなるととまどう管理者は少なくないだろう。

 一度でも設定していればまだいいほうで,「導入は業者にやってもらった」,「最初の設定は前任者が行った」――といった管理者ならば,セキュリティ・インシデントが発生したときに初めて設定変更を試みることになる。

 バックアップからの復旧作業についても同様のことがいえる。「バックアップ作業は定期的に自分がしている。この逆をやればいいのだろう」,「手順は知っているし,前任者が実施したときには問題がなかったのだから大丈夫だろう」――などとタカをくくっていると,いざ復旧するときに手間取ることになる。

 スキルがある管理者でも,セキュリティ・インシデントが発生した場合にはあわてるだろう。その非常時に初めて行う作業がうまくいくとは考えづらい。その結果,インシデントの拡大を指をくわえて眺めることになったり,復旧に多大な時間を費やしてしまったりすることになる。

 そのようにならないためにはどうすればよいか。平常時に試してみるのが一番である。つまり,“セキュリティ・インシデント訓練”を実施するのである。非常時に備えて訓練することは現実社会ではよく行われることである。地震などの災害に備えた避難訓練などはその典型例である。通信会社は非常通信網への切り替えテストを実施しているし,鉄道会社が実施する,自然災害時を想定した復旧訓練もそうである。

 訓練の際に重要なことは,必ず自分自身で手を動かすということである。他人が作業をしているのを見ているだけではだめだ。緊張感を持って自分自身で実施することで,初めて身になるものと考えてほしい。

稼働中のシステムに影響しないように

 訓練を実施する対象として,理想をいえば,実環境と同じ訓練用の環境を用意したい。実環境で訓練すると,現在稼働しているシステムに悪影響をおよぼす恐れがあるからだ。

 とはいえ,実環境と同じような訓練用の環境を用意することは難しいだろう。その場合には,システムに影響をおよぼさない範囲で設定変更などを実施すればよい。

 例えば,ファイアウオールの設定変更の訓練を行う際には,通常は使用しないハイ・ポート(ポート番号が大きいポート)を使用する。ハイ・ポートを一定時間開き,別マシンから自分でアクセスしてその動作を見る。そして,ポートを元の状態に戻す――。以上の操作には,ファイアウオールの設定変更,アクセスによる反応の確認,設定の回復――という一連の操作が含まれるので,これだけでもやっておく価値がある。これだけでも,事前に経験しておくのと,非常時に初めて実施するのでは大きな差がある。

 訓練時には,経験者にそばにいてもらい助言してもらうとよい。ただし,言われたとおりにやるのでは意味がない。自分で考えながら行い,自分ひとりでも操作できるようになる必要がある。また,短時間であれ不要なポートを開くことは危険を伴う。攻撃対象となりやすいポートだと,その短時間のうちに不要なセキュリティ・インシデントを招きかねない。これから開こうとするポートが,どのような通信に使用されているかを確認してから実施したい。

 ファイアウオールの設定だけではなく,バックアップの復旧など,ほかの訓練もしておきたい。バックアップを復旧する場合には,現在稼働しているシステムに対して行うことは難しいので,訓練用のシステムを用意する必要があるだろう。さもなくば,一時的にシステムをネットワークから切り離してバックアップを取り,そのバックアップ・データを復旧する,といった手順を踏む必要がある。

 バックアップの訓練を実施する際には,まず,バックアップ・データの保管場所や復旧手順,復旧作業を実施する際の連絡先を確認しておく必要がある。もちろん,訓練のときだけ確認しても意味はない。これらの情報は非常時にすぐに取り出せる場所に保存しておく。

 そして,実際に復旧してみる。きちんと復旧できることを確認するだけではなく,どの程度のデータがどれくらいの時間で復旧できるのかを把握しておくことも重要だ。システムによっては,データについてはバックアップを取っていても,システム(OSやプログラム)に関するバックアップは取っていない場合があるだろう。その場合には,システムについてはCD-ROMから復旧し,データはバックアップ・データから復旧する,といった作業も実施しておきたい。

 もちろん,今までのシステムが訓練で台無しになっては元も子もないので,システムの設定内容のバックアップを取っておくことを忘れてはいけない。確実に戻せる環境を作っておいてから実施することが大事だ。近くに経験者がいれば,立ち会ってもらったほうがより安全である。ただしこの場合も,言われたままにやるのではいけない。あくまでも自分ひとりで実施できるようになることが訓練の目的なのだ。

◇     ◇     ◇     ◇     ◇     ◇

 訓練には時間がかかる。しかも業務には直接関係しない。訓練の必要性を分かっていても,実施できないのが実情だろう。しかし,何とか時間を工面して実施したい。対処や操作の経験があることは,いざ操作することになったときに大きなゆとりとなる。これにより誤操作などの可能性を大きく減らすことができる。

 また,設定変更などについては,一度経験すればそれほど難しいことではないことが分かるだろう。ちょっとした設定変更のたびに外部の業者に委託している組織では,コスト削減にもつながる。さらに,セキュリティ・インシデントの発生時に業者がすぐに来てもらえる保証もない。自分たちで対処できるようにしておくことで,被害を最小限に抑えることができるのだ。

 どんなに守りを固めたシステムでも,セキュリティ・インシデントが発生する可能性はゼロにはできない。発生したときに「訓練しておけばよかった」と後悔しないように,“セキュリティ・インシデント訓練”を実施しておくことをお勧めしたい。


阿部正道 (ABE Masamichi) masamichi.abe@lac.co.jp
株式会社ラック セキュアネットサービス事業本部


 IT Proセキュリティ・サイトが提供する「今週のSecurity Check [一般編]」は,その週に起きたUNIX関連およびセキュリティ全般のニュースや動向をまとめた週刊コラムです。セキュリティ・ベンダーである「株式会社ラック」のスタッフの方を執筆陣に迎え,専門家の立場から解説していただきます。