Orbit Downloader by Innoshock is a popular browser add-on often used to download embedded videos from sites such as YouTube. But the popular add-on has disturbing hidden functions.
[UPDATE #3: Popular file download site Download.Com has removed Orbit Downloader from their site. (2013-08-30 15:00 PDT)
UPDATE #2: Popular file download sites BetaNews, DownloadCrew, Softpedia and Softonic have all removed Orbit Downloader from their sites. (2013-08-23 19:00 PDT)
UPDATE #1: Popular file download site MajorGeeks has removed Orbit Downloader from their site. AG (2013-08-22 19:00 PDT)]
Orbit Downloader by Innoshock is a popular file downloading add-on for web browsers, used not only to speed up the transfer of files over the Internet but also for its ability to download embedded videos from popular streaming video sites like YouTube.
Orbit Downloader has been around since at least 2006, and like many programs these days, is available for free. The developer, Innoshock, generates its revenue from bundled offers, such as OpenCandy, which is used to install third-party software as well as to display advertisements in order to generate revenue.
This type of advertising arrangement is normal behavior these days and one of the things that ESET’s researchers regularly look at when determining whether or not a program is to be classified as a Potentially Unwanted Application (PUA). While that process is likewise fairly routine for ESET’s researchers, it is one which requires careful examination because the reasons for which programs may be classified as a PUA vary on a case-by-case basis.
Criminals understand that computer users want to download files and streamed videos and have already begun to take advantage of the situation, as computer security researcher Graham Cluley noted in a post on his blog, “Is that YouTube Video Downloader browser plugin safe? Beware!“
What is unusual, though, is to see a popular utility containing additional code for performing Denial of Service (DoS) attacks, which is exactly what our threat researchers found during an otherwise routine examination of the Orbit Downloader software package. Given the age and the popularity of Orbit Downloader (it is listed as one of the top downloads in its category on several popular software web sites) this means that the program might be generating gigabits (or more) of network traffic, making it an effective tool for Distributed Denial of Service (DDoS) attacks. ESET identifies versions of Orbit Downloader containing this attack code as Win32/DDoS.Orbiter.A.
Sometime between the release of version 18.104.22.168 (December 25, 2012) and version 22.214.171.124 (January 10, 2013), an additional component was added to orbitdm.exe, the main executable module for Orbit Downloader. Here is what it does:
- When orbitdm.exe is run, it sends a HTTP GET request to Orbit Downloader’s server at hXXp://obupdate.orbitdownloader.com/update/myinfo.php.
- The server responds with two URLs containing further information:
- The first URL, named “url“, currently responds with the URL hXXp://obupdate.orbitdownloader.com/update/ido.ipl which points to the location of a Win32 PE DLL file that is silently downloaded by the software. So far, ESET’s researchers have seen more than a dozen different versions of this DLL file.
- The second URL, named “param“, initially responded with an URL of hXXp://obupdate.orbitdownloader.com/update/rinfo.php?lang=language
Several days ago, this switched to
For both URLs, the language variable was set to ENU for English, SKY for Slovak and so forth.
The second URL, “param“, seems to generate a response via HTTP POST based on the language parameter sent to the server in Step 1. Most of the time the configuration files were not very interesting to look at, consisting of zero values such as:
We did, however, observe one interesting response that stood out:
It is unclear to us why the Ku-Klux Klan’s web site was chosen, as no similar sites were seen during our monitoring. This may have simply been a test by the tool’s authors to verify it was working.
This screenshot from a packet capture shows the HTTP GET requests from Orbit Downloader as it downloads the configuration file used to target the attack and the DLL used to perform them:Examination of the Win32 PE DLL by ESET’s researchers reveals an exported function with the name SendHTTP which performs two actions:
- The first action is to download an obfuscated configuration file from hXXp://obupdate.orbitdownloader.com/update/il.php containing a list of targets to attack.
- The second action is to perform the attack against the targets listed in the configuration file.
Here is a screen shot showing one of the il.php configuration files:Once extracted, entries appear in the format of a URL, followed by an equal sign “=” and an IP address. Here are some entries from another il.php configuration file we examined:
The first portion of an entry, the URL, is the target of the DoS attack. The source IPs are randomly generated. In some instances, we downloaded blank il.php configuration files. This may have meant there were no current targets.
Two types of attacks have been observed:
- If WinPcap is present, specially crafted TCP SYN packets are sent to the targeted machines on port 80, with random source IP addresses. This kind of denial of service attack is known as a SYN flood. It should be noted that WinPcap is a legitimate third-party tool bundled with many programs and is otherwise unrelated to this attack.
- If WinPcap is not present, TCP packets are sent containing an HTTP connection request on port 80 and UDP datagrams on port 53 to the targeted machines.
These attacks, while basic, are effective due to their throughput: On a test computer in our lab with a gigabit Ethernet port, HTTP connection requests were sent at a rate of about 140,000 packets per second, with falsified source addresses largely appearing to come from IP ranges allocated to Vietnam. These blocks of IP addresses were hardcoded into the DLL file downloaded from ido.ipl, different ranges may have been used in the past, though, and could change in future versions of the DLL file.
As mentioned above, the configuration file downloaded from Orbit Downloader’s server is encrypted to avoid casual examination. The first step is that files are encoded in base64, an encoding scheme most often used to send binary files as file attachments. After decoding, the data is then XORed with a fixed 32-character string. That 32-character string is actually the MD5 hash of a 9-character password that is hardcoded into the DLL file. After this operation, each pair of consecutive bytes are XORed together to generate a single byte of plaintext.
While each download of the encrypted data from the server varies, the actual content, once converted to plaintext, has remained constant for considerably longer periods of time.
Looking through older versions of Orbit Downloader, it appears that the DoS functionality has been present for some time, if not actively used, in a program file named orbitnet.exe, and not orbitDM.exe like current version. Also, this older version downloaded its configuration file from static.koramgame.com and not from the orbitdownloader.com domain. Curiously, the version of orbitnet.exe containing the DoS code (version 126.96.36.199) does not appear to be bundled with any of the installation packages released by Orbit Downloader, although an older version, 188.8.131.52, appears to be distributed with the current version of Orbit Downloader, version 184.108.40.206, released May 2, 2013.
While we are just as puzzled as everyone else as to why this popular file downloading utility now contains remotely-updating DDoS functionality, we are taking action to protect ESET’s users from it. Beginning with virus signature database 8604, versions of Orbit Downloader with DoS functionality are detected by ESET’s software as Win32/DDoS.Orbiter.A.
In the meantime, until Innoshock, the developer of Orbit Download explains this behavior and/or releases an updated version without this unwanted functionality, we recommend uninstalling this program and using a different file downloader.
The following are the MD5 hashes of files analyzed in this article:
I would like to thank my colleagues Daniel, David, Hugo, Jean-Ian, Peter and Pierre-Marc for their research and assistance with this article.
Aryeh Goretsky, MVP, ZCSE