程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 微軟Java虛擬機允許讀取本地文件

微軟Java虛擬機允許讀取本地文件

編輯:關於JAVA

受影響系統:

Microsoft Java VM (2000/3000/3100 serIEs builds)

- Microsoft Internet Explorer version 4.x

- Microsoft Internet Explorer version 5.x

描述:

來源:Mr. Amemiya

概要:

該安全漏洞是微軟(微軟認證 )的Java虛擬機(VM)允許Java程序讀取某一路徑中的文件。使用很簡單的Java代碼就可以實現。這個漏洞很危險,如果用戶在安裝的時候是以推薦方式安裝的話,或已經安裝了微軟的Java虛擬機的,請立即屏蔽掉Java功能。

細節:

這個漏洞允許Java程序讀取任何已知文件。當IE用戶訪問一個Web站點的主機時,該主機可以通過Java程序代碼自動的得到文件信息。已知文件主要是Windows系統文件,象已注冊程序,特別是那些常用軟件,和用戶習慣使用的文件,如:memo.txt,passWord.txt,通常是在桌面或是常用目錄裡。一些二進制的文件也可以以文本方式查看。有一點必須說明的是,該漏洞並不能改變和刪除本地文件。

通過系統配置,在"當前工作路徑"調用Java虛擬機的時候,可以限制可讀的路徑及其虛擬路徑."當前工作路徑"在不同版本的IE和VM中都不一樣。下面是測試的結果:

- C:\, 使用 IE4,就是說,所有的文件都是存放在默認路徑C:,並且可讀;Windows NT例外,它是存放在每個用戶的profile目錄下。

- C:\Windows\desktop,使用 IE5,IE5.01,也就是說只有當文件是放在桌面的時候才可讀。

很多情況表明,如果你在C:\AUTOEXEC.BAT中設置環境變量CLASSPATH,那麼,在CLASSPATH中設置的路徑下的文件都可讀。

測試方法:

警 告

以下程序(方法)可能帶有攻擊性,僅供安全研究與教學之用。使用者風險自負!

攻擊者可以先建一個包含惡意Java代碼的Web站點,當訪問該站點的時候,Java程序(可能)會被下載,並在浏覽者機器上被調用,然後將存在你機器上的文件信息返回。具體代碼如下:

InputStream is = ClassLoader.getSystemResourceAsStream(filename);

這簡單的一行程序是讀取IE用戶機器上的本地文件。該程序可以同過已建立的網絡,將文件發回任何Web服務器,或者是作為附件加到email中發到其他地方。

示例:

http://java-house.etl.go.jp/~takagi/Java/test/microsoft_insecurity/Test.Html

建議:

1、臨時解決方法:

- IE4用戶

禁止微軟的Java功能。

- IE5用戶

在 "工具"-"安全"-"自定義級別"-"Java"-"Java權限" 中,選擇"禁用"

在 "工具"-"安全"-"自定義級別"-"微軟虛擬機"-"Java權限" 中,選擇"禁用"

2、Microsoft公司已提供補丁程序,請到以下網址下載並安裝:

- 2000 serIEs builds:

http://www.microsoft.com/Java/vm/dl_vmsp2.htm

- 3100 serIEs builds:

http://www.microsoft.com/Java/vm/dl_vm32.htm

- 3200 serIEs builds:

http://www.microsoft.com/Java/vm/dl_vm40.htm

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved