岡崎市立中央図書館問題のサマリー

事の発端;ある、普通の、といってもプログラマーだった、岡崎市立中央図書館の一利用者が、警察に捕まった。
事情;その人は、わりと頻繁に図書館に通う利用者だったそうだ。しかし、岡崎市立中央図書館のWebにある新刊案内が、どうも見ずらい。見ずらいというより、最近わかったことだけど、利用者にとってとても負担になるページ構成だった。今現在も。
そいで、じゃー、新刊のページが更新されたら、わかるようにWebを1秒おきにチェックをするプログラムを実行させてみよう。
その結果;Webが止まってしまった。図書館の人は、警察に電話をかけ、警察はログの提出を求めたので、それに応じた。その結果、その人のIPアドレスが浮かび上がって、警察は、通信業者に、個人情報の開示を求めた。求められたので、開示をした結果、その人は拘置所に連れて行かれた。どこにも逃げないのに。逃げる必要がなかったわけだし。でも、拘置された。
結果には理由がある;なぜWebサービスが止まったのか。それは現在検証されている。それを納品した三菱電機の子会社のプログラムに瑕疵があり、それは、新しいバージョンでは修正されていたけど、岡崎市立中央図書館には通知されていなかった。その瑕疵というのは、要は、プログラムミス。通常Webのアプリケーションは、ユーザーがつなぎに来たら、セッションIDを発行し、データベース接続をするが、Webのアクセスは、常に単独なので、データベース接続は、1回つながった後は常に接続を切るという設計になっている。が、切られないプログラムだったので、1秒間に1回のアクセスに耐えきれなくなって、データベースアクセスの部分で、破綻をきたした。ので、エラーを吐いて止まってしまった。マシン的には、余裕の動作中だったと想像されるが。
 本来、破綻が起こらないプログラムを作るのが普通であり、世の中はそういうプログラムが一般的。たいていは、テストで見つかるレベルのはなし。また、1秒に1回のアクセスというのは、とくに多いわけでなく、楽天なんか、1秒間に数千のアクセスをさばいている。
第2ステージ;上記の話は、その人を犯罪者にしてしまい、日本のWebプログラミングの世界を萎縮させたという大きな犯罪を犯したのだけど、誰も責任をとっていない。
何が起こったのか;三菱電機の子会社の作ったプログラムは、その後37の公立図書館に販売された。そして、その販売されたプログラムに、岡崎市立中央図書館の利用者の個人情報を、いや、Webページの多くまでも、そっくりコピーして販売されていたのが発覚した。
問題はどこにあるのか;個人情報をバラまいた三菱電機の子会社の責任、それを何とも感じない図書館。
おまけ;
 Googleなどのクロールをしているロボットに対して、来てほしくない場合、もしくは、このディレクトリ以下はクロールしてほしくない場合、robot.txtというファイルを置いておく。これは、15年前にWebサーバーが作られた当時からあった仕組み?
 で、なぜか、図書館のWebには、robot.txtが置かれ、その内容が、全部拒否。というのも、そのサンプルを出した国の機関の最初にあった事例をそのままコピペしたのが原因。それには、ちゃんと状況に合わせて、許可と拒否を記述しろとあったのだが。
お近くの図書館の名前を検索してみると全国で、そういう状態が起こっていることが分かる。つまり、公共機関のWebは、検索しちゃーだめよと、設定されているわけだ。それに、文句を言わない日本人も奇妙なんだけど。


この文章はほぼ要約的にはあっていると思いますが、ここの部分において、正しくありませんから、コピペはしないでね。


解明されたのはなぜか;一企業の失敗が、ここまで解明されたかは簡単な理由。そのソフトを販売している会社には、きっと下請けがいた。下請けの下請けかもしれないが、岡崎市立中央図書館で動いているプログラムをよその図書館に販売するのに、まったく同じものをCDとかに焼くのが面倒なので、アノニマスFTP出来るようにした。つまり、誰からでも中が見えますよ、という状態にしていたの。だから、見られてしまった。急いで消してはいるけど、消している最中だけど、わかっちゃったのね。メーカーは、ちゃんとパスワードをつけたから大丈夫だと発表している。つまり、パスワードを設定していなかったことを公に認めたわけだ。だから、その個人情報を読み出した人は、日本の不正アクセス法では捕まえることはできない。不正アクセス法はパスワードを設定していない分には、何の効力もないから。

 でも、そうでもないかもしれない。不正アクセス法が作られた直近の京大の方の逮捕劇は、Webのセキュリティホールを指摘した。具体的に、セキュリティ関連の集いで具体的に存在するサイトについて説明をしたら、それを持ち帰って3人の人が、実際にセキュリティホールを追加アクセスを試みた。本来、セキュリティホールを野放しにしているソフト会社が問題なのに、そして、Webサーバーにパスワードを設定できないのに、同居するFTPサーバーはパスワードが設定してあるというでたらめもいい論理で、その人を犯罪者にしてしまった裁判所。
 そのころのセキュリティホールはほとんどが単純なバッファーオーバフローが原因。これは、ある文字や文字列をアクセスするとき、たとえば、入力は50文字ですというように制限すれば、プログラム上は、50文字以内であることをチェックするように作るもんだけど、17年所得番付1番の所有する会社は、それをやっていなかった。チェックをするというのは、それだけプログラムが遅くなるということ。だから、インドに出来るだけ、ネットスケープよりはやいWebブラウザを作れと、頑張らさせた。その結果が、これだ。
 50文字の先に、ウイルスのプログラムを書き込んで、それを実行させるようにする。そういうプログラムはだめですよ、ていう集会で、指摘した人は拘置所に連れて行かれてしまった。日本はそういう国なんだ。