Энциклопедия компьютерных вирусов

         

Инсталляция в память Windows


При запуске зараженного файла управление передается на полиморфик-циклы вируса, которые последовательно расшифровывают вирусные код и передают управление на процедуру инсталляции. Эта процедура (как и прочие процедуры вируса) использует вызовы Windows-функций. В отличие от большинства прочих Windows-вирусов, сканирующих ядро Windows для определения адресов этих функций, вирус создает в конце зараженного файла собственную таблицу импортируемых имен. В результате при загрузке зараженного файла вирус "автоматически" получает необходимые адреса функций Windows.

Инсталлятор вируса сканирует таблицу импортов файла-носителя и записывает в необходимые поля таблицы адреса своих перехватчиков. Таким образом, вирус способен перехватить только те функции, которые используются зараженной программой, и резидентная копия вируса получает управление только в тех случаях, конда зараженный процесс вызывает их. Резидентность вируса можно также классифицировать как "на время процесса" (per-process memory resident). Резидентная копия вируса активна только на время работы программы-носителя и выгружется из памяти Windows при завершении ее работы.

Вирус перехватывает 31 функцию Windows (вернее - все функции из тех, которые импортируются зараженной программой): 12 функций KERNEL32, 4 функции SHELL32, 2 - из COMDLG32, 8 - из USER32 и 5 из GDI32:

KERNEL32.DLL: CreateFileA, OpenFile, MoveFileA, MoveFileExA, CopyFileA, _lopen, WinExec, CreateProcessA, LoadLibraryA, LoadLibraryExA, FindFirstFileA, FindNextFileA SHELL32.DLL: ShellExecuteA, ShellExecuteEx, ShellExecuteExA, FindExecutable COMDLG32.DLL: GetOpenFileNameA, GetSaveFileNameA USER32.DLL: DrawTextA, DrawTextExA, TabbedTextOutA, wsprintfA, wvsprintfA, GetTabbedTextExtentA, MessageBoxA, WinHelpA ; GDI32.DLL: TextOutA, ExtTextOutA, GetTextExtentPointA, GetTextExtentPoint32A, GetTextExtentExPointA

Все перехваты функций KERNEL23, SHELL32 и COMDLG32 используются для определения имен файлов, к которым идет обращение, и заражения их. Таким образом, вирус заражает PE EXE-файлы при их открытии, создании, копировании, запуске и т.д. Все прочие перехваты (USER32 и GDI32) используются вирусом для вызова своих эффектов.



Содержание раздела