Выберите среди перечисленного способы повышения надежности парольной защиты
доцента кафедры ИВТ Гродненского госуниверситета
канд. техн. наук Ливак Елены Николаевны
Самая распространенная защита компьютерной информации — защита на основе пароля. При реализации парольной защиты вход в систему, запуск приложения, запрос на доступ к данным сопровождается запросом пароля и последующим сравнением введенного пароля с оригиналом.
Пароль представляет собой последовательность символов некоторого алфавита и специальных знаков. Последовательность должна удовлетворять ограничению на наименьшую и наибольшую длину.
Сразу заметим, что парольная защита может быть рекомендована только для использования при защите информации, предназначенной для узкого круга пользователей. При широком использовании, например, программ, защищенных таким образом, очень велика вероятность того, что хотя бы один законный пользователь сообщит пароль злоумышленнику, этого будет достаточно для того, чтобы сделать защищенное приложение общедоступным.
Следует обратить внимание на то, что процесс ввода пароля поддается наблюдению, даже в том случае, если отсутствует режим «эхо». Человек, находящийся рядом с пользователем, вводящим пароль, наблюдая за процессом набора на клавиатуре, может зафиксировать вводимые символы. Кроме того, существует множество специальных программ типа «троянский конь», которые через перехват соответствующего прерывания читают и сохраняют пароли, набираемые на клавиатуре.
Хорошая система защиты организована таким образом, что, во-первых, не позволяет пользователю бесконечно вводить неправильный пароль, а ограничивает число попыток. Во-вторых, между двумя неудачными попытками ввода пароля специально вводится временная задержка с целью уменьшить количество попыток взлома системы защиты за некоторый промежуток времени.
Очевидно, что оригинальный пароль необходимо хранить в месте, доступном защищенному приложению и малодоступном злоумышленнику. Следовательно, основная задача автора, использующего парольную защиту, — как можно лучше «спрятать» оригинальный пароль.
На практике для хранения эталонного пароля используются следующие способы:
1) эталон хранится непосредственно в защищенной программе;
2) эталон хранится в отдельном специально предназначенном файле;
3) эталон хранится в системных областях (в свободных, зарезервированных или редко используемых областях дисков, системных базах данных). Например, при защите Windows -приложений разработчики часто хранят оригинальный пароль в системной базе данных Registry (системный реестр).
Даже начинающим программистам известно, что нельзя хранить пароль в открытом виде.
Так как, например, в случае хранения пароля непосредственно в защищаемой программе злоумышленник может легко найти эталонный пароль, либо просмотрев дамп файла, в котором хранится программа, либо даже с помощью специальной программы, распечатывающей все текстовые строки.
Замечание . Не будем останавливаться на популярной в литературе теме о правилах выбора пароля и его эффективной длине. Будем предполагать, что читателю известны рекомендации по выбору хороших паролей.
В основном авторы защит либо шифруют пароль известными или собственными криптографическими методами, либо применяют хэш-функции (хэш-коды) для преобразования пароля.
Метод хэширования пароля заключается в хранении в качестве эталона не собственно пароля, а результата определенных автором защиты математических преобразований (именно эти преобразования и называются хэш-функцией или хэшированием) над символами пароля. При запуске приложения введенный пользователем пароль подвергается хэшированию и сравнению полученного результата с эталоном.
Предварительно отметим, что в большинстве случаев как защита, основанная на простом хранении пароля, так и на хэшировании пароля, может быть легко «обойдена» злоумышленником. Как любят говорить взломщики, — путем изменения в программе всего лишь одного байта!
Хорошо зарекомендовал себя метод шифрования пароля.
Очевидно, что в случае хранения зашифрованного пароля необходимо особое внимание уделить защите программы от исследования алгоритма шифрования-дешифрования.
Обратим внимание, что позже мы подробно изучим и функции хэширования, и алгоритмы шифрования. Особое внимание будет уделено вопросам надежности использования данных методов.
Подчеркнем, что независимо от вида, в котором хранится оригинальный пароль (открытый, хеш-функция или зашифрованный код), при реализации механизма защиты происходит сравнение пароля, вводимого пользователем, с оригиналом (ключом).
Таким образом, парольная защита относится к методам ключевого сравнения.
Источник
Использование простого пароля
Процедура опознавания с использованием простого пароля может быть представлена в виде следующей последовательности действий:
— пользователь посылает запрос на доступ к компьютерной системе и вводит свой идентификатор;
— система запрашивает пароль;
— пользователь вводит пароль;
— система сравнивает полученный пароль с паролем пользователя, хранящимся в базе эталонных данных системы защиты, и разрешает доступ, если пароли совпадают; в противном случае пользователь к ресурсам компьютерной системы не допускается.
Поскольку пользователь может допустить ошибку при вводе пароля, то системой должно быть предусмотрено допустимое количество повторений для ввода пароля.
В базе эталонных данных пароли, как и другую информацию, никогда не следует хранить в явной форме, а только зашифрованными. При этом можно использовать метод как обратимого, так и необратимого шифрования.
Согласно методу обратимого шифрования, эталонный пароль при занесении в базу эталонных данных зашифровывается по ключу, совпадающему с этим эталонным паролем, а введенный после идентификации пароль пользователя для сравнения с эталонным также зашифровывается по ключу, совпадающему с этим введенным паролем. Таким образом, при сравнении эталонный и введенный пароли находятся в зашифрованном виде и будут совпадать только в случае, если исходный введенный пароль совпадет с исходным. При несовпадении исходного введенного пароля с исходным эталонным исходный введенный пароль будет зашифрован по-другому, так как ключ шифрования отличается от ключа, которым зашифрован эталонный пароль, и после зашифрования не совпадет с зашифрованным эталонным паролем.
Можно выделить следующие основные способы повышения стойкости системы защиты на этапе аутентификации:
— повышение степени не тривиальности пароля;
— увеличение длины последовательности символов пароля;
— увеличение времени задержки между разрешенными попытками повторного ввода неправильно введенного пароля;
— повышение ограничений на минимальное и максимальное время действительности пароля.
Использование динамически изменяющегося пароля
Методы проверки подлинности на основе динамически меняющегося пароля обеспечивают большую безопасность, так как частота смены паролей в них максимальна — пароль для каждого пользователя меняется ежедневно или через несколько дней. При этом каждый следующий пароль по отношению к предыдущему изменяется по правилам, зависящим от используемого метода проверки подлинности.
Существуют следующие методы парольной защиты, основанные на использовании динамически меняющегося пароля:
— методы модификации схемы простых паролей;
— методы идентификации и установления подлинности субъектов и различных объектов;
Наиболее эффективными из данных методов являются функциональные.
Методы модификации схемы простых паролей. К методам модификации схемы простых паролей относят случайную выборку символов пароля и одноразовое использование паролей. При использовании первого метода каждому пользователю выделяется достаточно длинный пароль, причем каждый раз для опознавания используется не весь пароль, а только некоторая его часть. В процессе проверки подлинности система запрашивает у пользователя группу символов под заданным порядковым номерам. Количество символов и их порядковые номера для запроса определяются с помощью датчика псевдослучайных чисел. При одноразовом использовании паролей каждому пользователю выделяется список паролей. В процессе запроса номер пароля, который необходимо ввести, выбирается последовательно по списку или по схеме случайной выборки. Недостатком методов модификации схемы простых паролей является необходимость запоминания пользователями длинных паролей или их списков. Запись паролей на бумагу приводит к появлению риска потери или хищения носителей информации с записанными на них паролями.
Методы идентификации и установления подлинности субъектов и различных объектов. При обмене информацией рекомендуется в любом случае предусмотреть взаимную проверку подлинности полномочий объекта или субъекта. Если обмен информацией производится по сети, то процедура должна выполняться обязательно. Для этого необходимо, чтобы каждому из объектов и субъектов присваивалось уникальное имя. Каждый из объектов (субъектов) должен хранить в своей памяти (недоступной для посторонних лиц) список, содержащий имена объектов (субъектов), с которыми будут производить процессы обмена защищаемыми данными.
Метод «запрос-ответ». При использовании метода «запрос-ответ» в информационной системе заблаговременно создается и особо защищается массив вопросов, включающий в себя как вопросы общего характера, так и персональные вопросы, относящиеся к конкретному пользователю, например, вопросы, касающиеся известных только пользователю случаев из его жизни. Для подтверждения подлинности пользователя система последовательно задает ему ряд случайно выбранных вопросов, на которые он должен дать ответ. Опознание считается положительным, если пользователь правильно ответил на все вопросы. Основным требованием к вопросам в данном методе аутентификации является уникальность, подразумевающая, что правильные ответы на вопросы знают только пользователи, для которых эти вопросы предназначены.
Функциональные методы. Среди функциональных методов наиболее распространенными является метод функционального преобразования пароля. Метод функционального преобразования основан на использовании некоторой функции F, которая должна удовлетворяет установленным требованиям.
Одноразовые пароли
Одноразовый пароль — это пароль, действительный только для одного сеанса аутентификации . Действие одноразового пароля также может быть ограничено определённым промежутком времени. Преимущество одноразового пароля по сравнению со статическим состоит в том, что пароль невозможно использовать повторно. Таким образом, злоумышленник, перехвативший данные из успешной сессии аутентификации, не может использовать скопированный пароль для получения доступа к защищаемой информационной системе. Использование одноразовых паролей само по себе не защищает от атак, основанных на активном вмешательстве в канал связи, используемый для аутентификации (например, от атак типа «человек посередине» ).
Алгоритмы создания одноразовых паролей обычно используют случайные числа. Это необходимо, потому что иначе было бы легко предсказать последующие пароли на основе знания предыдущих. Подходы к созданию одноразовых паролей различны:
· Использующие математические алгоритмы для создания нового пароля на основе предыдущих (пароли фактически составляют цепочку, и должны быть использованы в определённом порядке).
· Основанные на временной синхронизации между сервером и клиентом, обеспечивающей пароль (пароли действительны в течение короткого периода времени)
· Использующие математический алгоритм, где новый пароль основан на запросе (например, случайное число, выбираемое сервером или части входящего сообщения) и/или счётчике.
Также существуют различные способы, чтобы сообщить пользователю следующий пароль. Некоторые системы используют специальные электронные токены , которые пользователь носит с собой, создающие одноразовые пароли и выводящие затем их на маленьком экране. Другие системы состоят из программ, которые пользователь запускает с мобильного телефона. Ещё другие системы генерируют одноразовые пароли на сервере и затем отправляют их пользователю, используя посторонние каналы, такие, как SMS -сообщения. Наконец, в некоторых системах одноразовые пароли напечатаны на листе бумаги или на скретч-карте , которые пользователю необходимо иметь с собой.
Реализация одноразовых паролей:
Синхронизированные по времени — одноразовые пароли обычно связаны с физическими аппаратными токенами (например, каждому пользователю выдаётся персональный токен, который генерирует одноразовый пароль). Внутри токена встроены точные часы, которые синхронизированы с часами на сервере. В этих OTP-системах время является важной частью алгоритма создания пароля, так как генерация нового пароля основывается на текущем времени, а не на предыдущем пароле или секретном ключе.
Запрос -использование одноразовых паролей с запросом требует от пользователя обеспечивать синхронизированные по времени запросы, чтобы была выполнена проверка подлинности. Это может быть сделано путём ввода значения в сам токен. Чтобы избежать появления дубликатов, обычно включается дополнительный счётчик, так что если случится получение двух одинаковых запросов, то это всё равно приведёт к появлению разных одноразовых паролей. Однако вычисления обычно не включают предыдущий одноразовый пароль, так как это приведёт к синхронизации задач.
Одноразовый пароль через SMS — Распространённая технология, используемая для доставки одноразовых паролей — это SMS . Так как SMS — это повсеместный канал связи, которая имеется во всех телефонах и используется большим количеством клиентов, SMS-сообщения имеют наибольший потенциал для всех потребителей, обладающие низкой себестоимостью. Токены, смарт-карты и другие традиционные методы аутентификации гораздо более дороги для реализации и для использования и часто встречают сопротивление со стороны потребителей. Они также гораздо более уязвимы для атак типа «человек посередине» , в которых фишеры крадут одноразовые пароли обманом или даже потому что одноразовые пароли отображаются на экране токена. Также токены могут быть потеряны и интеграция одноразовых паролей в мобильные телефоны может быть более безопасной и простой, потому что пользователям не придётся носить с собой дополнительные портативные устройства. В то же время одноразовые пароли через SMS могут быть менее безопасны, так как сотовые операторы становятся частью цепи доверия. В случае роуминга надо доверять более чем одному мобильному оператору.
Одноразовый пароль на мобильном телефоне — По сравнению с аппаратной реализацией токена, которая требует, чтобы пользователь имел с собой устройство-токен, токен на мобильном телефоне существенно снижает затраты и предлагает беспрецедентный уровень удобства. Это решение также уменьшает материально-технические требования, так как нет необходимости выдавать отдельное устройство каждому пользователю. Мобильные токены, такие, как FiveBarGate, FireID или PROTECTIMUS SMART дополнительно поддерживают некоторое число токенов в течение одной установки приложения, позволяя пользователю аутентифицироваться на нескольких ресурсах с одного устройства. Этот вариант также предусматривает специфические приложения для разных моделей телефонов пользователя. Токены в мобильных телефонах также существенно более безопасны, чем одноразовые пароли по SMS, так как SMS отправляются по сети GSM в текстовом формате с возможностью перехвата.
Организация парольной защиты
Инструкция по парольной защите включает в себя:
1. Правила формирования личного пароля
3. Порядок смены паролей
4. Хранение пароля
5. Ответственность при организации парольной защиты
Источник