JavaとJavaの脆弱性について

このQ&Aのポイント
  • Javaの脆弱性とは、不正な処理を実行するプログラムを組み込まれやすいサイトを作ることです。
  • 一般ユーザーが使っているJavaとプログラミングで使用するJavaは異なるものです。
  • 脆弱性に対策するために、普段Javaを使わない場合はアンインストールし、必要な場合は最新版をインストールすることをおすすめします。
回答を見る
  • ベストアンサー

javaとjavaの脆弱性

プログラミング初心者です。 現在JavaSEを使用してjavaでのプログラミングを学んでいます。 JavaSEやJavaEEというのはJavaを構成するソフトウェアだということまでは理解している程度の本当に初心者になります。 今回、わけあってflashblackのようなJavaの脆弱性を狙ったウイルスについて調べているのですが、Javaの脆弱性というものがいまいち理解できません。 一般ユーザーへの呼びかけで、 「普段Javaを使わないならアンインストールし、ネットで見られないページなどがあって不便なようなら最新版をインストールしたらいい」 という書き込みなどを見ました。 Javaとは、インターネットでサイトを閲覧するものでもあり、プログラミング言語でもあるのでしょうか。 私はJavaというプログラミング言語のセットの中にJavaSEやJavaEEが入っている、というイメージでした。 そうするとインターネットでサイトを見ている一般ユーザーが使っているJavaとプログラミングで使用するJavaは違うものなのでしょうか。 考え方が根本的に何かちがうのでしょうか。 またJavaの脆弱性とはなんでしょうか。 不正な処理を実行するプログラムを組み込まれてしまいやすいサイトを作る、プログラミングというような考え方でよろしいのでしょうか。

noname#180969
noname#180969
  • Java
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

> Javaとは、インターネットでサイトを閲覧するものでもあり、プログラミング言語でもあるのでしょうか。 Javaはプログラミング言語の名前です。 Java言語で書かれたプログラムを実行するためには、通常、Java実行環境(Java Runtime Environment, JRE)というものがコンピュータにインストールされている必要があります。「普段Javaを使わないならアンインストールし」という文脈での「Java」はJava言語そのものを指しているのではなく、JREのことです。 Javaには、ウェブブラウザを経由するなどしてネットワーク越しにプログラムを実行するための仕組み(Appletなど)があります。コンピュータからJREをアンインストールしてしまうと、そのような仕組みを利用しているウェブサイトの一部のコンテンツを見ることができなくなります。しかし、Javaについて「インターネットでサイトを閲覧するもの」という説明をつけるのは正鵠を射ているとは言えません。 > そうするとインターネットでサイトを見ている一般ユーザーが使っているJavaとプログラミングで使用するJavaは違うものなのでしょうか。 基本的に同じものですよ。JREとJDKの違い、Java SE/Java EE/Java MEの違いとかを言い出すとややこしくなりますが。 > またJavaの脆弱性とはなんでしょうか。 Java言語で実行できてはいけないはずのことが何らかの方法によって実行できてしまう、JREの欠陥です。その原因はJRE実装上のバグであったりJava言語仕様上の盲点であったりします。 悪意を持った人が脆弱性を利用することで、対象のコンピュータからデータを盗み出す・書き換える・消す、正常に起動できなくするなどの攻撃を行えるかもしれません。Flashbackが利用した脆弱性がどんなものなのかは調べていません。

noname#180969
質問者

お礼

非常にわかりやすい解説ありがとうございました! 助かりました!

その他の回答 (2)

  • notnot
  • ベストアンサー率47% (4846/10257)
回答No.3

Javaにはサーバーで動く物と、サイトからダウンロードされブラウザの中で動くものがあります。 あなたがよく知っているのはサーバーで動く物ですね。言語としては同じですが、実行環境が違います。 ブラウザで動くJavaはアプレットと呼ばれ、ブラウザのプラグインの中で動きます。 Javaアプレットを組み込んだサイトは以前はよく見かけましたが、現在ではFlashにその場所を追われた感じであまり見かけません。 >「普段Javaを使わないならアンインストールし、ネットで見られないページなどがあって不便なようなら最新版をインストールしたらいい」 と言うのは、一般の人だと、いつ見るかわからないJavaアプレットのページに備えて常にJava実行環境(JRE)とプラグインをアップデートするより、必要な都度インストールして、見終わったらアンインストールしたほうが、かえって手間が掛からないのではないか? つまり、 JREのアップデート頻度 > Javaアプレットのページを見る頻度 ということです。本当に、そうなのかどうかは人に寄りますけど。 PCにインストールされたJREに脆弱性があると、悪意を持った人が自分のサイトに、「ゲームだ」とかいって脆弱性を突くJavaプログラムを置いておくと、そのサイトを訪れた人のPCのファイルを見たり消したり出来るわけです。Flashの脆弱性とおなじようなものです。

noname#180969
質問者

お礼

ご説明ありがとうございました!

  • dscripty
  • ベストアンサー率51% (166/325)
回答No.1

flashblock じゃなくて flashback だとおもう。 Java Runtime Environment -Wikipedia http://ja.wikipedia.org/wiki/Java_Runtime_Environment Javaアプレット -Wikipedia http://ja.m.wikipedia.org/wiki/Java%E3%82%A2%E3%83%97%E3%83%AC%E3%83%83%E3%83%88 OSX.FlashBack.K の概要と 内部的な動作 | Symantec Connect Community http://www.symantec.com/connect/blogs/osxflashbackk-0

noname#180969
質問者

お礼

>flashblock じゃなくて flashback だとおもう。 タイプミスでした。 大変失礼いたしました。

関連するQ&A

  • CとJAVA

    いずれ、CとJAVA両方使えるようになりたいのですが、等しいくらいどちらもやりたいです。 なのでどちらから手をつければいいか決められないでいます。とりあえずなにか作りたい!っていう希望はあります。そして情報系の学科に進むつもりでいるので。 プログラミングはまったくの初心者ですが、一般的にJAVAは文法的にC言語に似た言語、JAVAの方がとっつきやすい、っていうのはよく聞きます。でも最終的にはプログラミング関係の就職も考えているので大変でも努力は惜しまないつもりです。 そこでC言語とJAVAそれぞれについての長所、短所を教えて欲しいです。もっと踏み込んで、(将来性も考えて)どちらから手をつければいいかのご意見をもらえればと思います。 ご意見お待ちしています!

  • OpenOffice等の脆弱性(javaについて)

    こんにちは。 Office製品での脆弱性について教えて下さい。 セキュリティ的にMSOfficeを選んだ方が良いのか、OpenOfficeを選んだ方が良いかの話です。 先日騒がれたjavaの脆弱性ですが、OpenOfficeにはjavaが使用されています。 なのでOpenOfficeを使用するのは危険なのかなーとも思うのですが、マイクロソフト製品のMSOfficeも月イチでパッチが当たってきたりするので、脆弱性はどのOfficeにも存在する認識です。 無論javaも最新verを適用すればOKという話なのですが、果たしてどちらが安全なのかという判断が出来ていない状態です。 一概にどちらが安全です、と言えない状況だとは思うのですが、こうしたOfficeソフトをセキュリティ基準で選ぶのに、判定となる物差しをどなたかご存知であれば教えて下さい。 また、javaの脆弱性が騒がれた割には、MS製品の脆弱性は騒がれないなー、という感覚なのですが、javaはMS製品と比較して危険なのでしょうか?  ご存知の方より回答頂ければ幸いです。 宜しくお願い致します。

  • java vmの脆弱性

    今日、マイクロソフトのサイトで「JAVAアプレット」と「仮想マシンサンドボックス」についてのセキュリティ情報が掲載されていました。これら2つは、JAVA VMの脆弱性についての事のようですが、JAVA VMとは何ですか? また、この脆弱性によりどんな自体が引き起こされる可能性があるのでしょうか? 最後に、数ヶ月前に「ActiveXコンポーネント~」の対応で VMのビルドを3802にしたのですが、これで今回の2つの問題は解決できるのでしょうか?

  • CとJAVA

    プログラミングをまったく書いたことのない超初心者なのですが。CかJAVAどちらかの言語を学びたいと思っているのですが。仕事で使うためできるだけ早く身につけたいのですか、どちらの方が早く理解できるでしょうか。

  • Javaのバージョン?

    Javaでプログラミングをしているものです。 今のところはあまり、Javaのバージョンを意識せずにやっています。 「Java 5以降での書き方なのです・・・」、「Java 2 Platform SE 5.0」、「Java EE」 Javaの後ろに色々とついていますが、何がどう違うかわかりません。 Java SEと Java EEとは何が違うのか? 説明していただけると嬉しいです。初心者でもわかりやすく書いているサイトの紹介でも構いません。 お願いします。

    • ベストアンサー
    • Java
  • Javaについて

    Firefoxを使用しているのですが Java SE 6.0u1 (J2SE6.0.01) に付属していた Java Console 拡張機能は Firefox と互換性がありません (詳細)。Java の動作には支障ありませんが、[ツール] メニューの [Java Console] は利用できません。この問題は、Java の Web サイト から入手可能な Java SE 6.0u2 (J2SE6.0.02) で修正されています。 このJava SE 6.0u2がhttp://java.sun.com/javase/downloads/index.jspのどこにあるのか分かりません 良ければ教えて頂けると嬉しいです・・・

  • javaとは?

    たまに「javaのアップデートをしてください」 という表示がでるのですが、javaを使うことによって何ができるのでしょうか? javaはプログラミング言語のひとつだと思っていたのですが、 インターネットをするにおいて、javaは必要な機能なのですか? javaのアップデートをしないとjavaで作られたサイトが見れないのでしょうか?

  • javaとjavaスクリプト

    過去のgooもいろいろ見てみたのですが、よく分からないことがあるので、教えて下さい。 そもそもjavaとjavaスクリプトの差は何でしょうか?javaスクリプトはソフトは要らないけど、javaはプログラミングソフトが必要なようですが、どうなのでしょう?? プログラマーやWeb製作会社への転職についての回答をみてみると、なかなか難しいようですね。。。(現在20代半ば。HTMLは理解できる。留学予定有り。実際の転職は来年になりそう)

    • ベストアンサー
    • Java
  • Cとjavaの違い

    学校でC言語プログラミングを学んでおり,新たにjavaも習うことになったのですが, C言語とjava言語の違いはどのような所なのでしょうか? java言語は「オブジェクト指向」ですが,C言語は何指向なのでしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • Java言語の辞書見たいなサイトありますか?

    Javaのプログラミングを勉強しているのですが、基本的なJava言語の辞書見たいなサイトってあるでしょうか? 私は初心者ですが、イメージ的には  ;=(説明)   boolean=(説明) public=(説明)  out=(説明)  ()=(説明)  {}=(説明) 見たいな感じで・・・ 回答よろしくお願いします。

    • ベストアンサー
    • Java

専門家に質問してみよう