Энциклопедия Spyware

Ms-Rem (Ms-Rem@yandex.ru)

Хакер, номер #085, стр. 085-124-1

Как и что воруют современные шпионские программы

Сегодня все повадились друг за другом шпионить. Ничего, надо заметить, в этом хорошего нет. Наплодилась целая куча программ, цель у которых одна - собирать всякую информацию с компьютера и отправлять ее кому-нибудь во вне. Класс этих программ окрестили замечательным словом spyware. В этом, кстати, тоже ничего хорошего. Хорошо только то, что сегодня мы разберемся, какими бывают эти неприятные шпионские инструменты, как они реализуются и как от них уберечься.

Давай дадим строгое определение spyware. Spyware - это программа несанкционированно, то есть без разрешения пользователя, собирающая какую-либо информацию о компьютере и отправляющая ее своему хозяину. В категорию spyware однозначно можно записать разнообразные кейлоггеры, формграбберы и парольные трояны наподобие Pinch. Но производители AntiSpyware-софта не придерживаются столь строгого определения и добавляют в свои базы сигнатур программы совсем не подходящие под это определение (к примеру, трояны вроде NetBus, которые никаких шпионских функций в помине не имеют). На этом принципе работают AntiSpyware модули ZoneAlarm и Outpost Firewall (в нем такой модуль появился совсем недавно, с выходом версии 3.0), а также программы AVZ, TrojanRemover, Microsoft AntiSpyware и многие другие. Польза от подобных защит весьма сомнительна. Они работают аналогично антивирусу, а значит, не умеют распознавать новые шпионские программы и модифицированные версии старых. К тому же любой антивирус справляется с сигнатурным поиском гораздо лучше таких программ.

Но существуют AntiSpyware-утилиты, основанные не на поиске конкретных шпионских программ, а на определении характерных признаков их работы. Такие программки обеспечивают неплохой уровень защиты, и для их обхода нужно четко представлять методы их работы. В конце статьи я подробно рассмотрю несколько таких программ, а пока давай разберемся, за какими именно данными охотятся злые и нехорошие шпионы.

[кейлоггеры]

Кейлоггеры aka клавиатурные шпионы - это самый распространенный тип шпионских программ. Он появился еще во времена старого доброго DOS'а, и теперь реализации кейлоггеров можно встретить под такими системами, как Windows всех мастей, Linux и даже BSD. Как ты, конечно, понимаешь, эти шпионские программы занимаются тем, что тихонько записывают все введенное с клавиатуры. Это могут быть пароли, может быть переписка, так что охват у этого типа spyware приличный. Никто в обиде не останется, в том числе и кодеры.

В Windows большинство клавиатурных шпионов представляют собой несложный хук на одно из системных событий. Для установки такого хука используется функция SetWindowsHookEx. Для захвата нажатий клавиш ловушка ставится на события WH_GETMESSAGE или WH_KEYBOARD. В первом случае callback-функция хука будет получать все оконные сообщения, а во втором - только WM_KEYDOWN и WM_KEYUP. Процедура, обрабатывающая хуки, должна находиться в dll, которая будет подгружена ко всем процессам, имеющим очередь сообщений (это все GUI-процессы). Затем оконное сообщение передается в основной процесс кейлоггера с помощью SendMessage, где и происходит сохранение лога на диск или отправка его в сеть. Установка хука будет выглядеть так:

Содержание  Вперед на стр. 085-124-2
ttfb: 3.3140182495117 ms