PDA

Просмотр полной версии : Какой должна быть Anti-Spyware программа



Зайцев Олег
15.10.2004, 12:13
Предлагаю подискутировать на тему - что должна в идеале уметь программа, предназначенная для убиения SpyWare, AdvWare, Hijacker, Dialer и прочей подобной нечисти, которая в чистом виде не является вирусом или трояном, но может изрядно попортить жизнь пользователю.

Как создатель бесплатной утилиты AVZ (http://z-oleg.com/secur/avz.htm) я хочу обобщить пожелания и предложения и воплотить их в новых версиях AVZ (текущая версия - не более как простейшая оболочка для ядра AVZ)

Geser
15.10.2004, 12:23
Вообще давольно близка к идиалу Ad-Aware. Добавить ещё возможность бокировать установку новых сервисов и возможность просматривать установленные сервисы + возможность видеть процессы которые скрываются, и отмечать их. Ещё неплохо каждый день автоматически делать копию всех важных верток реестра, и сравнивать их по требованию. Неплохо что бы имелся список наиболее часто встречающихся безопасных процессов, с их MD5.

Geser
15.10.2004, 12:28
Вообще наверное нужно разделить требования к сканеру, и резидентному модулю. Вот ближе к вечеру составлю списочек :)

Зайцев Олег
15.10.2004, 12:41
Список - это хорошо :) его удобно обсуждать и реализовать. У AVZ уже есть резидентный модуль (он сейчас тестируется), и вероятно действительно лучше разделить требования к сканеру и резидентному сторожу (хотя база у них естественно будет общая)

drongo
15.10.2004, 13:30
*упавление файлом hosts в полной мере. частично реализованно в
spybot S&D , только в ручную нельзя вставлять сайты из интерфейса программы :(
* желательно линк на описание найденного шпиона .
*имунизация на подобие spywareblaster . мне не нравиться мониторы , которы потребляют ресурсы и конфликтуют друг с другом , по моему идеальное решение : предотвратить само заражение:)

Зайцев Олег
15.10.2004, 13:39
упавление файлом hosts в полной мере. частично реализованно в
spybot S&D , только в ручную нельзя вставлять сайты из интерфейса программы :(
также желательно линк на описание найденного шпиона .

Вероятно, имеет смысл делать копию файла Hosts для возможности восстановления и считать его CRC для контроля - по хорошему, меняется он редко. Насчет описания шпионов - я со временем хочу сделать свою базу описаний (по принципу - краткое описание + ссылки). Кстати, тут есть еще момент с классификацией - где проводить грань между AdvWare и SpyWare (например, лаборатория Касперского делит все жестко - или троян, или AdvWare)

Насчет иммунизации - это сильно захламляет реестр и помогает 1-2% SpyWare (которые приползают через ActiveX). А мой монитор не конфликтует и не тормозит - 3 мб ОЗУ и все ... - он же не антивирь, поэтому ресурсов ему нужно очень мало)

drongo
15.10.2004, 14:20
оф-топик : антивирусный монитор у меня 2.6 мб кушает :) (ф-прот ), то что знает определяет и не тормозит ни капли :)

Зайцев Олег
15.10.2004, 14:32
оф-топик : антивирусный монитор у меня 2.6 мб кушает :) (ф-прот ), то что знает определяет и не тормозит ни капли :)

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

Geser
15.10.2004, 15:29
Сканер
Два режима проверки:
1. Быстрая проверка. Все загруженные процесы со всеми их dll, все объекты из списка автозапуска и сервисов, BHO, host file и все критические ключи реестра.
2. Полная проверка. Всё перечисленное выше + проверка всех файлов на диске и полная проверка реестра.

Далее, что бы была действительно хорошая программа для борьбы со шпионами, кроме автоматического поиска она должна вкючать в себя набор утилит облегчающих отлов всякой гадости вручную.
1. Возможность генерации отчёта в который входит все загруженные процесы со всеми их dll, все объекты из списка автозапуска и сервисов, BHO, host file и все критические ключи реестра позволяющие перенаправить бродилку или запустить автоматически программу. Для каждого файла подсчитанная MD5. Очень желательно умение видеть процессы невидимые через Task Manager, и сравнивать со списком процессов которые через него видны.
2. Возможность сохранения отчёта и последующего сравнения с другими отчётами на предмет изменений.
3. Кроме "плохох" программ знание так же хотя бы наиболее распространённых "хороших" программ.
4. Возможность автоматического архивирования с паролем и отправки подозрительных файлов на анализ.
5. Возможность определять файлы имеющие цифровую подпись Microsoft
6. Возможность удаления файлов во время перезагрузки, если не удалось удалить обычным способом.
7. Возможность генерации списка всех исполняемых файлов директории Windows, с последующей возможностью сравнения и нахождения изменений.

Монитор
1. Мониторинг запущенных (лучше запускаемых т.е. перехват API) процессов и подгруженных (подгружаемых) dll
2. Мониторинг важных веток реестра и host file
3. Мониторинг директории Windows хотя бы на предмет появления новых исполняемых файлов.

Зайцев Олег
15.10.2004, 16:12
Отлично :)
Два режима проверки беру на заметку
далее по пунктам:
1. Это я закладываю однозначно. Причем, как я думаю, отчет нужно иметь возможность генерить отчет в XML формате, чтобы можно было его автоматически анализировать. Насчет невидимых процессов ложнее - трудно увидеть процессы, которые прячет руткит (это правда отдельный вопрос, SpyWare не буде так изощренно маскироваться)
2. Это полезно - это как раз к вопросу об XML
3. Получается большой объем - я создал у себя базу на 25000 файлов - несжатый объем 4.5 мб, хранит данные о всех "полезных" файлов Windows разных версий, Office ... можно конечно избирательно взять сотни две наиболее известных
4. Это однозначно нужно
5. Тоже можно, снимет чать проблемы размера базы п.п. 3
6. Обязательно. Это и сейчас есть в минимальном варианте - AVZ он пытается переименовать файл, чтобы после загрузки на втором проходе его удалить
7. Функции типа Adinf ? Разумно, я уже об этом думал - это позволит ловить многих червей/троянов, а не только SpyWare

По монитору - перехватить API можно, но как-то это нехорошо (документированного универсального пути то нет ...). Аналогично с мониторингом реестра - вешать драйвер а-ля regmon как-то страшновато (с точки зрения тормозов и стабильности системы). А вот мониторить папку Windows (и в особенности злачные места типа "Downloaded Program Files\") - это вероятно необходимо

Тут еще момент возникает - как узнавать SpyWare - по MD5 долго и малейшее изменение приведет к тому, что мы не найдем его ... сейчас у меня используется размер + сигнатуры из разных точек файла

Geser
15.10.2004, 16:37
3. Получается большой объем - я создал у себя базу на 25000 файлов - несжатый объем 4.5 мб, хранит данные о всех "полезных" файлов Windows разных версий, Office ... можно конечно избирательно взять сотни две наиболее известных

Должно очень хорошо сжиматься при архивировании. Так что качать будет не много. А вообще что такое сегодня 4.5М? Можно сделать версию lite без этой опции для тех у кого медленная линия и старый комп.

По монитору - перехватить API можно, но как-то это нехорошо (документированного универсального пути то нет ...). Аналогично с мониторингом реестра - вешать драйвер а-ля regmon как-то страшновато (с точки зрения тормозов и стабильности системы).
Опять же, можно сделать версию pro, для тех кто не боится эксперементировать :) Удачные решения постепенно добавлять в стабильную версию.

Geser
15.10.2004, 16:40
Кстати, у меня давно идея сделать веб базу данных "хороших" программ. Типа загнал в неё лог, получил обратно очищенный от "хороших" программ. Среди того что осталось легче искать проблемные.

Зайцев Олег
15.10.2004, 17:20
Кстати, у меня давно идея сделать веб базу данных "хороших" программ. Типа загнал в неё лог, получил обратно очищенный от "хороших" программ. Среди того что осталось легче искать проблемные.

Именно так я и делаю (только локально, не через WEB) - когда ко мне попадает файл на анализ, я его показываю анализатору, он сравнивает с моей базой - для известного файла сразу сообщается, откуда он (например, из Windows XP SP1, лежит в System 32) и исключается из рассмотрения. Из типового лога остается примерно 10-50%, остальное узнается как известное. Аналогично для MD5 из лога. А жмется эта база паршиво - примерно 1:4 (т.е. до 1 мб он ужимается). Причина - у меня там кроме всего прочего MD5 суммы, а они уж очень уникальны :) Без них база в сжатом виде имеет размер около 200 кб - а это уже вполне приемлемо.

Minos
15.10.2004, 18:55
Разные режимы проверки - это, конечное хорошо. Но надо бы и несколько режимов работы с точки зрения продвинутости пользователя. Не всякий начинающий пользователь будет адекватно реагировать на постаянные сообщения о появлении новых исполняемых файлах в директории Windows.

Предлагаю три режима работы (можно реализовать через разные настройки интерфейса):
1. Начинающий (сканирование и поиск известных программе шпионов, интерфейс красивый но с минимумом установки, информация об изменении реестра и добавлении файлов пишется в лог и при большом желании показывается пользователю через штатный просмоторщик).
2. Опытный (Начинающий + возможность выдавать сообщения о подозрительных изменениях + простые инструменты отслеживания изменений системы)
3. Эксперт (Опытный + возможность работы/просмотра с дампами реестра и таблицами изменения на жестком диске + вспомогательные инструменты работы с реестром и файлами на жестком диске).

Зайцев Олег
16.10.2004, 08:23
В таком случае веротяно нужно вести речь даже о создании линейки продуктов - ядро общее, а возможности и интерфейс у каждого свои (для начинающего - все на автомат, минимум настроек ... для продвинутого - наоборот, максимум опция и разных возможностей)

Geser
16.10.2004, 11:49
В таком случае веротяно нужно вести речь даже о создании линейки продуктов - ядро общее, а возможности и интерфейс у каждого свои (для начинающего - все на автомат, минимум настроек ... для продвинутого - наоборот, максимум опция и разных возможностей)

Типа как у adaware. personal, plus, professional :)
Хотя можно что бы долго не мучаться просто сделать переключение режимов как в spybot.

Minos
16.10.2004, 22:57
Действительно, лучше сделать через переключение режимов, т.е. 3 шаблона настроек, как во многих программах, типа низкий/средний/высокий с возможностью ручной настройки отдельных пунктов. При этом интерфейс, ядро и базы будут общими, а "лишние" возможности будут отключены.
С разбиением на отдельные программы трудность в том, что человеку свойственно обучаться и грань между опытным пользователем и экспертом весьма быстро перешагивается (после нескольких инцидентов с которыми приходится разбираться "ручками"), а вслучае раздельных программ это подразумевает необходимость инсталяции более продвинутой версии. И не всегда возможно.

Зайцев Олег
02.11.2004, 19:48
Ну вот, опираясь на вышесказанное я состряпал новый интерфейс для AVZ - давайте критиковать. Это мое видение уровня "начинающий" - все на одном экране, вроде я ничего не упустил (и лишнего особенно ничего нет).
Одно только непонятно - стоит ли делать отдельные опции "лечить реестр", "исправлять настройки браузера" ?? по идее если найден и удален шпион, то имеет смысл удалить его ключи реестра, равно как в случае Hijacker воосстановить испрченные им настройки браузера.

Geser
02.11.2004, 19:50
Одно только непонятно - стоит ли делать отдельные опции "лечить реестр", "исправлять настройки браузера" ?? по идее если найден и удален шпион, то имеет смысл удалить его ключи реестра, равно как в случае Hijacker воосстановить испрченные им настройки браузера.

Для начинающего точно не стоит. Всё должно само лечиться, исправляться и восстанавливаться:)
Кстати, можно версию с английским интерфейсом? А то не все же живут в России :)

А вообще, симпатично сделано :)

Зайцев Олег
02.11.2004, 19:55
Для начинающего точно не стоит. Всё должно само лечиться, исправляться и восстанавливаться:)
Кстати, можно версию с английским интерфейсом? А то не все же живут в России :)

А вообще, симпатично сделано :)

Вот и я думаю (по поводу опции лечения реестра) - оно или лечится все на автомате, или в лог - regedit в руки в вперед :) Про английский интерфейс я думаю - как только версия устоится, тут же сделаю ...

PS: Надо будет завтра еще пообсуждать методики поиска SpyWare - я сегодня обобщу известные мне методы и скину на обсуждение в конфу

Geser
02.11.2004, 20:06
Вот и я думаю (по поводу опции лечения реестра) - оно или лечится все на автомате
Я за автоматическое лечение. Не вижу причин лечить ручками. Разве что если страшно что програма глюкнет и удалит пол реестра :)

Minos
02.11.2004, 20:19
Поддерживаю Geserа, начинающему не нужно знать вообще, что что-то с реестром делается, а то его спокойный сон от таких заявлений нарушится и будет хаить невчем неповинный продукт, после того как очередная очень лицензионная игрушка унесет с собой пол реестра ;).

Участковый
10.11.2004, 21:02
Думаю, нужно вставить в контекстное меню (хотя бы для папок) пункт «Проверить AVZ» (или что-то в этом роде).

Зайцев Олег
11.11.2004, 09:55
Думаю, нужно вставить в контекстное меню (хотя бы для папок) пункт «Проверить AVZ» (или что-то в этом роде).

Прописаться то туда нетрудно, я уже об этом думал ... но я лично не люблю программы, которые лезут в систему - так что это явно будет опциональная возможность.

Geser
11.11.2004, 10:01
Как насчёт выложить бетку?:)

Зайцев Олег
11.11.2004, 10:03
Как насчёт выложить бетку?:)

В районе понедельник-вторник бетта будет готова :)

Geser
11.11.2004, 10:06
В районе понедельник-вторник бетта будет готова :)

Ждём :)

Зайцев Олег
11.11.2004, 12:33
Ждём :)

Форсирую :)

Кстати, сегодня я положил на сайте апдейт базы, в которую добавлено более 1000 новых TrojanSpy, Backdoor, TrojanDownloader, Dropper, Dialer ... - беру не качеством, а количеством :)

kps
18.11.2004, 14:41
Форсирую :)


С удовольствием потестил бы ;)