mirror of
https://github.com/rapid7/metasploit-framework
synced 2024-11-05 14:57:30 +01:00
Update description
This commit is contained in:
parent
3a63fa12b8
commit
4c0048f26a
@ -15,11 +15,31 @@ class Metasploit3 < Msf::Exploit::Remote
|
|||||||
super(update_info(info,
|
super(update_info(info,
|
||||||
'Name' => "MS14-060 Microsoft Windows OLE Package Manager Code Execution",
|
'Name' => "MS14-060 Microsoft Windows OLE Package Manager Code Execution",
|
||||||
'Description' => %q{
|
'Description' => %q{
|
||||||
This module exploits a vulnerability Microsoft Windows from Vista SP2 to Windows 8,
|
This module exploits a vulnerability found in Windows Object Linking and Embedding (OLE)
|
||||||
including Windows Server 2008 and 2012. The vulnerability exists in the OLE package
|
allowing arbitrary code execution, publicly known as "Sandworm". Platforms such as Windows
|
||||||
magager, which allows to download and execute remote INF files silently. This module
|
Vista SP2 all the way to Windows 8, Windows Server 2008 and 2012 are known to be
|
||||||
triggers the vulnerability through a malicious PPSX file, as exploited in the wild on
|
vulnerable. However, based on our testing, the most reliable setup is on Windows platforms
|
||||||
October 2014.
|
running Office 2013. But please keep in mind that some other setups such as using Office
|
||||||
|
2010 might be less stable, and sometimes may end up with a crash due to a failure in the
|
||||||
|
CPackage::CreateTempFileName function.
|
||||||
|
|
||||||
|
In detail, the vulnerability has to do with how the Object Packager 2 component
|
||||||
|
(packager.dll) handles an INF file that contains malicious registry changes, which may be
|
||||||
|
leveraged for code execution. First of all, Packager does not load the INF file directly.
|
||||||
|
But as an attacker, you can trick it to load your INF anyway by embedding the file path as
|
||||||
|
a remote share in an OLE object. The packager will then treat it as a type of media file,
|
||||||
|
and load it with the packager!CPackage::OLE2MPlayerReadFromStream, which will download it
|
||||||
|
with a CopyFileW call, save it in a temp folder, and pass that information for later. The
|
||||||
|
exploit will do this loading process twice: first for a fake gif file that's actually the
|
||||||
|
payload, and the second for the INF file.
|
||||||
|
|
||||||
|
The packager will also look at each OLE object's XML Presentation Command, specifically the
|
||||||
|
type and cmd property. In the exploit, "verb" media command type is used, and this triggers
|
||||||
|
the packager!CPackage::DoVerb function. Also, "-3" is used as the fake gif file's cmd
|
||||||
|
property, and "3" is used for the INF. When the cmd is "-3", DoVerb will bail. But when "3"
|
||||||
|
is used (again, for the INF file), it will cause the packager to try to find appropriate
|
||||||
|
handler for it, which will end up with C:\Windows\System32\infDefaultInstall.exe, and that
|
||||||
|
will install/run the malicious file, and finally give us arbitrary code execution.
|
||||||
},
|
},
|
||||||
'License' => MSF_LICENSE,
|
'License' => MSF_LICENSE,
|
||||||
'Author' =>
|
'Author' =>
|
||||||
|
Loading…
Reference in New Issue
Block a user