エンドユーザがJavaプラットフォームを避ける理由として挙げられるのは、Javaブラウザプラグインへ繰り返されるセキュリティ違反に加え、Javaランタイムインストーラに関係のないブラウザアドオンを含むような、長期間に渡って作り上げられてきたプラクティスだ。
2005年の終わりに、SunはJavaランタイムインストーラにGoogleツールバーをバンドルし始めた。その3年後に、Microsoftとの取引でMSNツールバーをバンドルするようになり、2008年にはYahooツールバーをバンドルするように変更された。近頃は、Windows PCにJREをインストールすると、インストーラは、Internet Explorer、Chrome、Firefoxに「Ask」サーチエンジンツールバーをインストールするかどうかオプションを表示する。そして、「Ask」をインストールした場合、「Ask」はデフォルトのサーチプロバイダになる。オプションのチェックボックスのチェックを外せば「Ask」はインストールされないが、インストーラはオプションの選択を保存しない。その結果、別のセキュリティの問題でアップデートをインストールする度に、「Ask」オプションの選択を外す必要がある。
これにはちょっとイライラさせられるが、実はもっといやなことがある。インストーラでこのページを見たら、
Askツールバーがインストールされたと思うだろう。これが意図せずインストールされたものならば、すぐにコントロールパネルを開いて削除しようとする。ところが、コントロールパネルを開いても、Askツールバーは見つからない。上記の最後のダイアログのインストラクションのリンクはJavaに関する情報ばかりで、Askツールバーに関する説明はない。しかし、Askツールバーは10分経ってから実行されるので、プログラム一覧に現れるのは10分後だ。この動作について私が唯一考えられる説明は、このプログラムをユーザがアンインストールするのを難しくしようとしているということだ。Ask Partner NetworkのAndrew Moers氏は、「この動作は、ユーザのコンピュータに負荷を与えずに、JREのアップデートを適切にロードさせるためです。これはユーザをだまそうとしているのではなく、Ask製品全体を特徴づけるものでもありません。」とInfoQに語った。Ed Bott氏はこれに異議を唱える。Ed Bott氏は「このように動くインストーラで、正当なプログラムをみたことはありません。」とZDNetで述べている。 私がテストしたところ、Windows 7のインスタンスでアンインストールは失敗し、こちらから別のユーティリティを使わなければならなかった。
Bott氏は、以前にAdobeとSkypeを最悪の違反者だとして、フォイストウェアをずっと批判し続けてきた。しかし、ここ1年でAdobeとSkypeはわずかに改善し、今ではJavaが一番の批判対象だとBott氏は信じている。
Oracleに対する証拠は圧倒的です。特に以下の点があります。
- Javaの自動アップデート機能を使って、Windowsの重要なセキュリティアップデートをインストールするとき、サードパーティのソフトウェアがいつも含まれています。ユーザに対して追加される2つのパッケージはAskツールバーとMcAfeeセキュリティスキャナです。
- Javaのアップデートの度に、追加のソフトウェアのインストールをオプトアウトしなければなりません。もしあなたが忙しいか、気が散っていたか、Javaの「推奨」を信じるほどあまり経験のない人だったならば、自分のPCに不要なソフトウェアをインストールすることになるでしょう。
- Askツールバーを提供するのにOracleとパートナーになっているIACは、このソフトウェアをインストールするために人を欺くような技術を使っています。これらの技術は、初心者と経験者の両方のコンピュータユーザを標的にするようなソーシャルエンジニアリングを含んでいます。このふるまいは、管轄によっては違法になるかもしれません。
- Ask.comのサーチページの検索結果はあまり良くありません。誤解を与え、違法となるかもしれない技術を使い、本質的な検索結果の代わりに、ページを訪れた人をだまして、有料の広告をクリックするようにします。
Harvard大学大学院教授のBen Edelman氏は、人をだますソフトウェアの実践を研究し、Askツールバーに関する大量の分析を公表している。Edelman氏は次のように結論付けた。
Oracleが広告のための余分なソフトウェアをユーザにインストールさせる機会としてセキュリティアップデートを使い、このようなセキュリティの不備から利益を上げるのを見るのは悩ましいものです。Javaの多くのセキュリティ問題は、インストール時に他のソフトウェアをバンドルすることで、もっと悪くなっています。私は、Javaのセキュリティアップデートの度に、新しいAskをインストールするかどうかというプロンプトを受け取りました。(Ed Bott氏が数えたところ、過去18ヶ月で11回でした。) ユーザが今までに6回はIACの申し出を断っていても、Oracleは聞き続けます。そして、たった1回の不注意や、10回目の要求で1回だけクリックしたり、キーボードのキーを打ったりしただけで、Askツールバーがインストールされるでしょう。
セキュリティアップデートは、けっして追加のソフトウェアを押し込む機会として使われるべきではありません。Oracleは最近のセキュリティ問題からよく分かっているように、ユーザは攻撃されやすい重要な不具合を修正するために、ソフトウェアアップデートが必要です。セキュリティアップデートと共に広告ソフトウェアをバンドルすることで、Oracleはユーザがセキュリティアップデートを信用しないようにしたのです。その結果、ユーザは、Oracleや別の所からもアップデートをインストールしなくなります。とりあえず、アップデート処理をより遅く、よりうっとうしいものにすることで、Oracleはユーザが自分のコンピュータにパッチをあてる可能性を低くしています。その代わりに、Oracleはアップデート処理を出来る限り速く、簡単にすべきです。不要な手順を減らし、ユーザにセキュリティアップデートは速くてトラブルが起きないと示すのです。
Java開発は何かしらお金になるものでなければならず、不要なツールバーをインストールすることはJavaの大きさからいってインストールベースでは大きなビジネスになる。しかし、これは望ましい動きではない。最近のアメリカ国土安全保障省の後押しで、ユーザがJavaを無効にするように主張している主要なウェブサイト (1、2、3) でも、このような実装がユーザに不満を与えているとしている。
InfoQは、OracleとAskにコメントを求めている。Oracleはコメントを拒否し、Askからはこのニュースの公開時点でまだ返答はない。