ЛАБОРАТОРНАЯ РАБОТА № 1 ИССЛЕДОВАНИЕ МЕТОДОВ ПАРОЛИРОВАНИЯ 1 Цель работы Целью работы является исследование защищенности различных методов паролирования. 2 Теоретическая часть 2.1 Идентификация и аутентификация субъектов и объектов Под управлением доступом понимается процесс регулирования использования ресурсов вычислительной системы (ВС). Управление доступом включает следующие задачи: идентификацию пользователей, персонала, устройств и ресурсов ВС; аутентификацию субъектов и объектов, допускаемых к использованию ресурсов ВС; проверку полномочий субъектов на доступ к защищаемым ресурсам; регистрацию обращений к защищаемым ресурсам; реакцию на несанкционированный доступ (НСД). Для установления подлинности субъектов и объектов системы, прежде всего, все они должны быть идентифицируемы, т.е. иметь уникальные имена в виде зарегистрированных в системе идентификаторов. Идентификация субъекта (объекта) представляет собой присвоение ему уникального имени (идентификатора). Когда какой-либо субъект обращается к ресурсам системы, необходимо установить его подлинность или опознать его. Процесс установления подлинности в литературе используются также термины "авторизация", "аутентификация", "опознание". Установление подлинности субъекта (объекта) заключается в подтверждении того, что обратившийся субъект (вызываемый объект) является именно тем, которому разрешено участвовать в данном процессе или выполнять данные действия. Термин "установление подлинности" употребляется в отношении пользователей (людей), технических средств (терминалов или компьютеров) или объектов — программ, сетевых объектов или автоматизированных процессов, таких как пакетные задания или RJE (Remote Job Entry - удаленный ввод заданий). В зависимости от сложности установления подлинности различают три основные группы операций: простое, усложненное и особое установление подлинности. Простое установление подлинности сводится, как правило, к сравнению предъявленного кода (характеристики) с эталонным кодом, который хранится в памяти устройства, выполняющего установление подлинности. При усложненном установлении подлинности система требует от пользователя ввода дополнительной информации. Усложненное установление подлинности обычно осуществляется в режиме диалога. Особое установление подлинности, кроме использования методов простого и усложненного установления подлинности, использует специальную 2 совокупность опознавательных характеристик, которая выбирается для обеспечения надежной аутентификации. Для установления подлинности субъектов используются различные опознавательные характеристики. Классификация характеристик, применяемых для установления подлинности субъектов, может иметь следующий вид. Биометрическая (персональная): квазистатические (отпечатки пальцев, строение лица, сетчатка глаза, геометрия руки, строение кровеносных сосудов) и квазидинамические (пульс, речь, почерк, клавиатурный почерк, баллистокардиограмма). Атрибутивная: карты (фото, магнитные, с электронным кодированием, голографические), документы (пропуска, удостоверения, идентификационные карты) и другие (ключи, жетоны, опознавательные знаки). Основанная на знаниях: различаемая информация (изображения, специальные символы) и хранимая информация (коды; пароли; личные номера; персональные данные; данные, задаваемые пользователем). Приведем примеры аутентификации. Система аутентификации пользователей MVS (Multiple Virtual Storage). Когда конечный пользователь делает заявку о доступе к защищенной системе, например, СА-Тор Secret, то его ACID (Access-Computer ID - идентификатор доступа к компьютерной сети) считается утвержденным, если он был внесен в базу данных системы защиты. В этом случае (данный АСID указывает на существующего пользователя) конечному пользователю предлагается ввести пароль. Если пароль правильный, предоставляется доступ к системе. Если же АСID не подтверждается (пользователь не определен), конечному пользователю может быть отказано в доступе к СА-Тор Secret. Однако в зависимости от того, как была инсталлирована эта система, возможен неокончательный отказ. Пользователь может быть отправлен к АСID по умолчанию и получить разрешение на лимитированный доступ к системе. Система аутентификации пользователей VMS (Virtual Memory Storage). При входе в систему предоставляется начальный Доступ. Вход является начальным процессом вывода на экран, позволяющим системе дать пользователю пробный доступ к ней. Во время входа в систему вы должны доказать, что являетесь легальным пользователем, т.е. пользователем, внесенным в UAF (User Authentication File— файл аутентификации пользователей). После этого вы (пользователь) должны ввести свое имя и пароль. Разные классы входов контролируют все возможные виды доступа, независимо от того, интерактивные они или нет. Аутентификация машин - подразумевает проверку конкретного терминала или машины, подключенных к компьютеру. Для этого применяется система паролей, закрепленных за адресами аппаратного обеспечения, адресами узлов сетей, линиями связи терминалов, а также за динамически присваиваемыми адресами программного обеспечения. Проверка машин является важнейшей составной частью концепции доверенного узла (trusted node) в DCE (Distributed Computing Environment распределенная компьютерная среда). Аутентификация программ и других процессов связана с проверкой программ и процессов, для которых запрашиваются системные ресурсы, такие как очереди печати, разделы пакетных заданий, сетевые службы или ресурсы RJE. 3 Типичным примером простой и распространенной системы идентификации является система "ключ—замок", в которой владелец ключа является объектом установления подлинности. Но ключ можно потерять, его можно похитить или снять с него копию, так как идентификатор личности физически от него отделен. Система "ключ—замок" имеет локальное применение. Однако в сочетании с другими системами аутентификации и в условиях пониженных требований она применяется до сих пор. Наибольшее распространение для установления подлинности в наше время получили методы паролирования. Существует несколько методов паролирования, но наиболее распространенным является метод простого ввода пароля, когда лицу или другому объекту присваивается уникальное имя и пароль, значение которого хранится в вычислительной системе. При входе в вычислительную систему пользователь вводит через терминал свой код пароля, вычислительная система сравнивает его со значением, хранящимся в своей памяти, и при совпадении кодов предоставляет доступ к защищенной функциональной задаче, а при несовпадении — отказывает в нем. Схема реализации аутентификации основывается на том, что запрашивающий доступ пользователь обязан обладать определенной специфической информацией, способностью или личными атрибутами. Обычно этот процесс имеет форму пароль-отзыв и включает в себя пароль, использование приборов типа интеллектуальных карт (smart card) и интеллектуальных опознавательных знаков (smart token). Обладание и предоставление правильной информации открывает частному лицу доступ к системе обработки данных. Метод применения интеллектуальных карт и интеллектуальных опознавательных знаков усиливает механизм аутентификации, ибо в этом случае пользователь должен не только знать пароль, но еще и обладать карточкой или знаком. Широко используемыми устройствами для проведения аутентификации являются интеллектуальные карты и интеллектуальные опознавательные знаки. Эти приборы повышают действенность процесса аутентификации, поскольку в случае их применения санкционированные пользователи располагают дополнительной секретной информацией или уникальными расчетными возможностями. Интеллектуальные карты (smart card) — это прибор пассивного типа, для работы с которым необходимо отдельно считывающее устройство. Интеллектуальные опознавательные знаки (smart token) — активное устройство, укомплектованное клавиатурой и дисплеем. Оба прибора функционируют в составе протокола пароль-отзыв, совместно с программным обеспечением аутентификации системы. При использовании удаленного доступа дополнительным средством аутентификации служит процедура обратного дозвона. 2.2 Методы паролировання Методы паролирования требуют, чтобы пользователь ввел строку символов (пароль) для сравнения с эталонным паролем, хранящимся в памяти системы. Если пароль соответствует эталонному, то пользователь может работать с системой. При рассмотрении различных методов паролирования будем пользоваться следующими 4 обозначениями: С — сообщение системы; П — сообщение, вводимое пользователем; ОК — сообщение системы о правильном установлении подлинности. Метод простого ввода пароля состоит во вводе пользователем одного пароля с клавиатуры. Паролем является слово "ПАРОЛЬ": С: Введите пароль П: ПАРОЛЬ С: ОК Метод выборки символов состоит в запросе системой определенных символов пароля, выбираемых случайным образом. Паролем является слово "ПАРОЛЬ": С: Введите пароль: 3, 5 П: РЛ С: ОК Метод выборки символов не позволяет нарушителю определить значение пароля по однократному наблюдению вводимых пользователем символов. Метод паролей однократного использования предполагает наличие списка из N паролей, хранящегося в системе. При каждом обращении к системе пользователь вводит очередной пароль, который после окончания работы вычеркивается системой из списка. Этот способ весьма эффективен, но не всегда удобен. Он используется при относительно редких обращениях или передаче специальной информации. Пароли однократного использования могут применяться также для проверки подлинности сообщения об окончании обслуживания пользователя или завершении его работы на ЭВМ. В этом случае уменьшается вероятность использования системы опытным нарушителем, который может послать пользователю ложное сообщение об отключении ЭВМ и продолжать с ней работу от его имени. Схема применения паролей однократного использования имеет следующие недостатки: - пользователь должен помнить или иметь при себе весь список паролей и следить за текущим паролем; - неоднозначность пароля. Например, в случае нештатного окончания работы пользователя (ошибка в процессе передачи) система может считать пароль уже использованным, и пользователь оказывается в затруднительном положении: он не знает, следует ему передать тот же самый пароль или послать следующий; - если пароли однократного использования передаются с терминалов, а сами пароли были получены из линейной последовательности псевдослучайных чисел X1 , Х2 , ... , ХК , они могут быть перехвачены определенными ловушками. Описываемые далее методы "запрос—ответ" и "рукопожатия" в некоторых случаях обеспечивают большую степень безопасности, но вместе с тем являются более сложными и требующими дополнительных затрат времени. Поэтому почти всегда необходимо искать компромисс между требуемой степенью безопасности и простотой использования. При сложном использовании пользователь вынужден 5 искать пути упрощения процедуры и в итоге найти их, что приведет к снижению эффективности средств защиты. Метод групп паролей (метод "запрос-ответ") основывается на том, что система для каждого пользователя может потребовать пароли из двух групп. Первая группа включает пароли, которые являются стандартными ответами на общие для всех пользователей вопросы, например, имя, адрес, номер телефона и т.п. Вторая группа включает пароли — ответы на ориентированные на пользователя вопросы, которые устанавливаются администратором системы при регистрации пользователя для работы с системой. Эти вопросы сформулированы персонально для каждого пользователя, например, любимый цвет, девичья фамилия матери и т.п. При каждом обращении пользователя система случайно выбирает несколько вопросов из каждой группы. Пользователь должен дать правильный ответ на все вопросы, чтобы получить разрешение на доступ к информации. Также возможны различные вариации данного метода. Недостатком рассмотренного метода является то, что системе потребуется значительный объем памяти для хранения вопросов и ответов для большого числа пользователей. Метод функционального преобразования (метод «рукопожатия») требует, чтобы пользователь доказал свою подлинность с помощью корректной обработки алгоритмов: предполагается, что пользователю при регистрации для работы в системе сообщается некоторое преобразование, которое он может выполнить в уме. Паролем в этом случае является результат такого преобразования. Преобразование У = X1 + 2*Х2 С: Введите пароль: 4, 6 П: 16 С: ОК Для усложнения вскрытия пароля в методе функционального преобразования в качестве аргументов могут использоваться числа месяца, часы суток или их комбинации. Данный метод может быть выполнен как между двумя ЭВМ, так и между пользователем и ЭВМ. Так, одной из возможных стратегий действий нарушителя в ИВС является подключение к каналу связи. В этом случае нарушитель может имитировать механизм установления подлинности, что позволит ему получить пароль пользователя и доступ к его данным. Для предупреждения подобных действий нарушителя пользователь должен убедиться в подлинности системы, с которой он начинает работать. Одним из методов решения этой задачи является описанная процедура "рукопожатия". Для осуществления процедуры рукопожатия выбирается нетривиальное преобразование вида Y=F(x,k), где x— аргумент, а k— коэффициент. В качестве аргумента преобразования можно использовать элементы даты, времени и т.д. Преобразования Y известно только пользователям и ЭВМ, и должно сохраняться в тайне. Пользователь вместе с запросом на подключение к системе посылает выбранное им значение x. Получив значение x вместе с идентификатором пользователя, система вычисляет Y=F(k, x) и посылает его пользователю вместе с запросом о вводе пароля. Пользователь вычисляет или имеет вычисленное заранее значение Y. Если значения Y пользователя и системы совпадают, то режим опознания системы заканчивается, и пользователь может вводить пароль. 6 После подтверждения правильности пароля пользователя считается, что рукопожатие состоялось. Аналогичным образом осуществляется установление подлинности ЭВМ ИВС при необходимости обмена данными между ними. Проверка подлинности взаимодействующих субъектов и объектов системы может производиться не только перед началом сеанса, но и в ходе него. Такие проверки могут осуществляться через определенные промежутки времени, после определенного количества переданных данных и т.п. Подобный метод может применяться при передаче пароля по каналам связи. Так, в Novell Netware пароли пользователей локальной сети обычно хранятся на сервере в виде 128-битных значений, получаемых в результате применения хэшфункции к паролю. Это хэш-значение тщательно охраняется и не передается по сети в открытом виде при аутентификации пользователя на сервере. Вместо этого используется стандартная схема "запрос—отклик": сервер посылает случайную последовательность, рабочая станция шифрует ее с вычисленным хэш—значением введенного пароля и отсылает обратно, сервер делает то же самое с имеющимся у него хэш-значением, и в случае совпадения двух строк пользователь успешно регистрируется в системе. При использовании удаленного доступа, например, основанного на протоколе РРР (point-to-point protocol - межузловой протокол), применяются два основных метода аутентификации паролей: протокол PAP (Password Authentication Protocol - протокол аутентификации паролей) и CHAP (Challenge Handshake Authentication Protocol протокол аутентификации с запросом соединения). РАР известен как самый распространенный метод аутентификации, при котором имя пользователя и пароль сохраняются на сервере, где они сверяются с информацией из базы данных. Как правило, таблицы паролей на сервере зашифрованы. Для подтверждения полученного от пользователя пароля сервер зашифровывает его таким же образом, как зашифрованы все пароли, хранящиеся в его базе данных. Если полученный результат совпадает с предложенным базой данных макетом, пользователь аутентифицируется. Главной проблемой, возникающей в связи с применением РАР, является то, что пароль, введенный пользователем, передается в незашифрованном виде, следовательно, этот метод делает пароль уязвимым для подслушивания во время его прохождения по каналам связи. Метод CHAP пытается избежать недостатков описанного выше метода РАР, для чего отказывается от пересылки паролей в незашифрованном виде. CHAP - это метод типа "пароль-отзыв", осуществляемый в два этапа. Сервер отсылает клиенту, желающему получить доступ через коммутируемую линию, случайный ключ (пароль), с помощью которого клиент зашифровывает свой пароль и отсылает его в зашифрованном виде обратно. Сервер находит имя пользователя в базе данных и получает его пароль, после чего он зашифровывается тем же самым ключом. Результат этой шифровки сравнивается с отзывом пользователя. Этот метод защищает пароль от подслушивания. Каждый раз, когда пользователь входит в систему, система безопасности генерирует новый ключ, поэтому один и тот же пароль всегда будет зашифрован по-разному. Изъян данного метода заключается в том, что, для того чтобы сделать возможным подтверждение пользовательского отзыва посредством копирования его шифров, пароли должны храниться в базе данных в форме простого текста. 7 Хотя метод CHAP и стремится к большей безопасности, чем РАР, в данном случае мы просто имеем дело с заменой типа безопасности. Несмотря на то, что пароль не пересылается в незашифрованном виде, база данных паролей в сервере остается весьма уязвимой. Таким образом, применяя метод РАР, вы получаете безопасность базы данных ценой безопасности передачи информации, а при использовании CHAP - жертвуете безопасностью базы данных ради безопасности при передаче. 3 Порядок выполнения работ Разработать программу имитации процедуры установления подлинности нескольких субъектов, реализующую метод простого ввода пароля и один из следующих методов паролирования по вариантам. 1 Выборка символов с фиксированным размером выборки: Таблица 1 Вариант Длина пароля Размер выборки 2 1 7 3 2 8 4 3 7 4 4 8 3 5 7 2 Выборка символов со случайным размером выборки: Таблица 2 Вариант Длина пароля Размер выборки 1 8 3-6 2 7 2-4 3 8 2-5 4 7 3-5 5 8 2-6 3 Пароли однократного использования. 4 Группы паролей. 5 Функциональное преобразование: Таблица 3 Вариант 1 2 3 4 5 Преобразование -4а+2b- 2a + 2b a-2b+c a-3b 3a+b+2с с Функция (mod13) int/11 (mod7) int/7 (mod9) 4 Требования к отчету 1 Отчет должен оформляться в электронном и печатном виде на листах формата А4 в соответствие с требованиями ЕСКД. 2 Отчет должен содержать листинг программы, блок-схему, описание основных переменных, порядок работы с программой. 3 Анализ и расчет вероятности защищенности для реализованных 8 4 методов при прямом подборе пароля, в том числе для случая, если противная сторона перехватывает сеансы Вашей аутентификации. Построить графические зависимости. Выводы по проделанной работе. 5 Контрольные вопросы 1 Что такое идентификация и установление подлинности? 2 Чем различаются простое, усложненное и особое установления подлинности? Какие методы паролирования Вы знаете? 3 Какие правила должны соблюдаться при применении аутентификации на основе паролей? 4 В чем заключаются основные достоинства и недостатки методов PAP и CHAP? 9 ЛАБОРАТОРНАЯ РАБОТА № 2 ЗАЩИТА ИНФОРМАЦИИ С ПОМОЩЬЮ ПАРОЛЯ 1 Цель работы Целью работы является исследование защиты с применением пароля, а также исследование методов противодействия атакам на пароль. 2 Теоретическая часть 2.1 Атаки на пароль На сегодняшний день пароль является наиболее приемлемым и, потому, наиболее часто используемым средством установления подлинности, основанным на знаниях субъектов доступа. Защищенность пароля при его подборе зависит, в общем случае, от скорости проверки паролей и от размера полного множества возможных паролей, которое, в свою очередь, зависит от длины пароля и размера применяемого алфавита символов. Существуют два метода их вскрытия паролей: атака полным перебором и атака по словарю. В связи с резким ростом вычислительных мощностей атаки полным перебором имеют гораздо больше шансов на успех, чем раньше. Если для системы UNIX функция crypt(), которая отвечает за хэширование паролей, была реализована так, что выполнялась почти 1 секунду на машине класса PDP, то за двадцать лет скорость ее вычисления увеличилась в 15000 раз (!). Поэтому если раньше хакеры (и разработчики, которые ограничили длину пароля 8 символами) и представить себе не могли полный перебор, то сегодня такая атака приведет к успеху за 80 дней. Скорость перебора паролей для различных криптосистем приведена в таблице 1, Таблица 4 Скорость перебора паролей на компьютере Pentium/166 Криптосистема ARJ 2.60 LM-хэш RC5-56 бит Novell Netware 3.x MS Office 97 UNIX-crypt() Скорость, паролей/сек 350000 190000 150000 30000 20,000 15000 10 RAR2.0 UNIX-MD5 1000 500 Однако вернемся на несколько лет назад, когда вычислительной мощности для полного перебора всех паролей не хватало. Тем не менее, хакерами был придуман остроумный метод, основанный на том, что в качестве пароля человеком выбирается существующее слово или какая -либо информация о себе или своих знакомых (имя, дата рождения и т.п.). Ну, а поскольку в любом языке не более 100000 слов, то их перебор займет весьма небольшое время. От 40 до 80% существующих паролей может быть угадано с помощью простой схемы, называемой "атакой по словарю". Кстати, до 80% этих паролей может быть угадано с использованием словаря размером всего 1000 слов! Даже вирус Морриса в 1988 г. применял такой способ, тем более, что в UNIX «под рукой» часто оказывается файл-словарь, обычно используемый программами-корректорами. Что же касается «собственных» паролей, то файл /etc/passwd может дать немало информации о пользователе: его входное имя, имя и фамилию, домашний каталог. Пусть сегодня пользователи уже понимают, что выбирать такие пароли нельзя, но, видимо, никогда эксперты по компьютерной безопасности не дождутся использования таких простых и радующих душу паролей, как 34jXs5U@bTa!6. Поэтому даже искушенный пользователь хитрит и выбирает такие пароли, как hopel. user!997, pAsSwOD, toor, roottoor, parol, gfhjkm, asxz. Видно, что все они, как правило, базируются на осмысленном слове и некотором простом правиле его преобразования: прибавить цифру, прибавить год, перевести через букву в другой регистр, записать слово наоборот, прибавить записанное наоборот слово, записать русское слово латинскими буквами, набрать русское слово на клавиатуре с латинской раскладкой, составить пароль из рядом расположенных на клавиатуре клавиш и т.п. Поэтому не надо удивляться, если такой "хитрый" пароль будет вскрыт хакерами — они не глупее самих пользователей, и уже вставили в свои программы те правила, по которым может идти преобразование слов. В самых «продвинутых» программах (John The Ripper, Password Cracking library) эти правила могут быть программируемыми и задаваться с помощью специального языка самим хакером. Приведем пример эффективности такой стратегии перебора. Во многих книгах по безопасности предлагается выбирать в качестве надежного пароля два осмысленных слова, разделенных некоторым знаком (например, good!password). Подсчитаем, за сколько времени в среднем будут сломаны такие пароли, если такое правило включено в набор программы-взломщика (пусть словарь 10000 слов, разделительными знаками могут быть 10 цифр и 32 знака препинания и специальных символа, машина класса Pentium со скоростью 15000 crypt/сек): 10000*(32+10)*10000/15000*2=140000 секунд или менее 1,5 дня! Чем больше длина пароля, тем большую безопасность будет обеспечивать система, так как потребуются больше усилия и времени для его отгадывания. Это обстоятельство можно представить в терминах ожидаемого времени раскрытия пароля или ожидаемого безопасного времени. Ожидаемое безопасное время (Тб) — половина произведения числа возможных паролей и 11 времени, требуемого для того, чтобы попробовать каждый последовательности запросов. Представим это в виде формулы AS t Тб = , 2 пароль из (1) где t— время, требуемое на попытку введения пароля, равное E/R; Е — число символов в передаваемом сообщении при попытке получить доступ (включая пароль и служебные символы); R — скорость передачи (символы/мин) в линии связи; s — длина пароля; А — число символов в алфавите, из которых составляется пароль. Если после каждой неудачной попытки подбора автоматически предусматривается десятисекундная задержка, то безопасное время резко увеличивается. Если в дополнение к R, Е и А примем, что Р — априорная вероятность того, что соответствующий пароль может быть раскрыт посторонним лицом, М — период времени, в течение которого могут быть предприняты эти попытки (в месяцах при работе 24 час/день), то получим известную формулу Андерсона: RM S 4,32 104 EP A . (2) Если R, Е, М и А фиксированы, то каждое значение s будет давать различную вероятность Р правильного его отгадывания. Если мы хотим построить систему, где незаконный пользователь имел бы вероятность отгадывания правильного пароля не большую, чем Р, то нам следует выбрать такое значение s, которое удовлетворяло бы выражению (2). Нетрудно заметить, что в выражениях (1) и (2) величина s является показателем возведения в степень и, следовательно, оказывает большое влияние на безопасное время и вероятность раскрытия пароля. Поэтому при использовании аутентификации на основе паролей в защищенной системе должны соблюдаться следующие правила: 1) не позволяются пароли меньше 6 - 8 символов; 2) пароли должны проверяться соответствующими контроллерами; 3) символы пароля при их вводе не должны появляться в явном виде; 4) после ввода правильного пароля выдается информация о последнем входе в систему; 5) ограничивается количество попыток ввода пароля; 6) вводится задержка времени при неправильном пароле; 7) при передаче по каналам связи пароли должны шифроваться; 8)пароли должны храниться в памяти только в зашифрованном виде в файлах, недоступных пользователям; 9) пользователь должен иметь возможность самому менять пароль; 10) администратор не должен знать пароли пользователей, хотя может их менять; 11) пароли должны периодически меняться; 12 12) устанавливаются сроки действия паролей, по истечении которых надо связаться с администратором. 2.2 Проблема выбора пароля Выбор длины пароля в значительной степени определяется развитием технических средств, их элементной базы и ее быстродействием. В настоящее время широко применяются многосимвольные пароли, где S>10. В связи с этим возникают вопросы: как и где его хранить и как связать его с аутентификацией личности пользователя? На эти вопросы отвечает комбинированная система паролей, в которой код пароля состоит из двух частей. Первая часть состоит из 3 – 4-х десятичных знаков, если код цифровой, и более 3 – 4-х, если код буквенный, которые легко запомнить человеку. Вторая часть содержит количество знаков, определяемое требованиями к защите и возможностями технической реализации системы, она помещается на физическом носителе и определяет ключ-пароль, расчет длины кода которого ведется по указанной выше методике. В этом случае часть пароля будет недоступна для нарушителя. Однако при расчете длины кода пароля не следует забывать о том, что при увеличении длины пароля нельзя увеличивать периодичность его смены. Коды паролей необходимо менять обязательно, так как за большой период времени увеличивается вероятность их перехвата путем прямого хищения носителя, снятия его копии, принуждения человека. Выбор периодичности необходимо определять из конкретных условий работы системы, но не реже одного раза в год. Причем желательно, чтобы дата замены и периодичность должны носить случайный характер. Для проверки уязвимости паролей используются специальные контроллеры паролей. Например, известный контроллер Кляйна осуществляет попытки взлома пароля путем проверки использования в качестве пароля входного имени пользователя, его инициалов и их комбинаций, проверки использования слов из различных словарей, начиная от наиболее употребительных, проверки различных перестановок слов, а также проверки слов на языке пользователяиностранца. Проверка паролей в вычислительных сетях с помощью контроллера Кляйна показала довольно высокие результаты — большинство пользователей используют простые пароли. Показателен пример, когда контроллер Кляйна позволил определить 100 паролей из 5 символов, 350 паролей из 6 символов, 250 паролей из 7 символов и 230 паролей из 8 символов. Приведенный анализ позволяет сформулировать следующие правила снижения уязвимости паролей, направленные на противодействие известным атакам на них: - расширяйте применяемый в пароле алфавит — используйте прописные и строчные буквы латинского и русского алфавитов, цифры и знаки; - не используйте в пароле осмысленные слова; - не используйте повторяющиеся группы символов; 13 - не применяйте пароли длиной менее 6-8 символов, так как запомнить их не представляет большого труда, а пароль именно нужно запоминать, а не записывать. По той же причине не имеет смысла требовать длину неосмысленного пароля более 15 символов, так как запомнить его нормальному человеку практически невозможно; - не используйте один и тот же пароль в различных системах, так как при компрометации одного пароля пострадают все системы; - проверяйте пароли перед их использованием контроллерами паролей. Для составления пароля можно дать рекомендации, пользоваться которыми надо очень осторожно: - выберите несколько строк из песни или поэмы (только не те, которые Вы повторяете первому встречному) и используйте первую (или вторую) букву каждого слова, при этом пароль должен иметь большую длину (более 15 символов), иначе нужно менять регистры букв, применять латинские буквы вместо русских или наоборот, можно вставлять цифры и знаки; - замените в слове из семи-восьми букв одну согласную и одну или две гласных на знаки или цифры. Это даст вам слово-абракадабру, которое обычно произносимо и поэтому легко запоминается. 2.3 Порядок работы с программой перебора паролей Для исследования защищенности паролей была разработана программа Parol.exe. В качестве объекта исследования выбраны архивы файлов, заархивированных с использованием паролей. Программа предназначена для перебора полного пространства паролей, используемых для защиты архивов, и позволяет выбрать перебираемый алфавит символов паролей, осуществить распараллеливание процесса подбора паролей на нескольких компьютерах, подключение новых архиваторов. Р абота программы основана на использовании стандартных DOS-архиваторов, для которых формируется командная строка разархивирования с генерированным паролем. Необходимо отметить, что некоторые версии архиваторов допускают корректное разархивирование закрытых паролем архивов с помощью нескольких других паролей. Такие ситуации принято относить к так называемым коллизиям. Выбор символов алфавита можно осуществить, используя пункт Символы пароля в меню Настройка. Можно выбирать отдельные символы, устанавливая против соответствующего символа галочку, либо выбирать группы символов, нажав соответствующие кнопки. Подтвердить выбор можно кнопкой ОК. В этом случае выбранные символы будут сохранены в файле abc.txt до следующего изменения. В случае нажатия кнопки Отмена изменения не будут сохранены, а будет использован старый набор символов. Просмотреть список поддерживаемых программой архиваторов можно, используя пункт Типы архиваторов в меню Настройка. Если необходимо внести новый тип архиватора, то это можно сделать добавлением его описания с помощью Блокнота в файл Arx.txt. Имя файла архиватора пишется с новой строки. На следующей строке 14 пишется полная командная строка, необходимая для запуска архиватора. Вместо пароля ставится метка <PAR> (именно в этом виде). Вместо имени вскрываемого файла ставится метка <FN> (также именно в этом виде). Количество машин для вскрытия пароля можно указать, используя пункт Разделение задач в меню Настройка. 3 Порядок выполнения работ 1 Из имеющихся DOS-архиваторов (ARJ, RAR, AIN, LHA, ZIP, TAR, ICE, НА, ARC, РАК, ZOO и т.д.) выявить позволяющие паролировать архивы. 2 Заархивировать с единичной длиной пароля файл с помощью одного из архиваторов по вариантам: 1-RAR, 2-ARJ, 3-ZIP, 4-AIN, 5-BSARC. 3 Используя программу PAROLE, произвести вскрытие пароля на одном компьютере на всем пространстве возможных символов. 4 Используя программу PAROLE, произвести вскрытие пароля на одном компьютере на том пространстве символов, которому принадлежит пароль (прописные или строчные латинские буквы или кириллица, знаки, цифры). 5 Используя программу PAROLE, произвести вскрытие пароля на нескольких компьютерах на всём пространстве символов. 6 Аналогичные действия проделать для большей длины пароля. 7 Исследовать зависимость времени проверки одного пробного пароля от его длины и размера архива. 8 Построить графические зависимости времени вскрытия пароля от его длины. Сравнить полученные графики. Сделать выводы. 9 Оценить среднее время проверки одного пробного пароля. 10 Оценить среднее время, затрачиваемое на подбор пароля. Сравнить с ожидаемым. Сделать выводы. 11 Исследовать возможность коллизий для Вашего архиватора. 4 Требования к отчету 1 Отчет должен оформляться в электронном и печатном виде на листах формата А4 в соответствие с требованиями ЕСКД. 2 Отчет должен включать анализ защищенности пароля в зависимости от его длины и используемого алфавита, а также анализ зависимости времени проверки одного пробного пароля от размера архива и длины пароля. 3 Оценить минимальное количество символов в пароле в зависимости от состава применяемого алфавита так, чтобы пароль нельзя было вскрыть в течение месячной круглосуточной работы компьютера. 4 Предложить способы и методы ускорения раскрытия пароля. 5 Выводы по проделанной работе. 15 5 Контрольные вопросы 1 2 3 4 5 б 7 Какие виды атак на пароль Вы знаете ? Как можно противостоять атаке полным перебором ? Что такое ожидаемое безопасное время ? Как длина пароля влияет на вероятность раскрытия пароля ? Какие рекомендации по составлению паролей Вы можете дать ? Что такое контроллеры паролей ? Что представляют собой коллизии при подборе паролей ? Список литературы 1 Большаков А.А., Петряев А.Б., Платонов В.В., Ухлинов Л.М. Основы обеспечения безопасности данных в компьютерных системах и сетях: учеб. пособие: СПб, 1996. часть 1. Методы, средства и механизмы защиты данных. ——166 с. 2 Мельников В.В. Защита информации в компьютерных системах. — М.:Финансы и статистика; Электронинформ, 1997. — 368 с. 3 Зегжда А.Н., Ивашко A.M. Как построить защищенную информационную систему: В 2 т. — СПб: Мир и семья-95, 1997. — 312с. 4 Герасименко В.А. Защита информации в автоматизированных системах обработки данных; в 2 кн. — М.:Энергоатомиздат, 1994. — 575с. 16 Содержание Лабораторная работа № 1 Исследование методов паролирования ……………….................1 1 Цель работы……………………………………………….......1 2 Теоретическая часть ………………………………….…….. 1 2.1 Идентификация и аутентификация субъектов и объектов……………………………………...…..…......1 2.2 Методы паролирования ……………………….….……..3 3 Порядок выполнения работы ………………………………......7 4 Требования к отчету ……………………………………………7 5 Контрольные вопросы ………………………………………….8 Лабораторная работа № 2 Защита информации с помощью пароля …….…………..............9 1 Цель работы……………………………………….……..........9 2 Теоретическая часть …………………………………………9 2.1 Атаки на пароль…………………………..…….......9 2.2 Проблема выбора пароля ..……………………….12 2.3 Порядок работы с программой перебора паролей..13 3 Порядок выполнения работы ………………….....………....14 4 Требования к отчету …………………………….…………...14 5 Контрольные вопросы ………………………….……………14 Список литературы ………………………………….….………....15