Rootkit:W32/TDSS.gen!A is a generic detection that identifies malware attempting to conceal the existence of certain malicious files. The purpose of this rootkit is to maintain its launchpoints and keep them and the files hidden during runtime.
Generic detections are broad patterns of code or behavior that are used by security software to identify programs or files. If you suspect the detected file was incorrectly identified, go to: Removal: Resolve a False Positive.
Since hidden items are often related to malware, we ask that you consider sending us a sample of the hidden files. Since the files are hidden, you might not be able to access them directly. To access the files, you might need to do one of the following:
Alternatively, users may use the following instructions:
Once obtained, the sample can be forwarded to our Labs via the Submit A Sample (SAS) page.
Find the latest advice in our Community Knowledge Base.
See the manual for your F-Secure product on the Help Center.
Submit a file or URL for further analysis.
The rootkit will set hooks to the following APIs:
The hooks 'NtQueryValueKey' and 'NtEnumerateKey' render users unable to see the registry entries created by the rootkit.
Then, it creates the following registry entries:
And drops a driver with a random filename to system32\drivers\folder:
A DLL is then dropped to the system32\ folder and is kept hidden:
From that point on, any filename that contains the word 'gaopdx' at the beginning of its name will be hidden.
The rootkit uses Notify Routines to monitor and prevent the following files from running:
The rootkit monitors all processes and keeps the registry keys up-to-date all the time, making it impossible to get them removed. If 'Ntdll.dll' and 'Kernel32.dll' gets loaded in, it tries to inject the payload DLL if the process-name is in the injector list.
Then, it will post encrypted information to remote server with command: