Update description
parent
be63aad0d1
commit
5f64c55112
|
@ -20,13 +20,19 @@ class Metasploit3 < Msf::Exploit::Remote
|
|||
super( update_info( info,
|
||||
'Name' => 'Java 7 Applet Remote Code Execution',
|
||||
'Description' => %q{
|
||||
This module exploits a vulnerability in Java 7, which allows an attacker to run
|
||||
arbitrary Java code outside the sandbox. The vulnerability seems to be related to
|
||||
the use of the newly introduced ClassFinder#resolveClass in Java 7, which allows
|
||||
the sun.awt.SunToolkit class to be loaded and modified. Please note this flaw is
|
||||
also being exploited in the wild, and there is no patch from Oracle at this point.
|
||||
Our module has been successfully tested on multiple setups, including: IE, Firefox,
|
||||
Chrome and Safari on Windows, Linux and OS X, etc.
|
||||
The exploit takes advantage of two issues in JDK 7: The ClassFinder and
|
||||
MethodFinder.findMethod(). Both were newly introduced in JDK 7. ClassFinder is a
|
||||
replacement for classForName back in JDK 6. It allows untrusted code to obtain a
|
||||
reference and have access to a restricted package in JDK 7, which can be used to
|
||||
abuse sun.awt.SunToolkit (a restricted package). With sun.awt.SunToolkit, we can
|
||||
actually invoke getField() by abusing findMethod() in Statement.invokeInternal()
|
||||
(but getField() must be public, and that's not always the case in JDK 6) in order
|
||||
to access Statement.acc's private field, modify AccessControlContext, and then
|
||||
disable Security Manager. Once Security Manager is disabled, we can execute
|
||||
arbitrary Java code.
|
||||
|
||||
Our exploit has been tested successfully against multiple platforms, including:
|
||||
IE, Firefox, Safari, Chrome; Windows, Ubuntu, OS X, Solaris, etc.
|
||||
},
|
||||
'License' => MSF_LICENSE,
|
||||
'Author' =>
|
||||
|
|
Loading…
Reference in New Issue