Javaプラグインは、少なくとも過去において、多くのセキュリティ問題を抱えていることが知られています。GoogleChromeは、それをもはやサポートしていません。老朽化した技術として、Firefoxの近くには小さな警告メッセージが表示されます。
しかし、JREはブラウザプラグインがなくても安全ですか? Javaデスクトップ、モバイル、およびサーバーアプリケーションは、Javaプラグインと同じくらい脆弱ですか?
はい-Javaデスクトップおよびサーバーアプリケーションは基本的に安全です。
デスクトップアプリケーション(Skype、Picassaなど)を実行すると、そのソフトウェアにコンピュータへのフルアクセスが与えられます。ソフトウェアを信頼する必要があります。
対照的に、WebブラウザでJavaアプレットを実行すると、アプレットはサンドボックスと呼ばれる制限された環境で実行されます。サンドボックスが存在するため、Javaアプレット。
Javaには多くの脆弱性があります。それらのほとんどすべてが「サンドボックスエスケープ」です。つまり、古いバージョンのJavaを実行している場合、悪意のあるアプレットがサンドボックスから抜け出し、コンピュータを制御する可能性があります。
サンドボックスをサポートするテクノロジーはあまりありません。実際、人々が信頼できないソフトウェアを日常的に実行している一般的なテクノロジーは、Java、JavaScript、Flashの3つだけです。これらすべてに、サンドボックスエスケープの脆弱性が多数あり、安全なサンドボックスを作成することの難しさを示しています。
Javaをデスクトップまたはサーバーで実行すると、実行中のJavaコードが信頼できるため、サンドボックスに依存しません。そのコンテキストの主な関心事は、信頼できないデータがアプリケーションに干渉する可能性があるかどうかです。たとえば、Skypeで誰かと話している場合、Skypeが誤って処理して悪意のあるメッセージを送信し、コンピューターを制御する可能性があります(私はmここでは例としてSkypeを使用しています)。
Javaランタイムのバグにより、デスクトップまたはサーバーアプリケーションがハッキングされる可能性があります。通常、これはJava自体。
しかし、JREはブラウザプラグインがなくても安全ですか? Javaデスクトップ、モバイル、サーバーアプリケーションはJavaプラグインと同じくらい脆弱ですか?
Javaプラグインを考慮しなくても、JREはそれほど安全ではありません。ヒントを提供するために、 こちら 今年中にさまざまなバージョンのJREに影響を与える、重大なものを含むセキュリティ脆弱性の長いリストが見つかります。
そして、JVM(および他の場所)で見つけたサンドボックス化メカニズムはそれほど完璧ではなく、バイパスされる場合があります。
オラクルはJavaの脆弱性が脆弱なコンポーネントのAPIに悪意のある入力を提供することによりサーバー配備で悪用される可能性があることを認識していますが、そのメッセージはJavaの脆弱性の大部分がJavaブラウザプラグイン、またはサーバーのJavaの欠陥の悪用シナリオはありそうもない、とGowdiakは火曜日に電子メールで言った。
「Java SEの脆弱性の影響に関して、Oracleの主張が正しくないことをユーザーに知らせようとした」とゴーディアック氏は語った。 「OracleがJavaプラグインのみに影響を与えると評価したバグがサーバーにも影響を与える可能性があることを証明しました。」
Java REは常に宣伝されているほど安全ではありませんが、代替手段はさらに悪いものです。C++のような他のテクノロジーは、サンドボックスを提供しようとせず、プログラムが望むことを何でもできるようにしません。自分のマシンでローカルプログラムを実行する場合、必要なことは何でもできるようにする必要があります。C、Python、Javaなどで実装されているかどうかは関係ありません。