2010年09月03日

岡崎市立中央図書館事件について

数ヶ月前に気になっていたニュースの続報が今朝流れた

-ホームページへの大量アクセス事件 岡崎市立中央図書館の弁明に異論相次ぐ : J-CASTニュース-
http://www.j-cast.com/2010/09/02074918.html?p=all

ある男性が図書館の新着図書のページが使い辛いので、自作のプログラムで自動でリストを取得していたら図書館のサーバが落ちるようになった。男性は図書館にサイバー攻撃をしたとして逮捕されたという事件(?)

最初のニュースを読んだ時は男性のプログラム作成の意図が記事に載っておらず、ただ単に連続アクセスを繰り返して図書館のサーバをダウンさせたとだけあって、あぁまた愉快犯がDDoS攻撃でもやったのか?。と思ってました。

その後、男性は釈放(起訴猶予処分)され自身で謝罪と釈明とプログラム作成の経緯をブログで行っていました。
んで、それを読んだ一般のシステム関係者は『あれ?それって図書館のシステムの方が悪くね?』という流れになっていたのです。

ここで、システムにはまったく詳しくない私が自分なりに解釈した男性の行動を説明しますと。

図書館の新着図書のページが使い辛い
なぜならカテゴリ(10程)別にわかれていて、各カテゴリには100〜200冊(これは新着扱いが3ヶ月も続くから)の新着情報が載っている。10x200=2,000冊の情報

しかもデータにはいつ入荷したかの日時が無いうえに、いつ更新されるか判らない。
さらに新着順ではなく『あいうえお』順でリスト表示されている(ソートが出来ない)
ならば2,000冊のデータを自分のPC(最初はレンタルサーバだったそうだが)に吸い出して日付データを加えてリスト化し、新着図書を見つけやすいプログラムを作ろうと考えた。

んで、1データ(1冊分のデータ:題名とかISBNとか数kバイト程度だと思われる)を1秒間隔で取得するように設定して(2000冊だと2000秒)、しかも1データを取得するときはサーバの返答を待ってから次のデータの取得をするようにした。(同時何個もデータを取得する並列処理は行わない)

これで図書館のサーバはダウンした。

えっと、これってやっぱり図書館のシステムが貧弱じゃね?


Yahoo!ニュースの当該ニュースのコメントを読むと
『男性が悪い』
『1秒間に1アクセスは異常』
『新着リストを1秒に1回更新確認は異常』
『図書館が被害者』

とか男性を非難している方がチラホラと。
もちろんシステムに詳しい方が丁寧に図書館のシステムが貧弱なのですよと説明しているのですが、やはりどうも『1秒間に1アクセス』の意味を勘違いされた方が男性を異常者として非難してます。

『1秒間に1アクセス』は普通にWEBをブラウジングしていると当たり前の数字です。というか、ウチのブログを最初に開いた時には皆さん1秒間に数回のアクセスをしています。HTMLファイル(実際はデータベースだが)、画像、スクリプトファイル、スタイルシート等、しかも同時(並列)に読込んでいます。
WEBサーバのログは全部読込んで1アクセスではありません。各ファイル毎に1アクセスなのです。

『新着リストを1秒に1回更新確認は異常』ここで誤解してる方は新着リストを1つのファイルとして考えているのだと思います。
新着リストページはデータベースに格納されている1冊1ファイルの状態になっているものを検索(多分カテゴリータグ)して表示しているだけで、新着リスト.xxxというファイルがある訳ではないのです。

逆に男性はこの新着リスト.xxxを作る為にプログラムを作ったのだと考えます。

データベースには1冊1ファイルでデータが格納されています、それを1冊づつ、しかも負荷のかからないように1秒間隔でサーバからデータベースにデータを送れと命令させるのはそんなに異常な行動でしょうかね。

そこで最初のニュース記事なのですが・・・

まぁ図書館も想定外の使われ方をしたので『対応に問題はない』っーのは判るけど

「通常の利用ではないから、ああいう事態が起こったということです。」


とまで言い切っちゃうのはどうよ。

さっきも書いたけど1秒間に1回のアクセスは大量でも異常でもなく通常の使用方法です。

ああ、書きわすれた。では何故サーバダウンしたかのかという原因。

サーバからデータベースへデータの受け渡しを要求すると、通常なら受け渡しが終了した時点で接続が切れます。
しかし、図書館側のサーバはその接続を10分間維持したままでした。
次の要求があったら新しく接続し、またそれを10分間維持する
これを繰り返し、結局接続限界が来てサーバダウン(データベースとの応答が出来なくなる)という、まぁ明らかな欠陥があったわけです。

これだと図書館側の言う通常の利用でも同時接続の数が多くなれば簡単にサーバダウンします。

しかもこの欠陥をシステムを作成した会社は知っていました。
事件(?)の4年も前には欠陥を修正したシステムを販売していたのです。

しかしながら図書館側にはそれを通知せず、今回の事件(?)でも『責任はありません』と宣っています。


男性は図書館側が想定していた使い方をせずにサーバをダウンさせてしまった事は申し訳なかったと言っていますし、また逮捕された事についても納得されているようです。

そんな男性の潔い態度と違って、まったく反省していない図書館側とシステム会社には呆れますね。

システムに欠陥がありながらそれを黙っていた放置していたシステム会社。
高い税金でシステムを入れ、それが欠陥品だと判ってもなお通常利用じゃない男性が悪いと宣う図書館。男性以上に非があるような気がしますがねぇ。


 

posted by ヘイゴ at 14:13 | Comment(0) | TrackBack(0) | 日記
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/40511472
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック