Virus:W32/Sality.Q is an appending polymorphic file infector virus that uses an Entry Point Obscuring (EPO) technique.
Unlike other file infectors that modify the entry point of the host file to point to the virus code, Sality.Q replaces 122 bytes from the beginning code of the host file with its decryption routine and hides it in its code.
It stores the original code 1,422 bytes away from the start of the last section.
ExecutionWhen the infected executable file has been run, it will drop the following DLL components:
- %windir%\system32\vcmgcd32.dll
- %windir%\system32\vcmgcd32.dl_
It will then load the vcmgcd32.dll file, which contains the malicious routine. After successfully installing its components, it will then execute the original host file's code to prevent the user from suspecting infection.
InfectionSality.Q can infect any of the following extensions by searching for files starting from "C:\":
It also infects files with .EXE extensions that are referenced as data in the following registry keys:
- [HKCU\Software\Microsoft\Windows\CurrentVersion\run]
- [HLKM\Software\Microsoft\Windows\CurrentVersion\run]
Sality.Q appends itself by creating a new section with a section name of "{random characters}data" and has a size of 20480 Bytes.
ActivitySality attempts to delete files and processes related to some antivirus products. It also attempts to delete files that it finds with any of the following extensions:
It will try to delete files with filenames starting with any of the following strings:
- ALER
- ANDA
- ANTI
- AVP
- BIDEF
- CLEAN
- GUAR
- KAV
- NOD
- OUTP
- SCAN
- TREN
- TROJ
- ZONE
It may also kill processes that starts with the following strings:
- ANTI
- ATGUARD
- AUTOTRACE
- AVGSERV
- AVLTMAIN
- AVP
- AVPROTECT
- AVSYNMGR
- AVXQUAR
- BIDEF
- BIDSERVER
- BIPCP
- BLACKICE
- CLEANER
- DRWATSON
- DRWEB
- DRWTSN32
- ESCANH
- ICSSUPPNT
- ICSUPP
- KAV
- LOCKDOWN
- MCAGENT
- MCUPDATE
- MGUI
- NAV
- NMAIN
- NOD32
- NPFMESSENGER
- NPROTECT
- NUPGRADE
- OUTPOST
- PERISCOPE
- PINGSCAN
- PORTDETECTIVE
- PROTECTX
- RTVSCAN
- SAVSCAN
- TRJSCAN
- VSMAIN
- ZONEALARM
It checks for an Internet connection by querying:
It then attempts to connect to the following URLs:
- www.f5ds1jkkk4d.info
- www.g1ikdcvns3sdsal.info
- www.h7smcnrwlsdn34fgv.info
- www.hkukud123ncs.info
- www.inform1ongung.info
- www.kukutrustnet.org
- www.kukutrustnet7.com
- www.kukutrustnet7.info
- www.lukki6nd2kdnc.info
RegistryDuring installation, the worm creates the following mutexes to make sure that only one instance of its .dll component is running in memory:
- KUKU300a
- KUKU301a
- _kuku_joker_v3.09_
It also modifies %windir%\SYSTEM.INI by adding a section called MCIDRV_VER with key DEVICE and putting a random value inside it.
Example:
- [MCIDRV_VER]
DEVICE=566828orapm40409
The .DLL component can steal cached passwords and also has key logging capabilities. It is injected in all running processes.