概要
企業の情報システムにおいて、適切なシステム運用設計を行うことは、業務の安全稼働のみならず、ビジネスの効果を最大限に引き上げるために、非常に重要な役割をもつ。 長年製造業のシステム管理に携わってきた著者が、実体験をもとに、「システム運用設計」に織り込むべきことや、運用管理とシステム開発の関係などについて語る。
皆様こんにちは、伊藤です。
先回は、情報セキュリティとそれを考慮した運用に関して「機密性」についてお話をしましたので、今回は「完全性」と「可用性」に関してのお話をしたいと思います。
完全性を確保する
完全性を確保するとはどういうことでしょうか。先回のおさらいになりますが、「完全性の確保」とは「情報及び処理方法の正確さおよび完全である状態を安全防護すること」という定義です。いいかえると、原始データから、最終結果まで、情報が間違いなく一貫して引き継がれていることです。システム開発、運用の世界では大変馴染み深いことばですね。また、コンピュータに保存されている電子情報が不正な改ざん無しで維持されていることも、「完全性の確保」の範疇です。
アプリケーション処理でいえば、例えばバッチシステムでは、処理の前後でデータ件数や、総金額、その他の情報を付き合わせ、変化のないことを確認するプロセスを入れています。これは、処理途中や引継ぎの過程でのデータの抜け落ち、数値の変更などがないこと、つまりデータの完全性を確保しているわけです。
また、インターネットを介した取引処理 特に一般の人々を相手にした、いわゆるB to Cのシステムの場合ではどうでしょうか。これには、ネットバンキング、ネット販売、ネットオークション等のアプリケーション処理型システムもありますし、データ蓄積保管サービス、ファイル転送サービス等の情報管理型システムもあります。
これらで第一に行わなければならないことは、そもそもアクセスしてくる人が正当な利用者かどうかを確かめることです。また、利用者がシステム利用途中でやめてしまうこととか、予告無しのネットワークのトラブルでの処理中断も発生します。従って、従来のバッチ処理時のデータの完全性確認機能や、データセンター内部からのデータ、システム改ざん防止対策に加え、利用者の不正なアクセスの防止のための認証機能の整備や、利用者の都合や設備の故障などによる処理の中断発生時のロールバックなどが実装運用されています。
このようなシステムについての運用時点での情報セキュリティ対策としては、異常な結果の発生やネットワークの故障などを察知し、対処することですが、トランザクションの多さから考えれば、自動対応と対応状況の常時モニタリングが必要でしょう。
加えて、外部に公開されている関係上、システムの脆弱性を定期的に評価し、弱点を改善することや、セキュリティパッチの適用など、OSなどの脆弱性対策についても通常の運用の中で確実に行う必要があります。
これらは今でも必要不可欠な対処方法でありますが、現在はそれに加えて、システムインフラや、利用者のPCが「のっとられて」それらから「想定外」の事態が起こっていることに留意しなければなりません。
例えば、最近国内のネットバンキングシステムでは、「ポップアップ型フィッシング詐欺」が多発しています。
これは、偽のサイトに誘導されるのではなくウィルスの仕業です。このウィルスは、感染したPC内でWEBアクセスを常時チェックして、ネットバンクサイトにログインしたことを察知して、ポップアップウィンドウを開き、IDやパスワードなどを入力させます。
この問題で皆さんに理解していただきたいことは、システム自体を運用、管理している側から見ているだけでは、何が起きているのかがわからない事が発生するようになってきている事です。
つまり、これまでのWEBサイトに関する問題は、サイト自体の改ざんや、SQLインジェクション等による不正オペレーションが主流だったため、自分たちのシステムの脆弱性を改善し、モニタリングをおこなうことで予防し、不正を察知し、対策することができたのですが、そういった対策が及ばないところで不正行為が行われてしまうわけです。(筆者注 SQLインジェクションによる攻撃が減ったわけではありません)
また、一般にユーザーはIDとパスワードを使い回す傾向が強く、一部のシステムからIDとパスワードのセットが流出した場合に、他のシステムへの成り済ましログインにこのIDとパスワードが使われる犯罪が増えています。
このように、情報セキュリティを確保するための運用場面で、システム側での検知が非常に困難な問題が発生するようになってきています。利用者の環境は様々であり、必ずしも最新のウィルス保護がなされているわけではありませんし、最新のウィルス保護を行っていても、全てのウィルスからは保護されませんから、システム運用の前提条件を変えないといけません。
例えば、正規利用者によるアクセスであることを保証する方法として、IDとパスワードでの認証だけでは不正アクセスを防ぐことが困難になってきていることは留意すべきでしょう。とくにB to Cの取引では、できるだけ二要素認証方式等を採用して成り済ましを防止し、利用者の保護を図る必要があるでしょう。
可用性を確保する
可用性とは、「認可された利用者が、必要なときに情報にアクセスできることを確実にすること」を言います。実は、セキュリティの3要素の中で最も利用者に影響を与えるとともに、昨今のオフィスワークに占めるネットワーク依存度(電子メール、社内ポータルによる業務集約化などによる)からみれば、非常に重要な課題です。
これまで、組織内でクローズしたシステムの場合、可用性を阻害するものはハード、ソフトの不具合と、オペレーションミスに起因する場合がほとんどでした。しっかりした運用、障害対応要領を作成し、それに従って運用することと、特に可用性を要求される場合は、冗長性を持たせたシステム設計を行っていれば大きな問題は防げていました。
ところが、LANやインターネットをシステム内に組み込んだシステムの場合は話が違ってきます。
LANの場合、感染したウィルスがネットワークをマヒさせることもありますが、最近特に留意すべき事柄は、LAN機器の一般化です。ご承知のように、昨今は一般家庭内でもLANが入りこんでいます。たとえば自宅の液晶TVの背面に容易にイーサネットの端子を見つけることができます。ネットワーク機器も近所の電気屋さんで手軽に購入できます。つまり、ネットワークの専門家でなくても何となくネットワークが組めてしまうのです。このことにより最近増えているのが、ユーザーが無線アクセスポイントを勝手に追加したり、ネットワークの接続を変えてしまうことによって起こるトラブルです。この代表的なものが、ブロードキャスト・ストームでしょう。
ネットワーク管理者は、社内LANに目を光らせ、このような事態にならないよう対策を講じなければなりません。
インターネットの場合は、ニュース等では、悪意を持った攻撃(DDOS等)の話題がよく取り上げられますが、実際に多いのは、「善意」あるいは「意識しない」負荷集中が原因のサーバダウンです。
SNSの利用者が大きく増えています。その中で誰かがどこかのサイトを話題にすると、瞬く間にその情報が伝搬してそのサイトに急激にアクセスが集中するのです。
状況は異なりますが社内システムにおいても、社内ポータル化がすすむと、締め日の朝などにいきなり社内ポータルサイトにアクセスできなくなることがあります。また、社内ポータルに新たなシステムが追加された場合も同様です。
認証システムの部分で負荷オーバーとなり、利用者は何度もアクセスするためさらに待ち行列が膨れ上がってしまうわけです。新たなシステムは、当然事前のテストを実施しているわけですが、負荷テストを行う場合も、従来の仕組みと同様、対象システムだけを意識するのではなく、社内ポータル全体で考えなければなりません。銀行のATMや、車の渋滞のときと同様、処理能力と負荷との関係で急激にレスポンスが悪くなるのです。この場合、個々のアプリケーションではなく個人認証の部分で問題が発生しているのです。例えばATMのようなばあい、訪れるお客様のタイミングはバラバラですので、このような場合はATMの負荷が8割を越すと急激に行列が伸びる現象が生じると言われています。
今後はこのような事態も考慮したシステム運用設計がさらに重要になってくるでしょう。つまり、負荷集中した場合の対応策をあらかじめ明確にしておくことです。いうまでもなく、システムにすべてをカバーできる性能を持たせることではありません。状況を想定し、それに対応した施策を決めておくということです。
次回予告
次回は、「運営設計とIT全般統制」についてお話をしたいと思います。
連載一覧
筆者紹介
伊藤 裕 (いとう ゆたか)
トヨタ車体株式会社 情報システム部 ITマネジメント室 参事補
自動車製造業でのシステム管理、運用部門の管理者をはじめ、IT予算管理、J-SOX、セキュリティ対策対応など、企業の情報システムにおける様々な経験をもつ。
コメント
投稿にはログインしてください