Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа - Разработка компонент защиты от кейлоггеров.doc
Скачиваний:
171
Добавлен:
02.05.2014
Размер:
508.93 Кб
Скачать

2. Методы противодействия программам-шпионам

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

Но есть и другая группа программ-шпионов, которая наиболее опасна для любых автоматизированных систем - это неизвестные программы-шпионы. Они подразделяются на пять типов.

1. Программы-шпионы, разрабатываемые под эгидой правительственных организаций (пример — продукт Magic Lantern, проект под названием Cyber Knight, США).

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

3. Программы-шпионы, которые созданы в ограниченном количестве (часто только в одной или нескольких копиях) для решения конкретной задачи, связанной с похищением критической информации с компьютера пользователя (например программы, применяемые хакерами-профессионалами). Такие программы могут представлять собой немного видоизмененные открытые исходные коды программ-шпионов, взятые из Интернета и скомпилированные самим хакером, что позволяет изменить сигнатуру программы-шпиона.

4. Коммерческие, особенно, корпоративные программные продукты, которые очень редко вносятся в сигнатурные базы, а если и вносятся, то только по политическим мотивам (пример - программные продукты таких известных фирм, как WinWhat-Where Corporation, SpectorSoft Corporation, ExploreAnywhere Software LLC, Omniquad, Ltd).

5. Программы-шпионы, представляющие собой keylogging-модули, входящие в состав программ-вирусов. До внесения сигнатурных данных в вирусную базу данные модули являются неизвестными. Пример - всемирно известные вирусы, натворившие много бед в последние годы, имеющие в своем составе модуль перехвата нажатий клавиатуры и отправки полученной информации в сеть Интернет, например:

• W32.Dumaru.Y@mm - http:// security response.symantec.com/ avcenter/venc/data/w32.dumaru. y@mm.html;

• W32.Yaha.AB@mm - http:// security response.symantec.com/ avcenter/venc/data/w32.yaha. ab@mm.html;

• W32.Bugbear.B@mm - http:// security response.symantec.com/ avcenter/venc/data/w32. bugbear. b@mm.html;

• W32.HLLW.Fizzer@mm - http:// securi tyresponse.symantec.com/ avcenter/venc/data/w32.hllw. fizzer@mm.html;

• W32.Badtrans.B@mm - http:// security response.symantec.com/ avcenter/venc/data/W32.Badtrans. B@mm.html.

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

Информация о программах-шпионах второго типа нигде не публикуется, данный код работает на уровне ядра операционной системы и, соответственно, они не могут обнаруживаться никакими приложениями.

Информация о программах-шпионах четвертого типа вносится в сигнатурные базы очень редко, так как это противоречит законодательству многих стран мира. Но даже если это и происходит, то деактивировать, а тем более удалить их зачастую невозможно без разрушения операционной системы. Эти программы не имеют своих процессов, а прячутся в виде потоков в системные процессы. Они имеют режимы контроля целостности и самовосстановления после сбоев, могут работать только с памятью компьютера и не работать с жестким диском.

Информация о программах-шпионах пятого типа вносится в сигна-турные базы через несколько часов или дней после начала соответствующей вирусной атаки. А за это время конфиденциальная информация пользователя персонального компьютера уже может быть украдена и отослана в Интернет на заранее подготовленный вирусописателем адрес.

Что же может противопоставить пользователь персонального компьютера программам-шпионам? Решение данной проблемы возможно только в использовании комплекса программных продуктов.

Программный продукт №1 - тот, который использует эвристические механизмы защиты, созданные специалистами, имеющими больший опыт борьбы с программами-шпионами. Его защита непрерывна, при этом он не использует никакие сигнатурные базы.

Программный продукт №2 - антивирусный программный продукт, использующий постоянно обновляемые сигнатурные базы.

Программный продукт №3 - персональный firewall, контролирующий выход в Интернет с персонального компьютера на основании установок самого пользователя.

Такая последовательность выбрана неспроста.

Антивирусный программный продукт успевает отреагировать на проникновение вируса с keylogging-модулем, когда уже осуществлен перехват информации, т.к. вирусная база еще не успела пополниться новой информацией, а соответственно, и обновиться на компьютере пользователя.

Персональный firewall задает много вопросов, на которые даже очень хорошо подготовленный пользователь может ответить некорректно, тем самым неправильно его сконфигурировав. Например, некоторые коммерческие мониторинговые программы используют процессы программных продуктов, которым заведомо разрешен выход в Интернет (браузеры, почтовые клиенты).

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

Антивирусных программных продуктов, использующих постоянно обновляемые сигнатурные базы, в мире создано великое множество (AVP, Dr.Web, Panda Antivirus, Norton Antivirus и многие другие). Персональных межсетевых экранов создано еще больше (Norton Internet Security, BlackICE Defender, GuardianPro Firewall, Tiny Personal Firewall и прочие). А защитные программы первого типа представлены на сегодняшний день всего лишь одним продуктом, не имеющим аналогов в мире. Он называется Priva-cyKeyboard™.

PrivacyKeyboard™ блокирует работу программ-шпионов без использования сигнатурных баз. Это стало возможным благодаря тому, что были найдены решения и разработаны алгоритмы, которые позволили отличить работу программы-шпиона от любого иного приложения, которое установлено в системе.

PrivacyKeyboard™ имеет в своем составе модули, обеспечивающие:

• защиту от перехвата нажатий клавиш клавиатуры;

• защиту от перехвата текста из окон;

• защиту от снятия изображения рабочего стола;

• защиту от снятия изображения активных окон.

Для собственной защиты от внешнего разрушительного воздействия программ-шпионов программа PrivacyKeyboard™ имеет систему контроля целостности и другие защитные функции.

Методы противодействия аппаратным кейлоггерам.

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

Сегодня существует только два метода противодействия аппаратным кейлоггерам при работе на стандартном персональном компьютере:

• физический поиск и устранение аппаратного кейлоггера;

• использование виртуальных клавиатур для ввода особо важной информации (логины, пароли, коды доступа, PIN-коды кредитных карт).

Организационные меры защиты

В отличие от спама и другого нежелательного ПО шпионские программы обладают функционалом, посредством которого могут быть скомпрометированы конфиденциальныеданные. Потенциальные результаты «деятельности» этих программ – существенное замедление работы компьютера или сложности при посещении любого веб-сайта, снижение продуктивности работы сотрудников и информационной безопасности компании.

Решить проблему шпионского ПО можно только комплексными мерами в масштабах всей организации.

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

Ни одно из существующих на рынке антишпионских решений не обеспечивает 100%-ной защиты. Даже в абсолютно замкнутой программной среде возможно заражение, если в разрешенном установленном ПО шпионский модуль присутствовал изначально.

Главная мера защиты – «воспитание» пользователей. Это необходимая составляющая процесса обеспечения безопасности корпоративной сети. До тех пор, пока сотрудники не осознают, что нельзя «не глядя» загружать на свои компьютеры какое-то ПО, на первый взгляд полезное или забавное, максимального эффекта от средств защиты от угроз, подобных шпионскому ПО, ждать не стоит.

Шпионское ПО стоит на 2-м месте в списке угроз сетевой безопасности – после вирусов, червей и троянских программ

Главная мера защиты – «воспитание» пользователей: они должны хорошо представлять себе риски и финансовый ущерб, которые несет с собой шпионское ПО, а также соблюдать превентивные меры

Многие из шпионских программ попадают на компьютеры легально: пользователь сам дает добро на их установку, не глядя подписывая условия лицензионного соглашения устанавливаемого продукта

Пять основных последствий атак шпионского ПО (версия Trend Micro):

  • задействование вычислительных ресурсов сети

  • снижение продуктивности работы пользователей

  • снижение пропускной способности сети

  • загрузка вредоносного ПО

  • вмешательство в частную жизнь

Для начала определим конкретные пути проникновения шпионского ПО. О некоторых мы уже упоминали (СD и другие носители, обновления ПО). Но чаще всего в роли «засланного казачка» выступает бесплатное ПО. Другим источником могут быть функции интернет-браузера, обеспечивающие закачивание обновлений без участия пользователя: они выступают как инструмент для загрузки нежелательного ПО. Для контроля за подобной загрузкой, производимой, например, при помощи ActiveX, можно применять функцию ActiveX Control, реализующую запрос на подтверждение загрузки. Работа в Интернете при наличии незакрытых уязвимостей ОС или интернет-браузера тоже чрезвычайно опасна. Следует остерегаться и программ, маскирующихся под автоматические обновления ОС (всегда смотрите на адрес сайта!).

Особое внимание следует обращать на такие точки проникновения в сеть вредоносного ПО, как средства мгновенной передачи сообщений (интернет-пейджинг) и файлообменные сети (Kazaa, eDonkey и др.). По данным Osterman Research, более 90% компаний, в которых данные средства разрешены к использованию, никак не контролируют их применение и не имеют соответствующих средств защиты.

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

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

Программные средства защиты

В настоящее время существует достаточно широкий спектр средств обнаружения и удаления шпионского ПО. Выбор определяется лишь масштабом сети компании и размером кошелька. Так, для небольшой компании имеет смысл использовать решения независимого поставщика антишпионского ПО (они, как правило, дешевле при хороших функциональных возможностях, но не всегда имеют гибкую систему управления). При поиске поставщика помогают результаты сравнительного тестирования, публикуемые в Интернете (например, www.spywareremoversreview.com или www.adwarereport.com). Там же можно скачать пробные версии для тестирования. Среди производителей, чьи разработки получили достаточно высокие оценки, можно назвать ParetoLogic (XoftSpy), NoAdware (одноименный продукт), AluriaSoftware (Spyware Eliminator), PCTools (Spyware Doctor), Webroot Software (SpySweeper) и др. Впрочем, хотелось бы обратить внимание читателя и на то, что в данной области независимые сравнения не выявлены, поэтому при выборе поставщика лучше полагаться на результаты собственного предварительного тестирования.

Что касается организаций со сложной сетевой инфраструктурой, то для них ситуация не столь проста. При использовании продуктов независимых поставщиков antispyware часто возникает проблема интеграции централизованной консоли управления такого продукта с существующей системой управления. Дополнительное средство управления снижает эффективность реагирования на инциденты безопасности (из-за времени, затрачиваемого администратором продукта на обслуживание еще одной консоли), а также увеличивает стоимость обслуживания системы в целом. Сложная сеть требует решения, которое интегрируется в существующую систему безопасности и обеспечивает использование единых инструментов управления, в том числе и для антишпионских и антивирусных продуктов. Заметим, что крупнейшие разработчики антивирусов предлагают свои решения для борьбы со шпионским ПО в виде как отдельного продукта, так и встроенного в антивирусный пакет функционала. Список достаточно широк: Symantec (Symantec Antivirus Corporate Edition и Symantec Client Security), MacAfee (McAfee Antispyware Enterprise), Trend Micro (Trend Micro Anti-Spyware Enterprise Edition), Computer Associates (eTrust PestPatrol Anti-Spyware), ESET (NOD32 for Enterprise), Microsoft (Microsoft Defender) и др. Платный сравнительный анализ этих средств «AntiSpyware Product Comparison Guide» доступен на сайте TiPS-IT.com (www.tipsit.com/product.php?pid=3).

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

Программы для поиска и удаления клавиатурных шпионов

Любой антивирусный продукт. Все антивирусы в той или иной мере могут находить клавиатурные шпионы, однако клавиатурный шпион не является вирусом, поэтому пользы от антивируса мало.

Утилиты, реализующие механизм сигнатурного поиска и эвристические механизмы поиска. Примером может служить утилита AVZ, сочетающая сигнатурный сканер и систему обнаружения клавиатурных шпионов на базе ловушек.

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

Поддержание уровня защиты на надлежащем уровне

Необходимо своевременно устанавливать патчи, закрывающие обнаруженные уязвимости в ОС и интернет-браузере.

При установке какоголибо ПО внимательно читайте «лицензионное соглашение», а также сопроводительную документацию (например, файл ReadMe), где могут содержаться сведения о дополнительном ПО либо о дополнительных функциях основного ПО, связанных со сбором и отправкой информации.

Не соглашайтесь на установку ПО, если это предлагается сделать нажатием кнопки «Yes» в окне появившегося на экране сообщения.

Никогда не отвечайте на спам-сообщения и не нажимайте кнопки во всплывающих окнах. .

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

Использование менее популярного, чем Internet Explorer, интернет-браузера тоже повышает защищенность от интернет-угроз, так как чаще всего злоумышленники используют уязвимости наиболее распространенного ПО. .

Шпионское программное обеспечение может попасть на компьютер пользователя двумя основными путями:

В ходе посещения сайтов Интернет. Наиболее часто проникновение шпионского ПО происходит про посещении пользователем хакерских и warez сайтов, сайтов с бесплатной музыкой и порносайтов. Как правило, для установки шпионского ПО применяются ActiveX компоненты или троянские программы категории TrojanDownloader по классификации лаборатории Касперского. Многие хакерские сайты могут выдать "крек", содержащий шпионскую программу или TrojanDownloader для ее загрузки;

В результате установки бесплатных или условно-бесплатных программ. Самое неприятное состоит в том, что подобных программ существует великое множество, они распространяются через Интернет или на пиратских компакт-дисках. Классический пример - кодек DivX, содержащий утилиту для скрытной загрузки и установки SpyWare.Gator. Большинство программ, содержащих SpyWare-компоненты, не уведомляют об этом пользователя;

Точных критериев для занесения программы в категорию "SpyWare" не существует, и очень часто создатели антивирусных пакетов относят программы категорий "Adware", "Hijacker" и "BHO" к категории "SpyWare" и наоборот.

Для определенности предлагается ряд правил и условий, при соблюдении которых программу можно классифицировать как SpyWare. В основу классификации положены проведенные автором исследования наиболее распространенных SpyWare программ:

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

Программа скрытно загружается в память в процессе загрузки компьютера. Стоит отметить, что разработчики современных SpyWare начали применять Rootkit технологии для маскировки процесса в памяти и файлов на диске. Кроме того, становится популярным создание «неубиваемых» процессов – т.е. запуск двух процессов, которых перезапускают друг друга в случае остановки. Такая технология в частности применяется в SpyWare.WinAd;

Программа выполняет некоторые операции без указания пользователя - например, принимает или передает какую-либо информацию из Интернет;

Программа загружает и устанавливает свои обновления, дополнения, модули расширения или иное ПО без ведома и согласия пользователя. Данное свойство присуще многим шпионским программам и чрезвычайно опасно, т.к. загрузка и установка обновлений и дополнительных модулей происходит скрытно и часто ведет к нестабильной работе системы. Более того, механизмы автоматического обновления могут быть использованы злоумышленниками для внедрения на ПК пользователя троянских модулей;

Программа модифицирует системные настройки или вмешивается в функционирование других программ без ведома пользователя. Например, шпионский модуль может изменить уровень безопасности в настройках браузера или внести изменения в настройки сети;

Программа модифицирует информацию или информационные потоки. Типовым примером являются разные расширения для программы Outlook Express, которые при отправке письма приписывают к нему свою информацию. Второй распространенный пример - модификация загружаемых из Интернет страниц (в страницы включается рекламная информация, некоторые слова или фразы превращаются в гиперссылки)

Методики поиска клавиатурных шпионов

Поиск по сигнатурам. Данный метод не отличается от типовых методик поиска вирусов. Сигнатурный поиск позволяет однозначно идентифицировать клавиатурные шпионы, при правильном выборе сигнатур вероятность ошибки практически равна нулю. Однако сигнатурный сканер сможет обнаруживать заранее известные и описанные в его базе данных объекты.

Эвристические алгоритмы. Из названия понятно, что это методики поиска клавиатурного шпиона по его характерным особенностям. Эвристический поиск носит вероятностный характер. Как показала практика, этот метод наиболее эффективен для поиска клавиатурных шпионов самого распространенного типа — тех, что основаны на ловушках. Однако подобные методики дают много ложных срабатываний. Мои исследования показали, что существуют сотни безопасных программ, не являющихся клавиатурными шпионами, но устанавливающих ловушки для слежения за клавиатурным вводом и мышью. Наиболее распространенные примеры — программы Punto Switcher, словарь Lingvo, программное обеспечение для мультимедийных клавиатур и мышей.

Мониторинг функций Windows API, используемых клавиатурными шпионами. Данная методика основана на перехвате ряда функций, применяемых клавиатурным шпионом, — в частности функций SetWindowsHookEx, UnhookWindowsHookEx, GetAsyncKeyState, GetKeyboardState. Вызов данных функций каким-либо приложением позволяет вовремя поднять тревогу, однако проблемы многочисленных ложных срабатываний будут теми же, что и при применении метода 2.

Отслеживание используемых системой драйверов, процессов и сервисов. Это универсальная методика, применяемая не только против клавиатурных шпионов. В простейшем случае можно применять программы типа Kaspersky Inspector или Adinf, которые отслеживают появление в системе новых файлов.