Removal Instructions

If your computer has not been protected with anti-virus software and has been infected with malware, you will need to take the following actions to delete this:

  1. Delete the original trojan file (its location on the infected computer will depend on how the program got onto the computer).
  2. Delete the following files:

  3. Update Sun Java JRE and JDK to the latest versions.
  4. Clear the Temporary Internet Files directory which may contain infected files (How to delete infected files in the Temporary Internet Files folder?).
  5. Run a full Kaspersky Antivirus scan of the computer with updated antivirus databases (download trial version).

MD5: 1EA3E218B42754E59166C565F5A8D4AD
SHA1: 40E9C30EA2CAB8EC9460F28AA03303F5386BA5EB


The malicious JAR-archive contains the following files:

FactoryService\Container.class (3824 bytes)
FactoryService\DefClass.class (5608 bytes; detected by Kaspersky Antivirus as "Exploit.Java.CVE-2010-0840.bd")
FactoryService\Factory.class (2811 bytes; detected by Kaspersky Antivirus as "Exploit.Java.CVE-2010-0840.bd")
FactoryService\Translator.class (576 bytes)
MessageStack\QueryConstructor.class (490 bytes)
MessageStack\QueryFromMessage.class (599 bytes)
MessageStack\StringPack.class (1368 bytes)
MessageStack\TemplateMessage.class (1816 bytes)
MessageStack\TextMessage.class (879 bytes)

The trojan is a Java-applet (main applet class – "DefClass"), designed to download files from the internet through redirected links. The applet is launched from an infected HTML-page using the "<APPLET>" tag, for which a string containing an encrypted list of links to downloadable files is transferred in the "p" parameter. The links in this string are separated by the symbols "::". After launching, the trojan decrypts the links received using the "StringPack" "name"function. When decoding, the following mapping is used for input and output symbols: Input symbols:

Output symbols:

The trojan then checks the name of the OS installed on the infected computer. If the OS is not Windows, the trojan will shut down. Otherwise, it downloads files from the links received. The trojan determines the type of downloadable file (executable file or dynamic-link library) based on the presence of the substrings ".exe" and ".dll" in the unencrypted link. The downloaded files are saved in the current user's temporary file directory as


where <rnd> consists of random fractional decimals from 0 to 1.

After successfully downloading the next executable file, the file is launched for execution. If downloading a dynamic-link library, this is launched using the system utility "regsvr32.exe":

regsvr32 –s %Temp%\a<rnd>.dll

During its implementation, the exploit uses the vulnerability CVE-2010-0840 in the JRE (Java Runtime Environment). This vulnerability appears as a result of an incorrect validation when running preferred methods in JRE, which allows the attacker to execute an arbitrary code using an object that has been modified in a certain way, as a sub-class of the proxy class. This vulnerability allows the trojan to track and use methods which are not available for the Java-applet class which is a sub-class of the unprivileged "Applet" class.

Technical Details

An exploit that uses a vulnerability in the JRE (Java Runtime Environment) to download other malware to an infected computer. It is a JAR-archive containing a set of Java-classes (class-files). 10451 bytes.