understand the business. halt the spies. own your data.

vectorblog  about  contact

MSN Search

 

 

 

 

 

 

 


May I Help You: The Search Assistants                     Download PDF

infectionvectors.com

April 2005

 

Overview

 

Spyware and adware often arrives in the form of “helper” applications, software designed to push advertisements to users by monitoring search and viewing habits. Variations of the software have been around for years; versions are generally installed only after an End User License Agreement (EULA) is accepted (which indicates that other software may be placed on the machine). Its chief components are often described as adware or spyware, and some packages have contained applications that kill security services/processes.

 

Search Assistant (by 180Search) is an application that records the web locations a user visits and reports them back to the 180Search servers. This information is compiled and analyzed, leading to targeted advertisements on the local device in the form of pop-up windows, redirections, and additional software. IMIServ is a family of programs that download additional adware/spyware to the local device. Both of these applications have been around for years and serve as the examples for this report.

 

Search assistant spyware is an especially profitable venture for some companies that are capable of getting their applications on a high number of machines. The mechanisms employed to accomplish this are often less than forthright, but nonetheless allow companies to capitalize on the millions of dollars available in web referral commissions.

 

180-Degree Turn

 

Targeted advertising has become quite a growth industry over the last decade. The Internet has provided numerous mediums for delivering ads, and tracking user habits, that did not exist prior to the web explosion.

 

180Search Assistant repeatedly shows up in the adware/spyware forums as users ask how to rid their systems of the troubling and annoying software.1 Although it does provide a EULA as the evidence that it is acting legitimately, it also uses tactics such as giving executables nonsensical, random names to avoid immediate recognition and detection. The 180solutions family of software has also been noted to kill security software running on the local system (a tough function to explain away when defending the code as a legitimate marketing tool).2 The software will update itself, even fixing broken or missing pieces, by checking with the website upon startup.

 

The application itself keeps exceptional logs of what it downloads and provides to both the user and the 180Search Assistant servers. A portion of one of the logs (salm.log) is shown here (note that although each entry is in the same format as was found in the logs, all unique identifiers, including partner/merchant identifiers have been altered):3

 

03/14/05      04:20:57    1724      1328      0      2      1048      0      connecting to ad page : http://64.94.137.50/showme.aspx?keyword=%2ecnn%2ecom&did=495&

ver=5.15&duid=136ltcquqavixczjtqgzyhevgnosmx&partner_id=

B6674A282&product_id=495&browser_ok=y&rnd=15&basename=salm&

tzbias=5&MT=0163A241738EF7A5F7CBF97BDD23FD7083AAA51A2E454490D

AC35D1276EF2B1207&DMT=0163A241738EF7A8F6CBF97BDD23FD7083AAA51

A2E454490DF735D1276EF2B1207&WID=019DB1DED53E8000&GVI=1&HMP=E6

A4F760106CB5182E1F623D6E2948123F8560B303A57F02765CD056BBA48AA

A&bid=0&SID=FMNAXWDE&OS=5.0.2195.2&SLID=1033&ULID=1033&TLOC=

1033&ACP=1252&OCP=437&DB=iexplore.exe&IEV=5.50.4934.1&TPM=

266330112&APM=33841152&TVM=2147352576&AVM=2067390464&FDS=

4294967295&LAD=1601:1:1:0:0:0&WE=5      CAdWindow.cpp      578      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:20:58    1724      1536      0      4      1014      0      Inserting key ".cnn.com" with interval 21600 into SleepList      CKeywordDictionary.cpp  122      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:20:58    1724      1328      0      2      1004      0      successfully connected to ads.aspx      CAdWindow.cpp      361      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:21:57    1724      1280      0      4      1063      0      new url : http://ar.atwola.com/html/93205690/553829876/aol?SNM=HIDBF&width=

120&height=90&target=_blank&TZ=300&TVAR=class%3Dus.low&CT=I      CBrowserMonitor.cpp     61      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

In the above snippet, one can see the keyword “cnn.com” picked up by the sentinel watching browsing habits as well as a connection to one of the advertiser sites. Below, the salm.log file shows the download of additional components to the local device. All transactions are controlled by the version tracker and unique identifier that salm generates for each installation.

 

03/14/05      04:10:29    1724      464      0      2      1067      0      connecting to : http://config.180solutions.com/config.aspx?did=495&ver=5.15&duid=

136ltcquqavixczjtqgzyhevgnosmx&partner_id=36670434A&product_id=&

browser_ok=y&rnd=9&basename=salm&tzbias=5&MT=0163A241738EF7A8F6BBF9

7BDD23FD7083AAA51A2E454490DF735D1276EF2B1207&DMT=0163A241738EF7A8F6

ABF97BDD23FD7083AAA51A2E454490DF735D1276EF2B1207&WID=019DB1DED53E80

00&GVI=1&HMP=E6A4F760106CB5182E1F62303A57F02765CD056BBA48AAA&SID=FM

NAXWDE&OS=5.0.2195.2&SLID=1033&ULID=1033&TLOC=1033&ACP=1252&OCP=437

&DB=iexplore.exe&IEV=5.50.4934.1&TPM=266330112&APM=42864640&TVM=

2147352576&AVM=2084282368&FDS=4294967295&LAD=1601:1:1:0:0:0&WE=5

&TCA=0&SCA=0&MRDS=0&LCAT=1601/01/01%2000:00:00      CConfig.cpp 421      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

 

03/14/05      04:10:30    1724      464      0      2      1010      0      downloaded config info and settings have changed      CConfig.cpp 472      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:10:28    1724      464      0      4      1005      0      not downloading boomering - using latest version      CBoomerang.cpp      155      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:10:28    1724      464      0      2      1119      0      adding add/remove programs entry: HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\salm      CInstaller.cpp      783      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:10:29    1724      1768      0      2      9004      0      keyword: downloading file: http://downloads.180solutions.com/keywords/kyf.450/kyf.450.mods.gz      CBaseDictionary.cpp     515      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:10:29    1724      464      0      2      1037      0      attempting to download http://installs.180solutions.com/Downloads/DLL/3.0/ncmyb.dll to c:\winnt\FLEOK\salmhook.dll      CWeb.cpp    129      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      04:10:29    1724      1516      0      2      9104      0      actionurl: downloading file: http://downloads.180solutions.com/actionurls/ActionUrl.133/ActionUrl.133.0.gz      CBaseDictionary.cpp     318      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

And then the discovery of keywords and the related advertising hooks (note these “keywords” were found in ads being displayed on a site being visited):

 

03/14/05      05:55:32    1396      280      0      2      1064      0      keyword(s) (+american*idol+robot) found in url (http://cl.cnn.com/ctxtlink/jsp/cnn-story.jsp?domid=contextuallinks&time=

1110808551901&category=cnntvent&url=http://robots.cnn.com/2005/showbiz/tv/

03/14/tv.american.idol.ap/index.html&site=cnn_tvent_dyn_ctxt)      CBrowserMonitor.cpp     353      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      05:55:32    1396      1216      0      2      1002      0      wm_show_ad request received      CAdWindow.cpp      138      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      05:55:32    1396      1216      0      2      1003      0      already showing an ad - not showing requested ad      CAdWindow.cpp      143      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

03/14/05      05:55:32    1396      280      0      4      1014      0      Inserting key "american*idol" with interval 21600 into SleepList      CKeywordDictionary.cpp  122      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx      495      366704282

 

What is the purpose of such software? At first glance, the motive may seem to be simply pushing targeted advertisements to the general Internet-using public. Direct marketing has become more and more personal over the years, this being the logical extension of that practice. However, independent researchers have found another goal of such software. When 180solutions takes users to web sites that the user may not have intended to visit, they ensure that the destination web site “knows” that 180solutions was responsible for the connection. In this way, they are making sure that 180solutions receives any commission that is available for the referral.

 

One of the files dropped by the initial installation is a list of major web sites with that pay the commissions as mentioned above (directly or via affiliate programs). In addition, it includes “keywords” that trigger a redirection, pop-up, etc. Benjamin Edelman has documented the exact nature of the 180solutions software, and its proclivity to “pirate” commissions from other referring services/sites extensively in an excellent research piece.4 In it he shows how 180solutions gets their software installed by more subversive and stealthy means than the EULA/installation method and the tricks used to grab referral fees.

 

Plugging Away

 

In a similarly nefarious fashion, IMIServ plant itself on an unsuspecting user’s box by exploiting the capabilities of ActiveX controls. These “drive by” installations plague web surfers that may do nothing more than connect to a site that uses a banner ad service to generate revenue.5 Much of the software that supports this program is retrieved from the IEPlugin.com (IEPL) site.

 

The installation routine sets an autostart entry in the Registry to ensure the application is launched with every reboot, from a strings output of the executable:

 

0000D274   0040D274      SOFTWARE\Microsoft\Windows\CurrentVersion\Run

0000D2A4   0040D2A4      %swupdt.exe

 

The rights to add new software once this application is present on a system are mentioned in the lengthy agreement that accompanies many of the installations. An updated version of the agreement is available on the IEPL web site. IEPlugin.com’s current EULA contains the following:6

 

6.  UPDATES.  You grant IEPL permission to add/remove features and/or functions

to the Software and/or Service, or to install new applications, at any time, in

IEPL’s sole discretion with or without your knowledge and/or interaction.  You

also grant IEPL permission to make any changes to the Software and/or Service

provided at any time.

 

The application creates a unique identification number for each copy (much in the same way as worms like Beagle do) and uses that to track the browsing habits. The identifier is uploaded to the ieplugin.com site:

 

0000D2DC   0040D2DC      0   Accept: */*

0000D2E9   0040D2E9      0   Host: sysupdate.ieplugin.com

0000D310   0040D310      0   HTTP/1.0

0000D324   0040D324      0   &level=

0000D32C   0040D32C      0   &fstat=6

0000D338   0040D338      0   &ATL=YES

0000D344   0040D344      0   &ATL=NO

0000D34C   0040D34C      0   /?UID=%s&VERSION=%s

 

The initial retrieval from ieplugin.com places the following files on a user’s machine:

 

abi.exe

bargain4.exe

clipg.exe

extract.exe

loud.exe

qool.exe

rgrt.exe

salmbundle.exe

ssk.exe

systb.dll

winobject.dll

winserv.exe

 

These applications match keywords lifted from active browser windows and supply pop-up advertisements to the user’s session. Often, browser redirection is used to take potential customers to the advertiser, a new form of “marketing” not available in other mediums.

 

The ferocity of the installations, their proclivity to repair themselves and add new pieces, and the level of annoyance has lead many remediation sites to label it the IMIServ “virus.”

 

Helping Hands

 

Although many people have called these applications “viruses,”7 they cannot be considered such under the traditional definition of the term. They are self-replicating programs and there is no parasitic quality (although it could be argued they do consume resources from their hosts without consent in the same way biological parasites do). Nonetheless, there is certainly enough evidence to consider them malware. Applications that forcibly change the behavior of a system without the explicit acceptance of its owner, open the door for additional applications, and transmit data back to a collection source are most often referred to as Trojan Horses, or Backdoors (as well as hybrid terms such as Backdoor Trojans).

 

Many software developers faced with having their products called spyware (including 180solutions, which does provide its technical defense on its website) would point to the acceptance of a EULA. Although that is a valid defense, it would be difficult to stick to this policy for installing tracking software. With the exceptional amount of money available in the paid referral market, it is inevitable that a group will capitalize on two things: 1) it is possible to install code without consent, 2) if you can get your code a machine, it is likely that you can remove/disable all other competing software and pirate referral profits from the pirates. In fact, this has been alleged a number of times; adware that carries process killers has been well documented, sometimes those routines are aimed at competing adware applications.8

 

Given the state of the “marketplace,” it is easy to see why many adware/spyware creators may be forced into less than ethical decisions to maintain their customers. The poor choices and strategies of just a few organizations would be enough to give the industry a bad reputation; unfortunately, it seems to most users that every adware distributor is malicious.

 

Numerous anti-spyware groups have grown out of a worldwide frustration with the threat.9 The malware research community has wrestled with whether the software is in a unique category (i.e.: spyware) or is just another incarnation of the Trojan. The difficulty in dealing with spyware can completely avoid such discussions if an organization views the threat as nothing more than another reason to enforce configuration management practices and harden client devices against intrusion. Users, being familiar with the plight of their home computers, will likely be easy to convince of the dangers of spyware and will accept restrictions on browsing options if required. Companies should take a thorough look at spyware in terms of resource costs (bandwidth and computing power sucked away) and data costs (threats to data confidentiality and integrity). The resources available at infectionvectors.com can help evaluate assets, prioritize mitigation tactics, and plan overall malware defense strategies.

 

 

References

 

1. The core application for the Search Assistant, SALM.EXE, is catalogued as spyware/adware at LI Utilities:

http://www.liutilities.com/products/wintaskspro/processlibrary/salm/

 

Symantec catalogs it as Adware and describes the routines of this software:

http://sarc.com/avcenter/venc/data/adware.180search.html

 

Called ADW_NCASE (because of 180solution’s Comparison Alternative Shopping Engine) by Trend

http://www.trendmicro.com/vinfo/grayware/ve_graywareDetails.asp?GNAME=ADW%5FNCASE%2EC

 

2. Some 180Search Applications Have Additional Code that Kills Security Software

http://vil.mcafeesecurity.com/vil/content/Print128590.htm

 

3. All logs are from a device with a running installation of the software described. The only change, outside of snipping from the original context, is to change the characters in the unique identifiers.

 

4. Research Inidcates 180solutions Artificially Inflates Tracking Statistics for Merchant Pay-Per-Click This is a very interesting study, very detailed:

http://www.benedelman.org/spyware/180-affiliates/

 

5. The IMIServ Family is described by Computer Associates:

http://www3.ca.com/securityadvisor/virusinfo/virus.aspx?id=41623

 

It is catalogued as Backdoor.IMIServ (called Trojan Horse) by Symantec:

http://securityresponse.symantec.com/avcenter/venc/data/backdoor.imiserv.html

 

And a description of its “drive by” nature by Symantec:

http://sarc.com/avcenter/venc/data/adware.ieplugin.html

 

6. EULA for IMIServ

http://www.ieplugin.com/terms.html

and: c).  This agreement is governed by the laws of Belize.  The United Nations Convention on Contracts for the Sale of Goods does not apply to this Agreement.

 

7. Just as an example, the first link that appeared during an MSN search that supports posters calling this a virus:

http://www.answersthatwork.com/Tasklist_pages/tasklist_w.htm

 

8. “Adware cannibals feast on each other.” Stefanie Olsen, 7 December 2004. CNET New.com.

http://news.com.com/Adware+cannibals+feast+on+each+other/2100-1024_3-5482276.html

 

9. One response from Microsoft is their Spyware Information Page:

http://www.microsoft.com/athome/security/spyware/strategy.mspx

 


Appendix A: Snippets from the SALM logs:

 

52048  867911       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52049  867912       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52050  867913       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52052  867915       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52053  867916       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52054  867917       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52055  867918       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52056  867920       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52057  867921       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52058  867922       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52059  867923       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52060  867924       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52061  867925       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52062  867926       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52063  867927       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52064  867928       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52065  867929       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

52066  867930       prevacid.com       prevacid_offers       prevacid_offer       thank_you.asp

 

 

73672  889911       earthsake.com       shopsite_sc       shopping_cart       thankyou

73673  498456       france.intercasino.com/getting_started/thankyou.shtml

73674  483308       france.intercasino.com/getting_started/thankyou.shtml

73675  512990       deutsch.intercasino.com/getting_started/thankyou.shtml

73676  483329       deutsch.intercasino.com/getting_started/thankyou.shtml

73677  512956       italia.intercasino.com/getting_started/thankyou.shtml

73678  483330       italia.intercasino.com/getting_started/thankyou.shtml

73679  512991       espana.intercasino.com/getting_started/thankyou.shtml

73680  483331       espana.intercasino.com/getting_started/thankyou.shtml

73681  902311       .loanselect.us/fast_loan_submit.php

73682  902312       .loanselect.us/fast_loan_submit.php

73684  931050       .loanselect.us/fast_loan_submit.php

73685  931051       .loanselect.us/fast_loan_submit.php

 


Appendix B: Snippets from SALM.LOG:

 

; Search Assistant Log File

; 5.7

; New log session started.  03/14/2005, 04:10:28  (Process: 1724)

03/14/05      04:10:27    1724      1572      0      4      1061      0      180SA started - version : 5.15.15      180SA.cpp   386      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1572      0      2      1145      0      removing extra boomerangs - leaving 1 behind      CUtil.cpp   338      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1328      0      2      1000      0      ad thread started      CAdThread.cpp      118      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1572      0      2      1076      0      starting dde thread      CDdeUrlDetect.cpp      254      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1280      0      2      1077      0      dde thread started      CDdeUrlDetect.cpp      145      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1572      0      2      1055      0      ie monitor thread started      CIEMonitor.cpp      74      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1572      0      2      1119      0      adding add/remove programs entry: HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\salm      CInstaller.cpp      783      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1572      1      4      5034      126      could not find the dll      CMainWnd.cpp      198      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1384      0      2      9005      0      keyword: entering the load dictionary file thread      CBaseDictionary.cpp     213      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      856      0      2      9105      0      actionurl: entering the load dictionary file thread      CBaseDictionary.cpp     213      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1164      0      2      9205      0      geourl: entering the load dictionary file thread      CBaseDictionary.cpp     213      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      464      0      4      1115      0      Timer expired.  Now(4165341251)  Begin(4134582824)  Diff(30758427)  Delay(20)      CTimer.cpp  61      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      856      0      2      9100      0      actionurl: loading from file      CBaseDictionary.cpp     573      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1164      0      2      9200      0      geourl: loading from file      CBaseDictionary.cpp     573      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:28    1724      1384      0      2      9000      0      keyword: loading from file      CBaseDictionary.cpp     573      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:29    1724      1164      0      1      9208      0      geourl: adding keywords - current keyword count = 0      CBaseDictionary.cpp     759      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:29    1724      1164      0      1      9210      0      geourl: processed 77 keywords - sorting...      CBaseDictionary.cpp     828      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:29    1724      1164      0      1      9211      0      geourl: dictionary sorted      CBaseDictionary.cpp     832      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:29    1724      1164      0      2      9201      0      geourl: 77 keywords were added - new keyword count = 77      CBaseDictionary.cpp     837      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:29    1724      1164      0      2      9206      0      geourl: leaving the load dictionary file thread      CBaseDictionary.cpp     231      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282

03/14/05      04:10:29    1724      464      0      2      1067      0      connecting to : http://config.180solutions.com/config.aspx?did=495&ver=5.15&duid=

136ltcquqavixczjtqgzyhevgnosmx&partner_id=366704282&product_id=&

browser_ok=y&rnd=9&basename=salm&tzbias=5&MT=0163A241738EF7A8F6CB

F97BDD23FD7083AAA51A2E454490DF735D1276EF2B1207&DMT=0163A241738EF7A8

F6CBF97BDD23FD7083AAA51A2E454490DF735D1276EF2B1207&WID=019DB1DED53E

8000&GVI=1&HMP=E6A4F760106CB5182E1F623D6E2948123F8560B303A57F02765CD

056BBA48AAA&SID=FMNAXWDE&OS=5.0.2195.2&SLID=1033&ULID=1033&TLOC=1033

&ACP=1252&OCP=437&DB=iexplore.exe&IEV=5.50.4934.1&TPM=266330112&APM=

42864640&TVM=2147352576&AVM=2084282368&FDS=4294967295&LAD=1601:1:1:0

:0:0&WE=5&TCA=0&SCA=0&MRDS=0&LCAT=1601/01/01%2000:00:00      CConfig.cpp 421      salm      5.15      495      136ltcquqavixczjtqgzyhevgnosmx            366704282