同社はimage.canonにおいて、「ユーザーが画像をアップロードし、最大30日間保存する短期保存ストレージ」と「特定の期限なしにユーザー1人あたり最大10GBの画像を保存する長期保存ストレージ」の2つのサービスを提供している。
今回のデータ消失は、7月30日にキヤノンがこれらのサービスをコントロールするソフトウェアを新バージョンに切り替える際、短期保存ストレージ用のプログラムコードが短期保存と長期保存の両ストレージで作動したことにより発生。30日以上保存された画像に一部消失が生じたという。
原因となったプログラムコードは8月4日までに特定・修正。image.canonへの不正アクセスは発見されず、画像の流出もなかったという。
(記事を一部引用しています)
(記事元)https://dc.watch.impress.co.jp/docs/news/1270265.html
不正アクセスなし
デジカメWatchがキヤノンのクラウドプラットホームにおいてデータ喪失が発生した問題について報告しています。
記事によれば、今回の問題は特定のプログラムによって発生した問題だとしています。そして、そのプログラムについてもすでに特定されており修正したとしていますね。調査の結果、image.canonへの不正アクセスは発見されていないし、画像の流出もなかったとしています。
以前の海外の噂では、キヤノンのこれらのサービスはランサムウエアに感染したのでは?という噂がありましたが、今回の発表はそれを否定する内容となりそうです。
ランサムウエアは、過去にもいろいろ話題になりましたね。ランサムウエアは、多くは他のソフトウエアに成りすますなどして、個々のPCやサーバにダウンロードされ、実行することで発症します。いわばトロイの木馬と呼ばれる典型的なソフトです。これをダウンロードしてインストールすると、無料のゲームができますとか、どんな拡張子の動画でも閲覧できますとか、そんな誰もが欲しくなりそうなソフトウエアに偽装されて提供されていて、パソコンにインストールさせようとしています。
ソフトをダウンロードして実行すると、特定の拡張子のファイルなどを暗号化して実行/閲覧できなくしてしまい、そのかわりお金を支払えというメッセージと銀行口座(主にビットコイン)と連絡先が表示されるというような感じになりますね。
今回のimage.canonは、このようなランサムウエアがサーバ上で実行されてしまい、ユーザが保管されていた画像や動画などが暗号化され喪失してしまったのではないか?と噂されていたわけです。
なぜ画像が削除されたのか?
image.canonの画像保管方法については、二つの方法があるとしています。具体的には以下のような使い分けになっているようです。
・短期間の保存 容量に関係なく30日間すべてのデータを保存
→オリジナル画像データと表示用サムネイルが生成される
→30日後は表示用サムネイルだけ残り、オリジナル画像データは削除される
→動画も30日後に削除される?
・長期的な保存 10GBまでオリジナルデータを長期保存可能
→動画、静止画で10GBまで長期保存が可能
この仕様から考えると、まず画像や動画をimage.canonにアップロードした段階で、それらのサムネイルを生成してサーバに保存していたと思われます。さらに恐らく短期間だけ画像を保存するという仕組みのために、保存して30日が経過したら自動的に画像や動画を削除するというプログラムを作っていて、そのプログラムを1日に1回ほど作動させるというようなことをしていたのでしようね。その削除するファイルを特定するためにサーバ上に記録されているファイルの保存日の日付をもとに削除するファイルを特定していたはずです。
この定期的な削除プログラムが、短期間保存用のデータだけを対象にしていれば問題はなかったのですが、そのプログラムは、どうやら長期的に保存されるはずのデータも対象にしてしまい、間違って30日以前のタイムスタンプがあるファイルも削除してしまったと考えられますね。
そのため30日以上、長期的保存してくださいねとお願いしていたデータのうち、30日以上保管されていたものが間違って削除されてしまったということのようです。
確かにそういう間違いがあるかもねという印象があります。ですが、ちょっと疑問に感じる部分もありますね。通常はシステムがおかしくなったりした場合に備えて、バックアップデータを保存しておくことが普通です。何年分も遡れるほどのデータをバックアップしろとはいいませんが、例えば10日分ぐらいは過去に遡って元に戻せるようなバックアップをしておくというのが普通なのではないでしょうか?
今回、間違ってプログラムが実行されたことで、30日以前のデータが消去されてしまったとしても、直近の10日間のサーバ上のすべてのデータを毎日バックアップしていれば、最悪でも24時間前までの状態にさかのぼって復活することができたはずです。30日以前のデータを消去したらデータが無くなってしまいましたということは、まったくデータのバックアップを取っていなかったということになるので、システムとして問題があるように思いますね。
ひょっとしたらRAID環境にしたり、複数のデータセンターを利用していて、一部の物理的な記録装置が壊れたり、データセンタそのものが稼働しなくても大丈夫なのでバックアップ代わりになると考えていたのかもしれませんが、このようにプログラムの問題があると消去されてしまいますので、RAID環境や複数のデータセンターを利用していてもデータのバックアップ代わりにはなりません。
普通はそういうことは当然理解されていて、システムを作っていると思うのですが、なぜ今回このような問題が発生してしまったのか、ちょっと疑問に感じるところがありますね。
[template id=”4241″]
コメント
コメント一覧 (3件)
人間のやることなんだから、ミスなんていくらでもあるでしょうに
こんなのに疑問だなんだと難癖つけてると、どこかの野党みたい
自分の大切なデータが無くなってないからそんなこと言えるのでしょう。
自民党のようなキヤノンも地に落ちたなww
(記事と関係ないコメントのため削除しました。記事と関係あるコメントをお願いいたします)