Анализ методов перехвата паролей пользователей компьютерных систем и методов противодействия им

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.03.2016
Размер файла 454,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Московский государственный университет информационных технологий, радиотехники и электроники»

МИРЭА

Кафедра «корпоративные информационные системы»

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе

по дисциплине: Безопасность функционирования информационных систем

Тема: Анализ методов перехвата паролей пользователей компьютерных систем и методов противодействия им

МОСКВА

2015

Содержание

Введение

Глава 1. Основные методы перехвата паролей

1.1 Брутфорсы

1.2. Снифферы

1.3 Клавиатурные шпионы

Глава 2. Основные методы противодействия перехвату паролей

2.1 Противодействие раскрытию и угадыванию пароля

2.2 Противодействие пассивному перехвату

2.3 Защита при компрометации проверяющего

2.4 Противодействие несанкционированному воспроизведению

2.5 Одноразовые пароли

2.6 Метод «запрос-ответ»

Заключение

Список литературы

Введение

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

Актуальность

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

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

Злоумышленники изобретают все более изощренные пути распространения вредоносных программ, в том числе с применением методов социальной инженерии, а также с использованием уязвимостей прикладного ПО (например, пакета уязвимостей BlackHole Exploit Kit различных версий). При отсутствии достаточных мер для обеспечения защиты компьютера, момент заражения может остаться для пользователя незамеченным.

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

Предмет и объект исследования

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

Сниффер может анализировать только то, что проходит через его сетевую карту. Внутри одного сегмента сети Ethernet все пакеты рассылаются всем машинам, из-за этого возможно перехватывать чужую информацию. Использование коммутаторов (switch, switch-hub) и их грамотная конфигурация уже является защитой от прослушивания. Между сегментами информация передаётся через коммутаторы. Коммутация пакетов -- форма передачи, при которой данные, разбитые на отдельные пакеты, могут пересылаться из исходного пункта в пункт назначения разными маршрутами. Так что если кто-то в другом сегменте посылает внутри него какие-либо пакеты, то в ваш сегмент коммутатор эти данные не отправит.

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

Парольная аутентификация -- процедура проверки подлинности, например:

· проверка подлинности пользователя путём сравнения введённого им пароля с паролем, сохранённым в базе данных пользователей;

· подтверждение подлинности электронного письма путём проверки цифровой подписи письма по открытому ключу отправителя;

· проверка контрольной суммы файла на соответствие сумме, заявленной автором этого файла.

Цель

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

Задачи

· Ознакомиться с основными методами перехвата паролей пользователей в информационной системе

· Выявить методы противодействия перехвату паролей

· Определить необходимые требования к созданию паролей пользователей в информационной системе.

Глава 1. Основные методы перехвата паролей

1.1 Брутфорсы

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

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

Данный способ подбора паролей очень хорош тем, что пароль в конце концов взламывается, но это может занять весьма и весьма долгое время, зачастую даже столетия. Так что данный способ взлома оправдывает себя не всегда, если пользователь-владелец взламываемого сервиса вел себя достаточно хитро и не использовал простых паролей типа «123», «qwerty» и тому подобных, а использовал и заглавные, и строчные символы, плюс ко всему этому задействовал и цифры, и разрешенные специальные символы. Если пароль при всем этом обладает еще и достаточной длинной (около 10 символов), то ему взлом методом брутфорса практически не грозит.

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

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

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

Ну и напоследок поговорим немного о математической стороне брута.

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

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

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

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

1.2 Снифферы

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

(ваш компьютер) -> (соседний компьютер) -> (компьютер со сниффером) -> (удаленный компьютер)

Стандартный пакет попутешествует из "вашего компьютера" через сеть. Он пройдет через каждый компьютер в сети, начиная с "соседнего ", через "компьютер со сниффером" и заканчивая "удаленным ". Каждая машина должна игнорировать пакет если он не предназначен для ее IP адреса. Тем не менее, машина со Сниффером игнорирует эти правила и принимает ЛЮБОЙ пакет, который через нее проходит. Сниффер также известен как сетевой анализатор. Нет реального различия между сетевым анализатором и сниффером, но компании по безопасности и Федеральное правительство предпочитают второе название поскольку оно звучит более угрожающе.

Какой это тип Атаки?

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

Чем хорош Сниффер ?

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

Типы Снифферов

Наиболее популярный тип Снифферов использует кратковременный забор информации и работает в небольших сетях. Причина этого кроется в том, что невозможно поставить сниффер, который бы постоянно отслеживал пакеты и при этом не сильно использовал мощность центрального процессора. Чрезмерная загрузка центрального процессора и файловой системы являются единственным путем обнаружения снифферов. Эти снифферы осуществляют быстрый и кратковременный забор информации, чтобы утилиты, подобные РS и IFCONFIG не смогли обнаружить их. Если Вы обнаружили что загрузка центрального процессора была выше нормального, или, каждый день, Вы теряете еще один мег. дискового пространства, и это ничем не может быть объяснено, - это указывает на присутствие сниффера.

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

Следующий тип снифферов записывает только первые Х байтов пакета (X определенное число), чтобы захватить имя/пароль. Другой метод заключается в захвате целого сеанса, и "вырубания" ключа. Более продвинутые типы снифферов поддержит оба метода. Выбор типа сниффера зависит от возможностей сети, хакера и желаемого конечного результата.

Популярные Снифферы

Снифферы являются инструментами как для хакера, так и для системных администраторов. Следующий список содержит наиболее популярные снифферы:

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

Snort: Это - тоже хороший сниффер поскольку скорректирован более четко чем Sniffit, имеет кучу опций.

TCPdump: Очень знаменитый сниффер. Считается, профессиональным административным средством.

ADMsniff: известная, очень квалифицированная группа хакеров ADM написала хороший сниффер.

Linsniffer: известный сниффер разработанный для платформы Linux .

Esniff: Это хорошо известный сниффер.

Sunsniff: этот сниффер сделан под платформу SunOS. Возможно один из наиболее известных снифферов т.к. был сделан почти десять лет назад.

Solsniffer: сниффер для Solaris. Это - просто модификация Sunsniff разработанная, для компиляции на платформу Solaris.

Есть много хороших снифферов подобно Snort, которые умеют работать на многочисленных платформах.

Обнаружение и Предотвращение атаки

Если необходимо проверить сеть на наличие снифферов, следующие программы могут сильно в этом помочь. Первая программа которая вам поможет - promisc.c, написаная на С. Когда она скомпилируется, она проверит локальную машину с любым типом карты NICs. Следующая программа тоже на Сneped.c, умеет делать дистанционные проверки на любые типы снифферов, но она компилируется только под Linux. Для поиска вручную, следует набрать команду 'ifconfig -', и посмотреть все сетевые интерфейсы, которые будут носить флаг PROMISC. Не так давно комманда L0pht выпустила бета-версию программы AntiSniff<http://www.l0pht.com/antisniff/> под Win9*,. Под NT сущетвует рабочая версия. Также L0pht выложили исходный код своей программы для Linux. Так же подойдет neped.c который обладает таким же типом поиска. Все эти инструменты предназначены для дистанционного обнаружения снифферов как на удаленных хостах, так и в пределах подсети. Эти программы зарекомендовали себя как отличные средства обнаружения и зачастую очень надежные для предотвращения несанкционированного сниффинга, так же хорошим средством защиты от снифферов является криптография, так как даже если на компьютер был установлен сниффер, полученная информация не принесет злоумышленнику никакой выгоды.

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

1.3 Клавиатурные шпионы

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

Клавиатурные шпионы

Это программы для скрытной записи информации о нажимаемых пользователем клавишах. У термина «клавиатурный шпион» есть ряд синонимов: KeyboardLogger, KeyLogger, кейлоггер; реже встречается термины "снупер", "snoop", "snooper" (от англ. snoop - буквально "человек, вечно сующий нос в чужие дела")

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

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

Перед описанием основных принципов работы клавиатурного шпиона необходимо рассмотреть модель аппаратного ввода системы Windows.

рис. 1. Модель аппаратного ввода системы Windows

При возникновении неких событии ввода (нажатии клавиш, перемещении мыши) события обрабатываются соответствующим драйвером и помещается в системную очередь аппаратного ввода. В системе имеется особый поток необработанного ввода, называемый RIT (RawInputThread), который извлекает события из системной очереди и преобразует их в сообщения. Полученные сообщения помещаются в конец очереди виртуального ввода одного из потоков (виртуальная очередь потока называется VIQ - VirtualizedInputQueue-). При этом RIT сам выясняет, в очередь какого конкретно потока необходимо поместить событие. Для событий мыши поток определяется поиском окна, над которым расположен курсор мыши. Клавиатурные события отправляются только одному потоку - так называемому активному потоку (т.е. потоку, которому принадлежит окно, с которым работает пользователь). На самом деле это не совсем так - в частности, на рисунке 1 показан поток A, не имеющий очереди виртуального ввода. В данном случае получатся, что потоки A и B совместно используют одну очередь виртуального ввода. Это достигается при помощи вызова API функции AttachThreadInput, которая позволяет одному потоку подключиться к очереди виртуального ввода другого потока. Следует отметить, что поток необработанного ввода отвечает за обработку специальных сочетаний клавиш, в частности Alt+Tab и Ctrl+Alt+Del.

Слежение за клавиатурным вводом при помощи ловушек

Данная методика является классической для клавиатурных шпионов. Суть метода состоит в применении механизма ловушек (hook) операционной системы. Ловушки позволяют наблюдать за сообщениями, которые обрабатываются окнами других программ. Установка и удаление ловушек производится при помощи хорошо документированных функций API библиотеки user32.dll (функция SetWindowsHookEx позволяет установить ловушку, UnhookWindowsHookEx - снять ее). При установке ловушки указывается тип сообщений, для которых должен вызываться обработчик ловушки. В частности, есть два специальных типа ловушки WH_KEYBOARD и WH_MOUSE - для регистрации событий клавиатуры и мыши соответственно. Ловушка может быть установлена для заданного потока и для всех потоков системы. Ловушка для всех потоков системы очень удобна для построения клавиатурного шпиона.

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

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

Слежение за клавиатурным вводом при помощи опроса клавиатуры

Данная методика основана на периодическом опросе состояния клавиатуры. Для опроса состояния клавиш в системе предусмотрена специальная функция GetKeyboardState, возвращающая массив из 255 байт, в котором каждый байт содержит состояние определенной клавиши на клавиатуре. Данный метод уже не требует внедрения DLL в GUI процессы и в результате шпион менее заметен.

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

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

Слежение за клавиатурным вводом при помощи перехвата API функций

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

Простейшим способом может быть перехват функций GetMessage, PeekMessage и TranslateMessage библиотеки User32, что позволит вести мониторинг всех сообщений, получаемых GUI приложениями.

Аппаратные клавиатурные шпионы

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

· Установка устройства слежения в разрыв кабеля клавиатуры (например, устройство может быть выполнено в виде переходника PS/2);

· Встраивание устройства слежения в клавиатуру;

· Считывание данных путем регистрации ПЭМИН (побочных электромагнитных излучений и наводок);

· Визуальное наблюдение за клавиатурой

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

Пример клавиатурного шпиона

Рис.2 Диалоговое окно программы «Actual Spy»

В настоящее время сотни клавиатурных шпионов, рассмотрим в качестве примера достаточно распространенную коммерческую программу ActualSpy(Диалоговое окно программы (http://www.actualspy.ru). Данная программа может регистрировать клавиатурный ввод (с регистрацией заголовка окна и имени программы), снимать скриншоты экрана по расписанию, регистрировать запуск/остановку программ, следить за буфером обмена, принтером, создаваемыми пользователем файлами. Кроме того, в программе реализовано слежение за Интернет-соединениями и посещаемыми сайтами. ActualSpy выбран в качестве примера

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

В качестве других примеров могут выступить SpyAgent (http://www.spytech-web.com), ActMon (http://www.actmon.com), SpyBuddy (http://www.actmon.com), PC ActivityMonitor (http://www.keyloggers.com), KGB Spy (http://www.refog.ru/)…. Этот список можно продолжать очень долго, однако в большинстве случаев современные клавиатурные шпионы имеют примерно одинаковую базовую функциональность и различаются сервисными функциями и качеством маскировки в системе.

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

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

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

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

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

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

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

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

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

Из специализированных программ интерес могут представлять коммерческие продукты PrivacyKeyboard и Anti-keylogger(пример программы (http://www.bezpeka.biz/). Интерфейс программы Anti-keylogger показан на рисунке:

Рис. 3 Интерфейс программы Anti-keylogger

Программа Anti-keylogger работает в фоновом режиме и производит обнаружение программ, подозреваемых в слежении за клавиатурой. В случае необходимости можно вручную разблокировать работу любой из обнаруженных программ (например, на рисунке видно, что в список «шпионов» попали MSCTF и программа закачки из Интернета FlashGet). Для обнаружения клавиатурных шпионов не применяются базы сигнатур, обнаружение ведется эвристическими методами.

Тестирование программы показало, что она эффективно противодействует клавиатурным шпионам, основанным на применении ловушек, циклического опроса и клавиатурного драйвера-фильтра.

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

клавиатурный шпион защита пароль

Глава 2. Основные методы противодействия перехвату паролей

2.1 Противодействие раскрытию и угадыванию пароля

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

Меры противодействия раскрытию сводятся к следующему:

* разъяснение специфики существующих угроз;

* строгая политика безопасности;

* регулярная смена паролей;

* индивидуальные пароли;

* секретные методы ввода и хранения паролей;

* легко запоминающиеся пароли.

2.2 Противодействие пассивному перехвату

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

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

Предположим: заданы пароль ри уникальный идентификатор пользователя id. Для получения доступа пользователь (или злоумышленник) вводит идентификатор id и некоторый пароль р'. Вычисленное значение хэш-функции от введенного пароля q' = h(p'} и идентификатор id передаются проверяющему. В базе данных проверяющего для каждого id содержится значение q = h(p). В случае q' = q проверяющий заключает, что введенный пароль р1 соответствует истинному р. Суть механизма защиты -- знание q не позволяет просто определить р (требуется обратить хэш-функцию, а это вычислительно-трудоемкая задача).

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

Будет ли раскрыт пароль, зависит от объема данных, полученных в результате мониторинга запросов на предоставление доступа, и от того, насколько выбранное распределение вероятностей для р соответствует реальному. Недостаток может быть устранен простым изменением схемы защищенных паролей (рис.IX.2).

В предлагаемом варианте хэш-функция вычисляется не от пароля, а от конкатенации пароля и идентификатора:

q =h(p + id] иq' = h(p' + id),

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

2.3 Защита при компрометации проверяющего

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

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

Аналогичная паролная схема применяется вОС UNIX™ [132]. (В ОС UNIX™ помимо идентификатора и пароля при вычислении хэш-функции используется уникальное для каждого идентификатора случайное число, что обеспечивает дополнительную устойчивость к табличной атаке.)Данная схема имеет очевидный недостаток. При удаленном вводе пароля возникает риск пассивного перехвата. Введение дополнительной хэш-функции (рис. IX.4) позволяет частично уменьшить риск, одновременно обеспечивается защита в случае компрометации проверяющего. Схема сочетает достоинства вариантов, представленных на рис. IX.2 и IX.3. Проверяющий сохраняет значение

г = hz(q + id), где q = hi(p + id).

При этом хэш-функции h1и h2 могут быть как одинаковыми, так и различными.

Дополнительная задержка при проверке -- еще одно достоинство рассмотренных схем -дает возможность снизить продуктивность угадывания паролей.

2.4 Противодействие несанкционированному воспроизведению

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

Идея сводится к введению дополнительной хэш-функции h^(x). Как и в рассмотренных выше случаях, после ввода пароля и идентификатора вычисляется значениеq', затемq' и некоторое числоt (смысл которого будет разъяснен ниже) поступают на вход /»з- Вычисленное в результате значение г' вместе с идентификатором id и числом t передается проверяющему, который вычисляет г =hz(q + t) и сравнивает с принятым г'. Положительное решение о предоставлении доступа принимается при г = г'.

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

Отметим, что рассмотренная схема все еще уязвима с точки зрения компрометации проверяющего. Зная q и id, злоумышленник может вычислить подходящее значение t и получить несанкционированный доступ.

2.5 Одноразовые пароли

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

* общий для легального пользователя и проверяющего список случайных паролей и надежный механизм их синхронизации;

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

* механизм временных меток на основе системы единого времени.

2.6 Метод «запрос-ответ»

Решение многих задач разграничения доступа основано на методе «запрос-ответ».

Смысл метода заключается в следующем.

Запрашивающий генерирует некоторое случайное число и передает его противоположной стороне. Ответ в виде криптографического преобразования заданного числа используется для принятия решения о предоставлении доступа. Например, управление доступом в компьютер может осуществляться следующим образом. На первом шаге в ответ на запрос компьютера (login) пользователь вводит свое имя, далее компьютер. проверив полномочия доступа на уровне списка имен, выдает запрос в виде семизначного числа. На втором шаге пользователь вводит запрос и секретный PIN-код в персональное устройство. Преобразование сводится к конкатенации запроса и PIN-кода с последующим шифрованием на секретном ключе устройства. На третьем шаге в ответ на запрос компьютера (password) пользователь вводит первые семь цифр результата шифрования.

Критерием для принятия решения о предоставлении доступа является совпадение введенного семизначного пароля и числа, хранящегося в таблицах доступа компьютера.

Метод «запрос-ответ» гарантирует надежную защиту от несанкционированного воспроизведения. Недостаток метода -- усложнение протокола обмена между легальным пользователем и проверяющим.

Заключение

В заключение выделяю основные требования к созданию паролей в информационных системах:

1. Пароль не должен быть коротким.

Иметь пароль менее 8 символов вообще нежелательно, а ещё лучше, чтобы пароль содержал 10-12 символов или больше.

2. Пароль не должен содержать только цифры или только буквы (особенно повторяющиеся). Лучше всего, когда буквы и цифры чередуются, а ещё лучше, если в пароль добавляются специальные символы или знаки препинания.

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

5. Пароль должен быть бессмысленным, поэтому лучше отказаться от пароля, который представляет собой любое существующее словарное слово (на любом языке).

6. Не использовать «секретные вопросы», ответы на которые можно легко узнать или подобрать.

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

8. Не держать пароли у всех на виду.

9. Не xранить пароли в Интернете или на компьютере в виде текстового файла.

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

10. Не хранить пароли с помощью встроенных в браузер «хранителей паролей».

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

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

11. Делать копии паролей.

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

12. Не вводить пароли в посторонних программах, на посторонних сайтах, а также не отсылайте пароли по почте (даже по запросу от службы поддержки или администрации сайта). Администрация НАСТОЯЩЕГО серьезного сайта никогда не потребует пароль, поэтому если вы получили подобный запрос, то это скорее всего работа мошенников.

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

14. Периодически менять пароли (особенно если пользовались паролем за чужим компьютером). Чем надежнее пароль, тем дольше можно его использовать. Надёжный пароль из 12-14 символов, составленный с учетом описанных выше рекомендаций можно не менять несколько лет.

Список литературы

1. Information technology - Security techniques - Evaluation criteria for IT security - Part 1: Introduction and general model. - ISO/IEC 15408-1.1999.

2. Information technology - Security techniques - Evaluation criteria for IT security - Part 2: Security functional requirements. - ISO/IEC 15408-2.1999.

3. ГОСТ Р ИСО/МЭК 15408-1-2002. Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Часть 1. Введение и общая модель. - М.: ИПК Издательство стандартов, 2002

4. ГОСТ Р ИСО/МЭК 15408-2-2002. Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Часть 2. Функциональные требования безопасности. - М.: ИПК Издательство стандартов, 2002

5. В.Б. Бетелин, В.А. Галатенко - Информационная (компьютерная) безопасность с точки зрения технологии программирования. - Труды 4-й Ежегодной конференции консорциума ПрМ "Построение стратегического сообщества через образование и науку". с. 38-44. - М.: МГУ им. М.В. Ломоносова, 2001

6. А.П. Трубачев , М.Ю. Долинин , М.Т. Кобзарь , А.А. Сидак , В.И. Сороковиков - Оценка безопасности информационных технологий. Под общей редакцией В.А. Галатенко. - М.: СИП РИА, 2001

7. А. Таранов, В. Цишевский - Java в три года. - Jet Info,11-12, 1998

8. Электронный ресурс в области IT, «Ситифорум», http://citforum.ru/security/criteria/

9. Электронный ресурс национального открытого университета ИНТУИТ, http://www.intuit.ru/studies/courses/30/30/lecture/947

10. Электронный ресурс свободной энциклопедии «Википедиа», https://ru.wikipedia.org/wiki/Смарт-карта

11. Галатенко В.А. Информационная безопасность - практический подход. Под ред. В.Б. Бетелина. -- М.: Наука, 1998

12. В. Галатенко , М. Макстенек , И. Трифаленков -- Сетевые протоколы нового поколения -- Jet Info, 7-8, 1998

Размещено на Allbest.ru


Подобные документы

  • Определение и анализ сущности брутфорса – одного из популярных методов взлома паролей на серверах и в различных программах. Характеристика клавиатурного шпиона на базе драйвера. Рассмотрение основных программ для поиска и удаления клавиатурных шпионов.

    курсовая работа [100,9 K], добавлен 03.08.2017

  • Знакомство с возможностями перехвата пароля при аутентификации в почтовых системах. Характеристика почтовой программы "The Bat!", анализ способов настройки и проверки работоспособности. Рассмотрение распространенных методов защиты от перехвата пароля.

    контрольная работа [1,1 M], добавлен 19.05.2014

  • Определение энтропии как меры стойкости паролей, способ противодействия их взлому. Вычисление веса и информационной емкости пароля с помощью SeaMonkey, Password Strength Tester. Алгоритм работы дежурного и вспомогательного анализаторов от Microsoft.

    курсовая работа [632,8 K], добавлен 18.06.2011

  • Классификация методов защиты информации по стоимости, распространенности, предотвращению взлома; классы, описание систем: программные, электронные ключи; смарт-карты, USB-токены, защищенные флэш-накопители, персональные средства криптографической защиты.

    реферат [34,7 K], добавлен 12.05.2011

  • Проблемы использования паролей на предприятии. Общие понятия и технологии идентификации и аутентификации. Принцип работы и структура программного средства SecureLogin от компании ActiveIdentity. Автоматическая генерация пароля, фишинг и фарминг.

    курсовая работа [2,5 M], добавлен 22.01.2015

  • Защита от несанкционированного доступа к информации: биометрическая и с использованием паролей. Физическая защита данных на дисках. Понятие вредоносных и антивирусных программ. Компьютерные вирусы, сетевые черви, троянские программы и защита от них.

    презентация [2,4 M], добавлен 07.12.2014

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

    курсовая работа [39,0 K], добавлен 21.03.2011

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

    курсовая работа [52,3 K], добавлен 13.06.2012

  • Анализ основных атак на протокол TLS и определение методов противодействия этим атакам. Разработка метода перехвата и расшифровки трафика, передаваемого по протоколу HTTPS. Расшифровка передаваемых данных в режиме, приближенному к реальному времени.

    статья [1013,4 K], добавлен 21.09.2017

  • Пути несанкционированного доступа, классификация способов и средств защиты информации. Анализ методов защиты информации в ЛВС. Идентификация и аутентификация, протоколирование и аудит, управление доступом. Понятия безопасности компьютерных систем.

    дипломная работа [575,2 K], добавлен 19.04.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.