Методы автозапуска Ms-Rem (Ms-Rem@yandex.ru) Хакер, номер #081, стр. 081-118-5 DisplayName - имя службы, отображаемое в MMC, консоли администрирования служб. Чтобы не палить троян, хакеры пишут здесь что-нибудь максимально правдоподобное. ErrorControl - критичность ошибок службы для работы системы. Этот параметр обычно устанавливается в ноль. ImagePath - путь к исполнимому файлу службы. ObjectName - имя пользователя, от которого будет запущена служба. Интереснее всего поставить "LocalSystem". Start - тип запуска. Для автозапуска службы при старте системы надо установить 2. Type - тип службы. Этот параметр отличает службы от драйверов. Для организации автозапуска некоторого приложения, здесь следует указать значение 16, что будет означать, что это Win32-служба. Обобщая все вышесказанное можно написать REG-файл, устанавливающий службу. Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CoolTrojan] "Type"=dword:00000010 "Start"=dword:00000002 "ErrorControl"=dword:00000000 "ImagePath"="C:\WINDOWS\system32\trojan.exe" "DisplayName"="CoolTrojan" "ObjectName"="LocalSystem" После копирования файла trojan.exe в папку WINDOWS\system32 и выполнения этого REG-файла троян будет установлен в систему. Запущен он будет после следующей ее перезагрузки. Этот метод прост в применении и может показать весьма неплохие результаты. Но грамотный администратор всегда проверяет списки установленных служб, и в этом случае, хакера могут обломать. [подмена и заражение файлов] Одним из наиболее незаметных для пользователя и администратора методов автозагрузки является замена одного из загружаемых файлов своим, с последующим запуском оригинального файла. Для этого хакеру нужно сначала переименовать подменяемый файл, а затем записать вместо него свой. Проще всего это сделать в случае с EXE-файлами, но, по-моему, интереснее подменять DLL. Это немного сложнее, зато такую подмену обнаружить будет куда тяжелее. Заменяющая DLL должна экспортировать функции с такими же именами, как и оригинальная. Проще всего реализовать подобный экспорт, описав все функции заменяемой DLL как external. Чтобы ты мог лучше понять механизм замены ниже я приведу пример DLL, которой можно подменить sclgntfy.dll прописанную в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\sclgntfy, предварительно переименовав ее в sclgntfi.dll. library sclgntfy; procedure WLEventLogoff; external 'sclgntfi.dll'; exports WLEventLogoff; begin end. Эта DLL при вызове функции WLEventLogoff просто передает управление оригинальной DLL. Но, как ты понимаешь, между begin и end хакер может поставить свой код, который будет выполнен при ее загрузке. Можно не подменять оригинальный файл своим, а просто воспользоваться вирусной методикой - расширить последнюю секцию в PE-файле, записать туда свой код, который будет запускать трояна и передавать управление на оригинальную точку входа (о внедрении кода в чужое приложение ты также можешь почитать в статье Крис Касперски в прошлом номере. – прим. Горлума). Давай попробуем сделать это вручную, чтобы получше разобраться, в действиях хакера. Для этого возьмем обычный блокнот (notepad.exe) из Windows XP и попробуем дописать в него код, который будет запускать калькулятор. |