9.3 High
CVSS2
Attack Vector
NETWORK
Attack Complexity
MEDIUM
Authentication
NONE
Confidentiality Impact
COMPLETE
Integrity Impact
COMPLETE
Availability Impact
COMPLETE
AV:N/AC:M/Au:N/C:C/I:C/A:C
8.1 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
HIGH
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
0.036 Low
EPSS
Percentile
91.8%
The version of Oracle Java SE or Java for Business installed on the remote host is affected by an arbitrary code execution vulnerability in the Hotspot subcomponent due to an unsafe implementation of the Reflection API, which improperly processes JSR 292 method handles due to a lack of enforcement of class loader constraints. A remote attacker can exploit this, by convincing a user to visit a malicious web page, to execute arbitrary code outside the Java sandbox.
#%NASL_MIN_LEVEL 70300
#
# (C) Tenable Network Security, Inc.
#
include('deprecated_nasl_level.inc');
include('compat.inc');
if (description)
{
script_id(90828);
script_version("1.7");
script_set_attribute(attribute:"plugin_modification_date", value:"2022/04/11");
script_cve_id("CVE-2016-0636");
script_name(english:"Oracle Java SE Hotspot JSR 292 Method Handles RCE");
script_set_attribute(attribute:"synopsis", value:
"The remote Windows host contains a programming platform that is
affected by an arbitrary code execution vulnerability.");
script_set_attribute(attribute:"description", value:
"The version of Oracle Java SE or Java for Business installed on the
remote host is affected by an arbitrary code execution vulnerability
in the Hotspot subcomponent due to an unsafe implementation of the
Reflection API, which improperly processes JSR 292 method handles due
to a lack of enforcement of class loader constraints. A remote
attacker can exploit this, by convincing a user to visit a malicious
web page, to execute arbitrary code outside the Java sandbox.");
script_set_attribute(attribute:"see_also", value:"https://blogs.oracle.com/oraclesecurity/");
# https://www.oracle.com/technetwork/topics/security/alert-cve-2016-0636-2949497.html
script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?dd69ab47");
script_set_attribute(attribute:"solution", value:
"Upgrade to Oracle JDK / JRE 8 Update 77, 7 Update 99 or later.
If necessary, remove any affected versions.");
script_set_cvss_base_vector("CVSS2#AV:N/AC:M/Au:N/C:C/I:C/A:C");
script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H");
script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
script_set_attribute(attribute:"cvss_score_source", value:"CVE-2016-0636");
script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");
script_set_attribute(attribute:"exploit_available", value:"false");
script_set_attribute(attribute:"vuln_publication_date", value:"2013/10/15");
script_set_attribute(attribute:"patch_publication_date", value:"2016/03/23");
script_set_attribute(attribute:"plugin_publication_date", value:"2016/05/02");
script_set_attribute(attribute:"plugin_type", value:"local");
script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:jre");
script_set_attribute(attribute:"cpe", value:"cpe:/a:oracle:jdk");
script_set_attribute(attribute:"thorough_tests", value:"true");
script_end_attributes();
script_category(ACT_GATHER_INFO);
script_family(english:"Windows");
script_copyright(english:"This script is Copyright (C) 2016-2022 and is owned by Tenable, Inc. or an Affiliate thereof.");
script_dependencies("sun_java_jre_installed.nasl");
script_require_keys("SMB/Java/JRE/Installed", "SMB/Registry/Enumerated");
exit(0);
}
include("audit.inc");
include("global_settings.inc");
include("misc_func.inc");
# Only windows
get_kb_item_or_exit("SMB/Registry/Enumerated");
# Check each installed JRE.
installs = get_kb_list_or_exit("SMB/Java/JRE/*");
info = "";
vuln = 0;
installed_versions = "";
foreach install (list_uniq(keys(installs)))
{
ver = install - "SMB/Java/JRE/";
if (ver !~ "^[0-9.]+") continue;
installed_versions = installed_versions + " & " + ver;
# Fixes : (JDK|JRE) 8 Update 77 / 7 Update 99
if (
ver =~ '^1\\.7\\.0_([0-9]|[0-8][0-9]|9[0-8])([^0-9]|$)' ||
ver =~ '^1\\.8\\.0_([0-9]|[0-6][0-9]|7[0-6])([^0-9]|$)'
)
{
dirs = make_list(get_kb_list(install));
vuln += max_index(dirs);
foreach dir (dirs)
info += '\n Path : ' + dir;
info += '\n Installed version : ' + ver;
info += '\n Fixed version : 1.7.0_99 / 1.8.0_77\n';
}
}
# Report if any were found to be vulnerable.
if (info)
{
port = get_kb_item("SMB/transport");
if (!port) port = 445;
if (vuln > 1) s = "s of Java are";
else s = " of Java is";
report =
'\n' +
'The following vulnerable instance'+s+' installed on the\n' +
'remote host :\n' + info;
security_report_v4(port:port, severity:SECURITY_HOLE, extra:report);
exit(0);
}
else
{
installed_versions = substr(installed_versions, 3);
if (" & " >< installed_versions)
exit(0, "The Java "+installed_versions+" installs on the remote host are not affected.");
else
audit(AUDIT_INST_VER_NOT_VULN, "Java", installed_versions);
}
9.3 High
CVSS2
Attack Vector
NETWORK
Attack Complexity
MEDIUM
Authentication
NONE
Confidentiality Impact
COMPLETE
Integrity Impact
COMPLETE
Availability Impact
COMPLETE
AV:N/AC:M/Au:N/C:C/I:C/A:C
8.1 High
CVSS3
Attack Vector
NETWORK
Attack Complexity
HIGH
Privileges Required
NONE
User Interaction
NONE
Scope
UNCHANGED
Confidentiality Impact
HIGH
Integrity Impact
HIGH
Availability Impact
HIGH
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
0.036 Low
EPSS
Percentile
91.8%