Internet Explorer(IE)がヤバい本当の理由
2021年の今、「IEのサポートが打ち切られるからヤバい」、という話しはご存知かもしれません。しかし、本当のヤバさはそんな事では無いのです。
今まで「IEでしか使えないレインズのヤバさ」を強調してきましたが、ひょっとしたら、若い方はどれだけIEがヤバいものだったのか、ご存知ない方もいて、実感も湧かないかも知れません。
オッサンとしては、ここは説明しておかなければなりません。
基本的な時代背景としては、「ブラウザ戦争」というのがありまして、これは単純なシェア争いとかではなく、インターネットの覇権争いみたいな所がありました。
というのも、WindowsがOSとしての独占的立場を利用してプリインストールするIEがブラウザ市場を占有しはじめ、インターネットにまつわる規格(HTMLやJavaScriptやCSS)までもが歪んでくる(ないがしろにされる)、という弊害が起きていたのです。
平たく言うと、それぞれが独自機能を勝手につけだして、IEでしか見れないページ、逆にIEでは観れない(崩れる、動かない)ページみたいな感じになってくるわけです。
みながIEのバグを前提としたHTMLコードを書き始めたりして、それがいつのまにかデファクトになってたりするのです。当然、別のブラウザーでは正しく表示されないわけです、そのブラウザーに原因があるわけでもないのに。もう色々とメチャクチャ。
私がHTMLやCSS、JavaScriptをガリガリ書いていたのは、第一次ブラウザ戦争の末期(1998-2000年)からであります。ちょっと凝った事をしようとすると、各ブラウザ毎に表示が崩れていないか確認するのが大変でありました。というかまともにやっていたらほぼ無理ゲー。変なHTMLを書いてハックするという達人技が必要で、正しいHTMLなんて書いてたら表示が崩れる、という世界。
今でも覚えているのは、FormタグでSubmitボタンを括ると変な余白が出来るというブラウザのバグがあるので、SubmitボタンをFormタグの外に置くハックとか。くだらない・・けど、プロに「おー、凄い良く知っているね、うちで働かない?」とか言われる時代。わざと仕様から外れたHTMLを書く(というのを知っている)のが評価される、というおかしなことになっていました。
当時は、IEとNetscape Navigatorのシェア争いでしたが、本当の戦争は、10年近くに渡る、独占禁止法にまつわるEU対マイクロソフトの戦い、と米国での裁判闘争、という法定での戦いにあったように思います。あの時のEUは本当によく頑張った。自分も、アンチ・マイクロソフトっぽく感化されていたような気もします。
その後、Netscape Navigatorは衰退してしまい、IEもやる気をなくしたかのように停滞し、IEのセキュリティ問題が噴出します。まさに「市場独占」の悪いところですね。
しかし、その後、Netscape Navigatorの後継たるMozilla Firefox、Opera、Konqueror(Safariの元)などが台頭しはじめ、自分はと言えば、さっさとFirefoxに乗り換え、プライベートではWindows自体を使わないようにしてLinuxを使ったりしていました。(WindowsNT系のWindows 2000がでてまた二股)
この頃は、第二次ブラウザ戦争とも言えますが、同時に、W3Cを始めとする「Web標準」というスタンダードを尊重しようぜ、という流れが強まります。いかにWeb標準に正しく準拠しているか競争みたいな所もあり、第一次と比べれば、健全なる競争です。この「Web標準」重視の流れのおかげで、インターネットの大混乱は起きず、今の平和なインターネットに至るという感じです。
で、IEはと言えば、第一次戦争時代に独自の機能をガンガンつけすぎた結果、互換性を保つ為にも作り直すわけにもいかず、身動きが出来ない状況に陥っていました。特に、ブラウザで普通は出来ない事を出来るようにするため、WindowsのOSに依存するActiveXという機能を付けてしまったがゆえに、そこを狙われたりして、Windows自体のセキュリティ問題として散々な状況。その他にも、毎週のように何かがありました。
ある意味、セキュリティ的に言えば牧歌的な時代にブラウザ戦争でやりやっていた為に、セキュリティ問題の事はあまり考えずに機能追加ばっかりしていた点を、後になって突かれたとも言えます。今のように、セキュア第一に作っていないのです。
もちろん、今でいうAjaxというJavaScriptでデータを持ってきて云々する、という元はIEが実装してたりして、IEも(というかマイクロソフト)それなりの功績はあります。(Ajaxを実現するXMLHttpRequestの生みの親はマイクロソフトのMSXMLパーサーで実装してあり、それをActiveX経由でJavaScriptから呼んでいた)
ただ、これがどれだけヤバかったかと言うと、当時、自分も試してみたのですが、JavaScriptを仕込んだHTMLと、Exe(実行ファイル)をレンタルサーバーに置いておくとします。で、IEを使ってそのHTMLのページを表示するとします。すると、仕込んであるJavaScriptがXMLHttpRequestでExeを取得して、ローカルに保存した上でExeファイルを起動、とか出来てしまったのです。
これ、たしかWindows98/ME/2000の時代だったように思いますが、ええ、ええ。あり得ないんですが、出来てしまったのです。当時は。Exeが単に「hello world」とかメッセージを書きだすアプリケーションならまだ良いですが、キーボードの入力をフックするWin32APIを実装するなんてのは簡単ですから、どのウィンドウで何をタイプしているのかを全てファイルに記録した上で、どこかに送信(いわゆるキーロガー)なんてのも、簡単に出来る訳です。最悪です。
もちろん、これはすぐ修正され(てたはず)、20年ぐらい経っているわけですが、自分はIE無理です。JavaScriptでExe(実行ファイル)をダウンロードしてファイルとして保存し起動できる事を確認した時点で、パソコンをそっと閉じ、以来、IEは使っていません。(その後、レインズにログインする必要が出てくるまでは・・・)
つまり、IEというのは、セキュアに作る事を考えていなかった時代に作られ、互換性を維持する為に作り直すことも出来ず、付け焼き刃的なセキュリティ対策を事後的に施してきたものなのです。
そんな時代の遺物であるIEを2021年にもなって未だに使い続けるのは本当にヤバい話しなのであります。そんな時代の遺物であるIEを、(法律で利用を義務付けられて指定されている)レインズを通して、2021年の初めまで日本全国の不動産会社に強制的に使用させてきたという話し・・・。
これ、悪(evil)でしょw
マイクロソフトが、ついに長年の計画の第一歩を踏み出した。多くの問題を抱えてきたウェブブラウザー「Internet Explorer」(IE)を、2022年6月15日をもって廃止すると発表したのである。
IEは1995年に導入され、97年から約20年にわたってすべてのWindowsデヴァイスにプリインストールされていた。しかし、あまねく存在していたからといって人気があったわけではない。IEにはスピードや信頼性、パフォーマンス上の問題があったのみならず、セキュリティ上の深刻な問題もあとを絶たなかったのである。
https://wired.jp/2021/05/23/internet-explorer-browser-dead/
因みに、今のWindows 10 は色々な面でかなり良くなりました。互換性と使い勝手を維持しつつセキュリティも、というバランスをなんとか取っている感じですし。マイクロソフト社自身も、以前は想像もつかなかったような、まるで別の会社のように変わっています。
今ではむしろ、Do no evilを謳っていたはずのGoogleがevilになりつつあります。
