Discovered: August 03, 2014
Updated: September 23, 2015 11:32:35 AM
Also Known As: TROJ_POWELIKS.A [Trend], Trojan.Poweliks.A [F-Secure], Trojan.Win32.Powerliks.a [Kaspersky], Trojan:Win32/Powessere.ATrojan.Win32.Powerliks.a [Microsoft]
Type: Trojan
Infection Length: 71,680 bytes
Systems Affected: Windows
CVE References: CVE-2015-0016

Trojan.Poweliks is a Trojan horse that installs as a fileless threat and performs click-fraud operations.

Trojan.Poweliks is a threat that installs itself into the Windows registry where it hijacks many existing CLSID entries to run itself when essential functions of Windows are performed.

In addition, it stores its own code within registry entries which allows it to remain persistent on a computer but not have any of its file stored directly on the computer file system.

Once installed, Trojan.Poweliks may contact its command and control (C&C) servers to download further instructions. The primary goal of Trojan.Poweliks is to perform click-fraud operations which involves covertly downloading large numbers of online advertisements onto the compromised computer and then automatically clicking or interacting with them with a view to earning fraudulent advertising revenue for the attacker.

In certain cases, secondary infections by other threats may occur due to the downloading of malicious adverts (malvertisement) leading to exploit kits. The ransomware, Trojan.Cryptowall has been seen on some computers compromised by Trojan.Poweliks due to malvertisement.

The following Symantec detections protect against this threat family.


Intrusion prevention system

Removal tool
Symantec has created a tool that can help users remove Trojan.Poweliks .

Additional information
For more information, please see the following resource(s):

Antivirus Protection Dates

  • Initial Rapid Release version August 04, 2014 revision 001
  • Latest Rapid Release version August 28, 2015 revision 018
  • Initial Daily Certified version August 04, 2014 revision 008
  • Latest Daily Certified version August 29, 2015 revision 002
  • Initial Weekly Certified release date August 06, 2014

Click here for a more detailed description of Rapid Release and Daily Certified virus definitions.

Technical Description

The Trojan may be dropped by Trojan.Mdropper .

When the Trojan is executed, it creates the following registry entries:

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\"(default)" = "[ENCRYPTED JAVASCRIPT]"
  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\"[NON-ASCII STRING]" = "rundll32.exe javascript:\"\..\mshtml,RunHTMLApplication \";document.write(\"\74script language=jscript.encode>\"+(new%20ActiveXObject(\"WScript.Shell\")).RegRead(\"HKCU\\software\\microsoft\\windows\\currentversion\\run\\\")+\"\74/script>\")"

The Trojan uses the Microsoft Windows CVE-2015-0016 Remote Privilege Escalation Vulnerability to escalate privileges on the compromised computer.

The Trojan then checks if the compromised computer has the PowerShell or .NET frameworks. If not, it will download the installers for these frameworks from the official Microsoft website.

Next, the Trojan decrypts a PowerShell script from its encrypted JavaScript. It runs this Powershell script to execute a binary program. This program connects to the following remote locations:

The Trojan may then perform the following activities:
  • Receive commands from the remote attacker
  • Delete the binary program
  • Perform click-fraud activities

Additional information
For more information, please see the following resource(s):


    Symantec Security Response encourages all users and administrators to adhere to the following basic security "best practices":

    • Use a firewall to block all incoming connections from the Internet to services that should not be publicly available. By default, you should deny all incoming connections and only allow services you explicitly want to offer to the outside world.
    • Enforce a password policy. Complex passwords make it difficult to crack password files on compromised computers. This helps to prevent or limit damage when a computer is compromised.
    • Ensure that programs and users of the computer use the lowest level of privileges necessary to complete a task. When prompted for a root or UAC password, ensure that the program asking for administration-level access is a legitimate application.
    • Disable AutoPlay to prevent the automatic launching of executable files on network and removable drives, and disconnect the drives when not required. If write access is not required, enable read-only mode if the option is available.
    • Turn off file sharing if not needed. If file sharing is required, use ACLs and password protection to limit access. Disable anonymous access to shared folders. Grant access only to user accounts with strong passwords to folders that must be shared.
    • Turn off and remove unnecessary services. By default, many operating systems install auxiliary services that are not critical. These services are avenues of attack. If they are removed, threats have less avenues of attack.
    • If a threat exploits one or more network services, disable, or block access to, those services until a patch is applied.
    • Always keep your patch levels up-to-date, especially on computers that host public services and are accessible through the firewall, such as HTTP, FTP, mail, and DNS services.
    • Configure your email server to block or remove email that contains file attachments that are commonly used to spread threats, such as .vbs, .bat, .exe, .pif and .scr files.
    • Isolate compromised computers quickly to prevent threats from spreading further. Perform a forensic analysis and restore the computers using trusted media.
    • Train employees not to open attachments unless they are expecting them. Also, do not execute software that is downloaded from the Internet unless it has been scanned for viruses. Simply visiting a compromised Web site can cause infection if certain browser vulnerabilities are not patched.
    • If Bluetooth is not required for mobile devices, it should be turned off. If you require its use, ensure that the device's visibility is set to "Hidden" so that it cannot be scanned by other Bluetooth devices. If device pairing must be used, ensure that all devices are set to "Unauthorized", requiring authorization for each connection request. Do not accept applications that are unsigned or sent from unknown sources.
    • For further information on the terms used in this document, please refer to the Security Response glossary.



    To automatically remove Trojan.Poweliks or Trojan.Poweliks!gm from your computer, please follow the steps for the Trojan.Poweliks Removal Tool .


    To manually remove Trojan.Poweliks or Trojan.Poweliks!gm from your computer, please follow these steps using Administrator permissions:

    It is recommended that you start the computer in Safe Mode with Networking enabled before performing the manual remediation.

    Begin by disabling dllhost.exe, by following these steps:

    Launch command prompt as an Administrator and navigate to one of the following folders:

    • C:\windows\syswow64 (for 64-bit systems)
    • C:\windows\system32 (for 32-bit systems)

    Type the following command into command prompt and press enter to take ownership:
    • takeown /f dllhost.exe /a

    Type the following command into command prompt and press enter to disable permissions:
    • cacls dllhost.exe /p everyone:n
    Restart the computer.

    After dllhost.exe has been disabled, delete the virus string from the registry by following these steps:

    Open the Run dialogue box by pressing the following keys:
    • Windows + R

    Type the following command in the Run box and click 'OK' to open the registry editor:
    • regedit

    Navigate to one of the following registry entries:
    • HKEY_CLASSES_ROOT\CLSID\{73E709EA-5D93-4B2E-BBB0-99B7938DA9E4} (for Windows XP, Windows XP 64-bit Edition, Windows 2000, Windows Server 2003, Windows Server 2003 R2)
    • HKEY_CLASSES_ROOT\CLSID\{AB8902B4-09CA-4bb6-B78DA8F59079A8D5} (for Windows 8.1, Windows 8, Windows 7, Windows Vista, Windows Server 2012 R2, Windows Server 2012, Windows Server 2008 R2, Windows Server 2008)


    HKEY_CLASSES_ROOT may refer to the following:
    • HKEY_CURRENT_USER\Software\Classes\CLSID\
    • HKEY_LOCAL_MACHINE\Software\Classes\CLSID\

    Note: If the key is not visible or editable, it may be necessary to edit the registry key permissions. To do this please refer to the next section.

    Click on the following subkey:
    • localserver32

    Click 'Delete all values' in the right pane.

    Exit the Registry Editor and restart the computer.

    Look for the following types of activity in the Windows Task Manager:
    • rundll
    • hostdll

    Type the following command and press enter to enable dllhost.exe:
    • cacls dllhost.exe /p everyone:f

    If the key is not visible or editable, edit the registry key permissions by following these steps:

    Navigate to the following registry key:
    • HKEY_CURRENT_USER\Software\Classes\CLSID

      Navigate to the Security tab and click 'Add'.

      After clicking 'Add', check the 'Allow' box for Full Control if it is not already checked.

      Type the following command and click 'OK':
      • Everyone

      Click 'Apply' and then click 'OK'.

      Return to the previous section.

        Writeup By: Masaki Suenaga