Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #70, СЕНТЯБРЬ 2006 г.

рождение смерша

DEEONI$ (DEEONIS@GMAIL.COM)

Спецвыпуск: Хакер, номер #070, стр. 070-068-1


ICQ: 982-622

СОЗДАНИЕ АНТИСПАЙВАРА СОБСТВЕННЫМИ РУКАМИ: ОПЫТ ПРЕДКОВ

ВСЕ МЫ СЛЫШАЛИ О ЗЛОБНЫХ ВИРУСАХ, КОТОРЫЕ НЕЗАМЕТНО ФОРМАТИРУЮТ ЖЕСТКИЕ ДИСКИ, И ХИТРЫХ ТРОЯНЦАХ, КРАДУЩИХ ПАРОЛИ ОТ ИНТЕРНЕТА, ЕМЕЙЛОВ И ДР. ДЛЯ БОРЬБЫ С ЭТОЙ ЗАРАЗОЙ НАХОДЧИВЫЕ ПРОГРАММИСТЫ ПРИДУМАЛИ АНТИВИРУСЫ. НО НИ ЧТО НЕ СТОИТ НА МЕСТЕ: ТЕ, КТО РАНЬШЕ ПИСАЛ ТРОЯНЧИКИ, ВЫРОСЛИ, И ИМ СРОЧНО ПОНАДОБИЛИСЬ ДЕНЬГИ. А ДЕНЬГИ, КАК ИЗВЕСТНО, С НЕБА НЕ ПАДАЮТ, И ВИРУСОПИСАТЕЛЯМ И ТРОЯНОДЕЛАТЕЛЯМ ПРИШЛОСЬ ИСПОЛЬЗОВАТЬ СВОИ НЕЗАУРЯДНЫЕ СПОСОБНОСТИ И ЗНАНИЯ ДЛЯ СОЗДАНИЯ НОВОГО ПОКОЛЕНИЯ ВРЕДОНОСНЫХ ПРОГРАММ, ИМЕНУЕМЫХ ЗАГАДОЧНЫМ АМЕРИКАНСКИМ СЛОВОМ SPYWARE

SpyWare и AdWare - главные враги современного пользователя Сети. Информация о том, на каких сайтах отвисает среднестатистический интернетчик той или иной страны, очень дорого стоит. Еще больше ценится возможность хоть на несколько секунд «впарить» юзеру рекламный ролик своего товара. За это готовы хорошо платить как огромные корпорации, так и маленькие фирмочки с большими амбициями.

Но многим людям не нравится, что за ними шпионят и постоянно промывают мозги рекламой. И, следуя основному закону экономики «спрос рождает предложение», появились средства, противодействующие назойливым программкам. Их скромно называют AntiSpyWare.

В этой статье я расскажу, как создать свой собственный aнтиSpyWare, да еще таким образом, чтобы он стал коммерчески успешным проектом. Здесь, конечно, не будет исходных кодов, и человек, ни разу не видевший C++ или хотя бы Delphi, не сможет после прочтения этого материала сесть и написать свою программу для уничтожения SpyWare. Но зато осилившие статью, поймут, что все не так сложно как кажется, и будут четко представлять себе, что надо сделать, чтобы их продукт продавался.

[сердце антиspyware.]

Давай подумаем, без чего наш aнтиSpyWare не сможет обойтись. Ну, конечно же, без сканера! Его надо реализовать в первую очередь. Причем сканер должен быть универсальным, то есть ему должно быть абсолютно все равно, что и где искать. Естественно, без ООП (объектно-ориентированного программирования) здесь будет очень тяжело обойтись. Лично я рекомендую разработать сначала абстрактный родительский класс сканера, который будет реализовывать общие методы, такие как старт, остановка или приостановка сканирования, а затем создать потомков этого абстрактного сканера, которые будут работать с файловой системой, реестром и т.п.

Теперь давай немного отвлечемся от сканера и определимся с тем, что именно нам надо искать, и где это прячется. В первую очередь это исполняемые файлы: exe, dll. SpyWare, как правило, активно работают с реестром. Самое простое, что может сделать такая шпионская программа - это добавить себя в ключик реестра Run. Но чаще используются более изощренные способы запуска, например подгрузка dll к процессу explorer.exe. Многие SpyWare и ADware - вполне самостоятельные программы и могут быть даже COM-компонентами. А, как известно, COM-объекты регистрируются в реестре и однозначно идентифицируются при помощи GUID. А GUID (Globally Unique Identifier) – это шестнадцатибайтный двоичный массив, обеспечивающий идентификаторы, которые не повторяются нигде и никогда. Эти GUID’ы хранятся в ключе реестра HKCR\AppID. Благодаря их уникальности можно без труда найти и обезвредить шпиона.

Содержание  Вперед на стр. 070-068-2