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

Одним из важнейших элементов этой части книги являются примеры программ в машинных кодах и на языке АССЕМБЛЕРа. В распечатках этих программ нам придется употреблять так

называемые ДИРЕКТИВЫ АССЕМБЛЕРа и сейчас, наверное, самое удобное время для того, чтобы дать представление о том, что это такое.

Мы рассмотрим следующие директивы: ORG, EQU, DEFB, DEFW, DEFM и END, но прежде чем начать их рассмотрение, надо твердо для себя понять:

1. Директивы АССЕМБЛЕРа не являются командами процессора Z8 0 и в этом смысле отношения к машинному коду Z8 0 не имеют.

2. АССЕМБЛЕР - это программа, которая переводит (транслирует) текст, написанный Вами в виде мнемоник в объектный код, являющийся машинным. И эти директивы АССЕМБЛЕРа - это некоторые команды ассемблирующей программе. Они не транслируются и в объектный код не войдут, но упростят Вам написание, и самое главное - чтение программы, записанной в мнемониках.

3. Программ-АССЕМБЛЕРов существует великое множество и каждая из них может иметь свои собственные директивы. Они могут иметь и одинаковые директивы, но предъявлять разные требования к их употреблению. Одним словом, конкретно способы использования директив АССЕМБЛЕРа Вам надо устанавливать по инструкции к ассемблирующей программе, которой Вы пользуетесь (напр. EDITAS, GENS 3, GENS 4, ZEUS и т.п.). И хотя стандартов не существует, тем не менее некоторые основополагающие понятия все же выделить можно, вот на них-то мы и остановимся.

3.1. Комментарии.

Мы начнем с самого простого - с комментариев. Они записываются после символа ";" (точка с запятой) .

Вам, конечно понятно, что все, что является комментариями, АССЕМБЛЕРом в машинный код не компилируется - это ни к чему. Они служат только для того, чтобы Вам было удобнее разбираться с листингом, который составил кто-то другой или Вы сами, но давным-давно.

Например:

10 60001 LD E,A 2 0

Как видите, строка может

; Загрузили в регистр E содер-; жимое аккумулятора. ; Уменьшили его на единицу.

остоять только из комментария.

Метки.

Метки значительно упрощают написание программ в мнемониках АССЕМБЛЕРа. В операциях перехода JP, JR, DJNZ, вызова подпрограмм CALL Вы можете не указывать адрес, в который Вы хотите совершить переход, а вместо него подставить метку. С другой стороны, когда будете писать команды для этого адреса, подставите метку и там, Например:

10 60001 BEGIN LD B,0 4

20 60003 AGAIN INC HL

40 60005 DJNZ, AGAIN

3.2.

250 260 270

60110 60111 60113

LD A,(HL) CP 80H JR NZ,BEGIN

Как видите, очень удобно. Сразу видно, что из строки 40 возврат осуществляется к метке AGAIN, если регистр B не достиг нуля. Из строки 270 возврат осуществляется к метке BEGIN.

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

При компиляции ассемблирующая программа сама подсчитает величины необходимых смещений в командах процессора и подставит их вместо меток. Так, например, в строке 40 вместо DJNZ AGAIN в объектный код пойдет DJNZ FCH, что то же самое.

В предыдущем примере мы использовали метки очень ограниченно. Дело в том, что и обращение по метке и сама метка находились в одной и той же процедуре. А как быть, если Вы хотите обратиться к метке, которая находится в другой процедуре, которую Вы написали и откомпилировали еще вчера, а как быть, если Вам надо сделать переход к процедуре ПЗУ и Вы при этом хотите воспользоваться меткой? В этом случае Вам поможет директива EQU. Она присваивает метке числовое значение. Конечно, при компиляции эта директива никак в машинный код не преобразовывается, но если по тексту программы есть ссылки на эту метку, то вместо нее будет подставлено значение, взятое из директивы EQU.

Например, Вам в Вашей программе неоднократно приходится вызывать процедуры ПЗУ, скажем CLEAR (1EACH=7 8 52) и OUT-LINE (1856H=6230) . Тогда в начале Вашей программы Вы задаете

например назвав их CLEAR

директивой

значения своим меткам, н

и OUT L.

CLEAR

EQU 7 8 52

OUT L

EQU 62 3 0

LABEL

EQU 60016

выз

ываете эти

процедуры или

по метке.

60001

LD HL, (LABEL)

60004

LD BC, 0008

60007

LD DE, (04 52)

60010

CALL CLEAR

60013

CALL OUT L

60016

Сразу

должны Вас

предупредить,

примеры

с точки зрения

программной

примеры того, как используются те или иные директивы АССЕМБЛЕРа и если Вам нужен в примерах реальный смысл, то Вы его получите чуть позже, в последующих главах, где мы будем разбирать практические приемы программирования.

Давайте еще раз взглянем на предыдущий пример. В строке 30 мы засылаем в регистровую пару HL то, что содержится в адресе, на который указывает метка LABEL, а она, согласно директиве EQU указывает на адрес 60016.

Итак, в ячейках 60016 и 60017 содержатся некоторые данные, которые впоследствии могут использоваться программой. Эти данные Вы можете заслать в ячейки сами перед компиляцией. И совсем не надо для этого привлекать машинный код. Первоначальные значения в ячейках памяти Вы можете выставить с помощью директив DEFB, DEFW и DEFM.

DEFB - DEFINE BYTE - задать байт.

DEFW - DEFINE WORD - задать "слово" ("слово" - это два последовательно расположенных байта. Обычно это адрес.) DEFM - DEFINE MESSAGE - задать сообщение (это несколько подряд идущих байтов) . Обычно ассемблирующие программы накладывают ограничение на то, сколько байтов можно задать одной директивой DEFM, скажем не более пяти. Но Вас это не должно волновать. Если Вы хотите задать длинное сообщение, то можете ставить подряд столько строк DEFM, сколько хотите.

Итак, DEFB задает один одиночный байт (0...255) , DEFW -два подряд идущих байта (0...65535), а DEFM - группу подряд идущих байтов - текстовое сообщение, числовая таблица и т. п.

В нашем предыдущем примере, если мы хотим хранить в адресе 60016 и 60017 некоторое двухбайтное число, строку 80 следовало бы записать, например так:

80 60016 DEFW 5C92H

90 60018

Предположим, Вы хотите начиная с адреса 60135 хранить слово "Spectrum".

Код буквы "S" Код буквы "p" "e" "c" "t" " r "

"u" "m"

60135

60136

60137

60138

60139

60140

60141

60142

53H 7 0H 65H 63H 7 4H 72H 75H 6DH

DEFB DEFB DEFB DEFB DEFB DEFB DEFB DEFB

можете его задать парами байтов:

Но проще и правильнее задать его как сообщение:

60135 DEFM 5370656374 ; "Spect"

60140 DEFM 72756D ; "rum"

Есть особый случай при программировании на АССЕМБЛЕРе, когда текст программы тоже приходится вводить через DEFB или DEFM. Это случай, когда Вы пишете программу для встроенного калькулятора. Ведь ассемблирующая программа может перевести в машинный код мнемоники АССЕМБЛЕРа, но она ничего не знает о кодах калькулятора и не знает его мнемоник. Код калькулятора -это внутреннее "Синклеровское" дело, его интерпретацией

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

Мы с Вами в первой части книги употребляли мнемонические обозначения команд калькулятора, типа add, stk_data s_lt и т. п., и писали их с маленькой буквы в отличие от команд процессора. Но делали это ранее и будем делать впредь только ради понимания и удобства записи. Программа-АССЕМБЛЕР таких мнемоник не знает, их нет в ее словаре.

Итак, с помощью DEFB, DEFW и DEFM задают начальные значения программным переменным, вводят в программу таблицы, сообщения и любые прочие последовательности данных, даже

графику, а также такие кодовые последовательности, которые ассемблирующая программа не понимает, как команды АССЕМБЛЕРа.

3.5. Директивы ORG, END.

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

Вы обратили внимание на то, что в вышеприведенных примерах мы слева писали столбец адресов, в которых будут размещаться те или иные команды. Так вот, этого при программировании на АСЕМБЛЕРе делать не надо. Достаточно в самом начале дать директиву

10 ORG 63000

и далее ассемблирующая программа сама рассчитает в какой ячейке памяти будет находиться та или иная команда. Это очень упрощает процесс программирования. А если Вы внесете изменения в готовый текст, АССЕМБЛЕР сам подправит все адреса.

Директива END отмечает конец программы. Если после него что-то еще и будет стоять, то АССЕМБЛЕР при компиляции это проигнорирует.

Вот пожалуй и все, что для начала стоит знать о директивах АССЕМБЛЕРа. Это не все директивы, какие могут встретиться в жизни, да и правила их использования для разных АССЕМБЛЕРов -разные, но по большому счету этот минимум удовлетворит 90 процентов Ваших потребностей в информации, а остальное Вы должны почерпнуть из инструкции к тому АССЕМБЛЕРу, с которым работаете.

Видение проблем, возникающих в связи с необходимостью обеспечения информационной безопасности современного предприятия, радикально отличается от тех представлений, которые доминировали всего лет десять назад. Формально комплекс требований к системам безопасности по-прежнему укладывается в классическую триаду - конфиденциальность (confidentiality), целостность (integrity) и готовность (availability). Однако к этим «трем китам» прибавилось (в основном из-за активизации обмена электронными документами) еще одно требование - аccountability.

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

Одним из проявлений нового отношения к культуре обеспечения безопасности следует считать направление secure content management, название которого можно перевести как «безопасное управление контентом» или, скорее, как «управление безопасностью контента». Иногда его еще называют «политической безопасностью контента» (policy-based content security).

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

2.1.Идентификация и аутентификация

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

Присвоение субъектам и объектам доступа личного идентификатора и сравнение его с заданным перечнем называется идентификацией . Идентификация обеспечивает выполнение следующих функций:

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

контролирование установленных полномочий в процессе работы;

регистрация действий и др.

Аутентификацией (установлением подлинности) называется проверка принадлежности субъекту доступа предъявленного им идентификатора и подтверждение его подлинности . Другими словами, аутентификация заключается в проверке: является ли подключающийся субъект тем, за кого он себя выдает.

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

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

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

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

1. Основанные на знании лицом, имеющим право на доступ к ресурсам системы, некоторой секретной информации – пароля.

2. Основанные на использовании уникального предмета: жетона, электронной карточки и др.

3. Основанные на измерении биометрических параметров человека – физиологических или поведенческих атрибутах живого организма.

4. Основанные на информации, ассоциированной с пользователем, например, с его координатами.

Рассмотрим эти группы.

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

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

Методы, использующие постоянные (многократно используемые) пароли,

Методы, использующие одноразовые (динамично изменяющиеся) пароли.

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

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

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

Методы модификации схемы простых паролей;

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

Функциональные методы.

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

Функциональные методы основаны на использовании специальной функции парольного преобразования . Это позволяет обеспечить возможность изменения (по некоторой формуле) паролей пользователя во времени. Указанная функция должна удовлетворять следующим требованиям:

Для заданного пароля x легко вычислить новый пароль ;

Зная х и y, сложно или невозможно определить функцию

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

Идея метода функционального преобразования состоит в периодическом изменении самой функции . Последнее достигается наличием в функциональном выражении динамически меняющихся параметров, например, функции от некоторой даты и времени. Пользователю сообщается исходный пароль, собственно функция и периодичность смены пароля. Нетрудно видеть, что паролями пользователя на заданных -периодах времени будут следующие: x, f(x), f(f(x)), ..., f(x)n-1.

Наиболее известным программным генератором одноразовых паролей является система S/ KEYкомпании Bellcore. Система S/KEY имеет статус Internet-стандарта (RFC 1938).

Метод «рукопожатия» состоит в следующем. Функция парольного преобразования известна только пользователю и системе защиты. При входе в АС подсистема аутентификации генерирует случайную последовательность x , которая передается пользователю. Пользователь вычисляет результат функции y =f (x ) и возвращает его в систему. Система сравнивает собственный вычисленный результат с полученным от пользователя. При совпадении указанных результатов подлинность пользователя считается доказанной.

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

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

Карточки разделяют на два типа:

Пассивные (карточки с памятью);

Активные (интеллектуальные карточки).

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

Иногда (обычно для физического контроля доступа) карточки применяют сами по себе, без запроса личного идентификационного номера.

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

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

Биометрия представляет собой совокупность автоматизированных методов идентификации и/или аутентификации людей на основе их физиологических и поведенческих характеристик. Методы аутентификации, основанные на измерении биометрических параметров человека (см. таблицу 2.1), обеспечивают почти 100 % идентификацию, решая проблемы утраты паролей и личных идентификаторов.

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

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

Примеры методов биометрии Таблица 2.1.

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

Назовем наиболее используемые биометрические атрибуты и соответствующие системы.

· Отпечатки пальцев. Такие сканеры имеют небольшой размер, универсальны, относительно недороги. Биологическая повторяемость отпечатка пальца составляет 10-5 %. В настоящее время пропагандируются правоохранительными органами из-за крупных ассигнований в электронные архивы отпечатков пальцев.

· Геометрия руки. Соответствующие устройства используются, когда из-за грязи или травм трудно применять сканеры пальцев. Биологическая повторяемость геометрии руки около 2 %.

· Радужная оболочка глаза. Данные устройства обладают наивысшей точностью. Теоретическая вероятность совпадения двух радужных оболочек составляет 1 из 1078.

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

· Голос. Проверка голоса удобна для использования в телекоммуникационных приложениях. Вероятность ошибки составляет 2 – 5%. Данная технология подходит для верификации по голосу по телефонным каналам связи, она более надежна по сравнению с частотным набором личного номера. Сейчас развиваются направления идентификации личности и его состояния по голосу – возбужден, болен, говорит правду, не в себе и т.д.

· Ввод с клавиатуры. Здесь при вводе, например, пароля отслеживаются скорость и интервалы между нажатиями.

· Подпись. Для контроля рукописной подписи используются дигитайзеры.

Новейшим направлением аутентификации является доказательство подлинности удаленного пользователя по его местонахождению. Данный защитный механизм основан на использовании системы космической навигации, типа GPS (Global Positioning System). Пользователь, имеющий аппаратуру GPS, многократно посылает координаты заданных спутников, находящихся в зоне прямой видимости. Подсистема аутентификации, зная орбиты спутников, может с точностью до метра определить месторасположение пользователя. Высокая надежность аутентификации определяется тем, что орбиты спутников подвержены колебаниям, предсказать которые достаточно трудно. Кроме того, координаты постоянно меняются, что сводит на нет возможность их перехвата .

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

Суммируя возможности средств аутентификации, ее можно классифицировать по уровню информационной безопасности на три категории:

1. Статическая аутентификация;

2. Устойчивая аутентификация;

3. Постоянная аутентификация.

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

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

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

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

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

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

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

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

Следующие меры позволяют значительно повысить надежность парольной защиты:

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

управление сроком действия паролей, их периодическая смена;

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

Ограничение числа неудачных попыток входа в систему (это затруднит применение метода "грубой силы");

Обучение пользователей;

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

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

Существующие парольные методы проверки подлинности пользователей при входе в информационную систему можно разделить на две группы:

· методы проверки подлинности на основе простого пароля;

· методы проверки подлинности на основе динамически изменяющегося пароля.

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

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

Использование простого пароля

Процедура опознавания с использованием простого пароля может быть представлена в виде следующей последовательности действий:

Пользователь посылает запрос на доступ к компьютерной системе и вводит свой идентификатор;

Система запрашивает пароль;

Пользователь вводит пароль;

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

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

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

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

Можно выделить следующие основные способы повышения стойкости системы защиты на этапе аутентификации:

Повышение степени не тривиальности пароля;

Увеличение длины последовательности символов пароля;

Увеличение времени задержки между разрешенными попытками повторного ввода неправильно введенного пароля;

Повышение ограничений на минимальное и максимальное время действительности пароля.

Использование динамически изменяющегося пароля

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

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

Методы модификации схемы простых паролей;

Методы идентификации и установления подлинности субъектов и различных объектов;

Метод "запрос-ответ";

Функциональные методы.

Наиболее эффективными из данных методов являются функциональные.

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

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

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

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

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

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

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

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

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

· Использующие математический алгоритм, где новый пароль основан на запросе (например, случайное число, выбираемое сервером или части входящего сообщения) и/или счётчике.

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

Реализация одноразовых паролей:

Математические алгоритмы

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

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

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

Одноразовый пароль на мобильном телефоне - По сравнению с аппаратной реализацией токена, которая требует, чтобы пользователь имел с собой устройство-токен, токен на мобильном телефоне существенно снижает затраты и предлагает беспрецедентный уровень удобства. Это решение также уменьшает материально-технические требования, так как нет необходимости выдавать отдельное устройство каждому пользователю. Мобильные токены, такие, как FiveBarGate, FireID или PROTECTIMUS SMART дополнительно поддерживают некоторое число токенов в течение одной установки приложения, позволяя пользователю аутентифицироваться на нескольких ресурсах с одного устройства. Этот вариант также предусматривает специфические приложения для разных моделей телефонов пользователя. Токены в мобильных телефонах также существенно более безопасны, чем одноразовые пароли по SMS, так как SMS отправляются по сети GSM в текстовом формате с возможностью перехвата.

Организация парольной защиты

Инструкция по парольной защите включает в себя:

1. Правила формирования личного пароля

2. Ввод пароля

3. Порядок смены паролей

4. Хранение пароля

5. Ответственность при организации парольной защиты



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: