ソフトバンク大規模障害はソフト期限切れが原因 どんな仕組み?

 カメラとは直接的には関係ありませんが、影響が大きかったので、なぜ今回このような問題が発生してしまったのか、簡単に解説してみたいと思います。

 先日のソフトバンクの通信障害に関しては、今日も様々なところで話題になっていますね。4時間以上も不通でしたので、多くの人が影響を受けたようです。通信は相手がいてこそはじめて成り立ちますので、ソフトバンクのスマホを利用していない人も、ソフトバンクユーザに電話がつながらないということで、ソフトバンクのシェア以上の混乱が発生してしまったようですね。

 まずソフトバンクなどの発表によれば、スウェーデンのエリクソンという会社が作るスマホのネットワークを構築するためのネットワーク機器であるvMMEと呼ばれる機器のソフトウェア認証の日付の問題だったということのようです。

 恐らくですが、ネットワーク機器にインストールされているソフトウェアを定期的に確認し、正常なソフトウェアが稼働しているかどうか確かめるような機能があるのでしょう。恐らくですがハッキングなどされて意図しない動作をしないようにといったことや、保守期限を過ぎても利用できないように、そのような機能が実装されていると思われます。

 今回はその日付の有効期限が切れてしまったということだと思われます。

 まずは簡単にソフトウェアが改ざんされていないことを確認する方法を説明してみます。ソフトの確認にはハッシュ関数というものを利用します。これはわかりやすく言うと、デジタルデータをハンコにしてしまう魔法のツールです。そしてこれを使うとソフトごとに異なった印影を得られることができます。ハッシュ関数を利用してソフトをハンコにし、朱肉を付けて紙に押すと印影が得られます。その印影と、メーカが提出する印影が一致すれば、それはメーカが作ったソフトとまったく同じ物だということがわかるので、何も改ざんされていない正しいソフトであるということがわかる仕組みです。

 で、問題はそのメーカが提出する印影が本当に正しいものかどうかを証明する方法ですが、この方法は難しいので簡単に説明すると、印影、有効期限、メーカ名などが暗号化されており、メーカが提供した鍵を利用しなければ中身を閲覧できないようになっています。鍵はメーカしか提供できないので、そのメーカが提供した印影であることが確かめられる仕組みです。この仕組みをデジタル証明書といいます。

 しかし、同じ鍵を使い続けると誰かにデータを解析され、メーカしか暗号化できない「暗号化の方法」を見つけ出されてしまう可能性があるため、定期的に更新する必要があります。そこで有効期限が設定されています。有効期限がくると自動的に失効するので、そのソフトはメーカが認めた正しいソフトではなくなります。

 この機能はソフトの保守期間(契約期間)の管理にも利用できます。つまり保守契約期間が2年なら、有効期限を2年後にしておけば、自動的に2年後にはソフトが無効になります。使い続けるには契約し直してお金を支払わなければなりません。

 ソフトバンクの話によればこのソフトは9ヶ月間ほど利用されてきたということですので、恐らく有効期限は1年間だったのでしょう。そして12月5日までがその期限だったと思われます。有効期限を設定してから3ヶ月ほどテストなりして問題がないので導入して9ヶ月で1年が経過したところで、今回の障害が起きたと予想できます。

 今回は、その有効期限の1年がきてしまい、ネットワーク機器が現在、稼働しているソフトは正しいものではないと判断し、自動的に動作を止めてしまったため、各国でほぼ同時にネットワーク障害が発生してしまったと思われます。

 技術的なことはだいたいこのような感じで問題が発生したものと思います。では、何が原因でどうすればよかったのでしょうか?考えられる原因は二つです。

 一つはソフトの認証の問題です。通常、ソフトは開発してから1年間だけしかインストールできないようなものではありません。いつでもずっとインストールしたり利用できるものです。ですが、印影の有効期限は1年です。こうなると1年間しか利用できないので非常に面倒になってしまいます。そこで、タイムスタンプというものを設定しておきます。タイムスタンプというのは、その時点で「確かにメーカが正しいソフトであると認証しましたよ」という署名をするようなもので、ちゃんとメーカにより確認が取れていることが保証される仕組みです。このタイムスタンプを入れておけば、通常は期限が切れたソフトでも、過去に正しいと認証されたという履歴のようなものがわかるので、インストールやソフトの利用が可能になります。

 もしこれが原因だとしたら、エリクソンはタイムスタンプの設定を忘れてしまった可能性があります。これを忘れると、しっかり認証されていた時期があることを証明できないので、怪しいソフトかもしれないということで停止してしまいます。ソフトバンクによれば、古いバージョンのソフトで稼働したら復旧したとのことですが、古いバージョンではタイムスタンプがしっかり設定されていたので動作するようになったという可能性も考えられます。

 もう一つは認証サーバの問題です。仮にメーカが保守契約をしている期間だけソフトを稼働させたかったとします。ソフトはネットワーク機器にインストールされているわけですが、定期的にソフトの印影の確認を行います。正しい印影と有効期限はさきほどの説明のようにメーカ側が証明書という形で発行するのでそれを入手します。有効期限は契約末の日付に設定しておけば、いつか有効期限に達し、ソフトは利用できなくなります。本来ならば、ここでメーカ側が新しい契約をしたときに有効期限を1年なり2年なり伸ばすことが必要ですが、その契約期限を延長する手続きを忘れていたという可能性が考えられます。

 ソフトバンクが古いソフトをインストールしたら利用できるようになったのは、エリクソンは過去のソフトに対してはしっかりと延長更新の手続きをしていたので、古いものにしたら利用できるようになったということが考えられます。

 このようにまさかの原因だったわけですが、いずれにせよ問題はネットワーク機器を開発したメーカ側の問題と言えそうです。一般的にネットワーク機器は個別の機器なのでセキュリティが高いと考えられていたわけですが、ちょっと何かしらのミスがあるとこのような障害につながりますので、本当に気をつけなければなりませんね。

コメントを残す

メールアドレスが公開されることはありません。
お名前、メール、ウェブサイトの入力は必須ではありません。