Научная статья на тему 'АНАЛИЗ ТЕХНОЛОГИИ ИДЕНТИФИКАЦИИ УДАЛЁННОГО ПОЛЬЗОВАТЕЛЯ БЕЗ РАСКРЫТИЯ ПАРОЛЯ'

АНАЛИЗ ТЕХНОЛОГИИ ИДЕНТИФИКАЦИИ УДАЛЁННОГО ПОЛЬЗОВАТЕЛЯ БЕЗ РАСКРЫТИЯ ПАРОЛЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
152
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ШИФРОВАНИЕ / ПЕРЕДАЧА ДАННЫХ / ПРОТОКОЛ / ПАРОЛЬ / КЭШ / СЕРВЕР / БЕЗОПАСНОСТЬ ДАННЫХ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Афанасьева Дарья Владимировна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ANALYSIS OF REMOTE USER IDENTIFICATION TECHNOLOGY WITHOUT DISCLOSING PASSWORD

The paper analyzes the technology for identifying a remote user without disclosing a password. The main advantages, as well as the features of the method under consideration, are described.

Текст научной работы на тему «АНАЛИЗ ТЕХНОЛОГИИ ИДЕНТИФИКАЦИИ УДАЛЁННОГО ПОЛЬЗОВАТЕЛЯ БЕЗ РАСКРЫТИЯ ПАРОЛЯ»

УДК 004.056.55

АНАЛИЗ ТЕХНОЛОГИИ ИДЕНТИФИКАЦИИ УДАЛЁННОГО ПОЛЬЗОВАТЕЛЯ БЕЗ РАСКРЫТИЯ ПАРОЛЯ

Д.В. Афанасьева

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

Ключевые слова: шифрование, передача данных, протокол, пароль, кэш, сервер, безопасность данных.

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

В открытом виде передают пароль стандартизованные протоколы FTP, POP, SNMP и сотни сетевых программ. Передача вместо открытого пароля его контрольной суммы нисколько не меняет положение дел. Если по контрольной сумме невозможно за приемлемое время восстановить пароль - это всего лишь означает, что злоумышленнику для подключения не удастся воспользоваться стандартной клиентской программой. Но он всегда сможет собственноручно эмулировать последовательность пакетов данного протокола и подставить в нужный пакет перехваченную контрольную сумму. Для пущего удобства можно даже провести сетевой поток от настоящей программы-клиента через локальный или выделенный маршрутизатор, исправляющий в потоке только "нужные" пакеты. А ведь на передаче контрольных сумм построено все сетевое общение операционной системы Microsoft Windows и одна из схем авторизации протокола HTTP. И это при том, что криптография более 20 лет назад предложила метод защиты от подобной атаки с любым желаемым уровнем надежности.

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

сервер генерирует случайное или псевдослучайное число - challenge, и отправляет его клиенту;

клиент выполняет над challenge какое-либо необратимое криптостойкое преобразование и отсылает результат серверу;

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

авторизация считается успешной, если два результата совпадают.

Далее приведенная выше схема будет разобрана подробнее. Шаг нулевой: раздача ключей. Клиенту выдаётся пароль (если клиентская сторона представляет собой живого человека) или сразу ключ (если клиент - это программа, а ключ вшит, например, в INI-файле), чтобы снять необходимость преобразования "пароль - ключ" в клиентском приложении. Challenge handshake, как и все другие криптопреобразования, уязвим к полному перебору паролей. А это означает, что:

1. Ни пароль, ни ключ нельзя генерировать стандартными функциями ГПСЧ, т.к. их информационная емкость чрезвычайно мала;

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

Известия ТулГУ. Технические науки. 2021. Вып. 8

На первом шаге псевдослучайное число не обязательно должно быть хорошо рандомизированным. Главное, чтобы с достаточно большим уровнем надёжности сервер не выдал это число в запросе второй раз, чтобы злоумышленник не мог послать правильный ответ на запрос сервера, просто выловив из сети несколько пар пакетов "запрос-ответ". Чем выше заданный уровень надежности, и чем больше сеансов с клиентом необходимо провести на одном и том же ключе - тем больше должна быть информационная емкость ГПСЧ. Так, если выбрана надежность 99%, то при проведении 100 сеансов без смены пароля генератор должен иметь ёмкость как минимум 19 бит. А, например, при традиционной ёмкости ГПСЧ в 32 бита порог смены пароля - 6000 сеансов.

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

Преобразование должно быть в первую очередь необратимо по известной паре "открытый/зашифрованный текст". Иначе третья сторона, определив ключ, сможет правильно отвечать на запросы. Но все стойкие шифры как раз и удовлетворяют этому условию. Следовательно, все что требуется - это зашифровать пришедший challenge выданным ключом и отправить результат на сервер. В качестве блочного шифра может быть выбран тот же TEA. Перед шифрованием размер challenge нужно довести до размера, кратного блоку шифра (обычно он весь помещается в один блок - 64 или 128 бит).

Однако, блочные шифры - не единственное крипторешение для challenge handshake. Как отдельная отрасль криптографии давно развивается технология невосстановимых контрольных сумм - хеш-функций. Если в качестве входного блока данных хеш-функции будет взята любая комбинация challenge и пароля, то получившееся в результате хеширования значение будет однозначно указывать серверу, знает или нет клиент секретный пароль. А поскольку хеш-функция необратима, то, перехватив challenge и отправленное клиентом обратно хеш-значение, злоумышленник ничего не сможет сделать, кроме как перебирать все пароли по словарю или по алфавиту. По криптостойкости вариант с хеш-функцией ничем не отличается от блочного шифра. Это и неудивительно, так как в современных хеш-функциях применяются те же принципы работы, что и в блочных шифрах. Удобство хеширования в том, что нет необходимости предварительно преобразовывать пароль в ключ. То есть, и клиент, и сервер могут просто склеить challenge и строку пароля и вычислить хеш-сумму от получившейся строки. Есть еще одно удобство: как challenge, так и пароль могут занимать произвольное количество байт. Стандартом де-факто на сегодняшний день является хеш-функция «MD5» (Message Digest v. 5), созданная Рональдом Ривестом (RSA Laboratories).

Это достаточно трудоемкий в описании, но легко реализуемый алгоритм, ориентированный под 32-разрядные процессоры. Очень прост в реализации 8-битный проект-предшественник от этой же фирмы - хеш-функция MD2. Сейчас он не применяется из-за своей относительной медлительности, но нам-то нужно хешировать всего 10-30 байт, а не мегабайты (как для цифровой подписи), поэтому и MD2 вполне подойдет для этой задачи. Описания и исходные тексты обоих алгоритмов можно найти в доброй сотне источников; кроме того - они включены в сетевой информаторий RFC (MD2=RFC1319, MD5=RFC1321).

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

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

1. Плахина Е.А. Инструкция по использованию интернета для обеспечения информационной безопасности автоматизированной и компьютерной системы // Известия Тульского государственного университета. Технические науки. 2020. Вып. 4. С. 140143.

2. Яковлев Б.С., Проскуряков Н.Е. Малозатратный подход к обеспечению устойчивой работы Интернет-ресурсов // Известия Тульского государственного университета. Технические науки. 2016. Вып. 7. Ч. 1. С. 248-253.

3. Босова Е.Д., Селищев В.А. Информационная безопасность: современные реалии // Известия Тульского государственного университета. Технические науки. 2019. Вып. 9. С. 296-300.

4. Афанасьева Д.В. Общий анализ современного состояния вредоносного программного обеспечения // Известия Тульского государственного университета. Технические науки. 2020. Вып. 11. С. 356-358.

5. Абидарова А.А. Кибератаки на информационные и автоматизированные системы и комплексы // Известия Тульского государственного университета. Технические науки. 2020. Вып. 11. С. 347-349.

6. Афанасьева Д.В., Абидарова А.А., Плахина Е.А. Обеспечение безопасности автоматизированных систем при взаимодействии с сетью интернет // Известия Тульского государственного университета. Технические науки. 2019. Вып. 12. С. 382-385.

Афанасьева Дарья Владимировна, студентка, sc-afadr@yandex. ru, Россия, Тула, Тульский государственный университет

ANALYSIS OF REMOTE USER IDENTIFICATION TECHNOLOGY WITHOUT

DISCLOSING PASSWORD

D.V. Afanasyeva

The paper analyzes the technology for identifying a remote user without disclosing a password. The main advantages, as well as the features of the method under consideration, are described.

Key words: encryption, data transfer, protocol, password, cache, server, data

security.

Afanasyeva Daria Vladimirovna, student, sc-afadr@yandex.ru, Russia, Tula, Tula State University

i Надоели баннеры? Вы всегда можете отключить рекламу.