Web2.0時代のセキュリティ 其の二 | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

Web 2.0で事態が悪化


一昔前まで、JavaScriptというと扱いづらい、危険性があるなどの理由でかなり敬遠されがちでJavaScriptをデフォルトで無効にして利用する人もいたりしたものです。

しかし、昨今のWeb2.0 の流行を受けて、多くのサイトではJavaScriptを利用してサイトの構築を行っています。


※ Web2.0イコールJavaScriptを用いたサイト構築というわけではありません。

  Web2.0のユーザー参加型のサービスを展開するにあたって、ユーザーがより利用しやすいようにAjax など

  JavaScriptを使った技術で利便性を高める動きが活発化しているというわけです。


記事にあるように、こうしたJavaScriptの危険性というのは昔から変わらず指摘されているにもかかわらず最近、そのセキュリティの穴をついた事件を耳にしたりします。

これには、JavaScript自体の扱いの難しさもありますが、ユーザー環境に強く依存する事の危険性をあまり開発する側が認識していないと言う事に問題があると思います。

サーバー側だけで完結するシステムは、その処理が基本的にユーザーの手が届かないところで安全におこなれます。

一方、JavaScriptを用いた場合はユーザー環境で実行されるためある意味何をされるか予想がつかない部分が出てきます。

そういった漏れが穴になり、悪用される恐れがあるわけです。


しかし、ここ最近のWebページは全てといって良いほどJavaScriptが利用されています。

YahooやGoogleのページでも使われていますし(おそらく訪問履歴やパーソナライズのため)、YouTubeではJavaScriptを有効にしておかないと動画が見れません。

Blog でも多くが、ユーザーの自由度を広げるためにJavaScriptを書くことを許可しているところもあります。


先ほど書いたように、全てがリッチクライアント を作るためだけに構築されているわけではなく、例えばユーザーの訪問の履歴をJavaScriptを使ってCookieにデータを埋めこんだり、外部の解析ツールを利用するために特殊なタグを埋め込んだりしているわけです。


こういったものをあまり多用するのもどうかと思うのですが、残念ながら現在のところクライアント環境でもっとも手軽に動作するプログラミング言語がこのJavaScriptとなっています。

面白いサービスを展開し、多くのユーザーの目に留まることは確かに重要ですが、そこにある落とし穴と言うものもしっかり認識して、せっかくのサービスを台無しにするなどといった事が無いようにしてほしい

ものです。