Сайт о телевидении

Сайт о телевидении

» » Информационная безопасность открытых каналов связи. Защита информации в каналах связи и создание защищённых телекоммуникационных систем

Информационная безопасность открытых каналов связи. Защита информации в каналах связи и создание защищённых телекоммуникационных систем

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

Концепция построения виртуальных защищенных сетей VPN

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

Основные понятие и функции сети VPN

При наличии связи между корпоративной локальной сетью и сетью Интернет возникают двух типов:

  • несанкционированный доступ к ресурсам локальной сети через вход
  • несанкционированный доступ к информации при передаче через открытую сеть Интернет

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

Рисунок — 1

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

  • криптографическое шифрование транспортируемых данных
  • аутентификация пользователей виртуальной сети
  • проверка целостности и подлинности передаваемых данных

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

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

Шлюз безопасности VPN — сетевое устройство, подключаемое к 2 сетям и реализует функции аутентификации и шифрования для множества хостов, находящихся за ним.

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

Рисунок — 2

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

Рисунок — 3

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

Варианты создания виртуальных защищенных каналов

При создании VPN есть два популярных способа(рис.4):

  • виртуальных защищенный канал между локальными сетями (канал ЛВС-ЛВС)
  • виртуальный защищенных канал между локальной сетью и узлом (канал клиент-ЛВС)

Рисунок — 4

Первый метод соединения разрешает заменить дорогие выделенные каналы между отдельными узлами и создать постоянно работающие защищенные каналы между ними. Здесь шлюз безопасности служит интерфейсом между локальной сетью и туннелем. Многие предприятия реализуют такой вид VPN для замены или дополнения к .

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

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

Методы реализации безопасности VPN

При создании защищенной виртуальной сети VPN подразумевают, что передаваемая информация будет иметь критерии защищаемой информации , а именно: конфиденциальность, целостность, доступность. Конфиденциальность достигается с помощью методов асимметричного и симметричного шифрования. Целостность транспортируемых данных достигается с помощью . Аутентификация достигается с помощью одноразовых/многоразовых паролей, сертификатов, смарт-карт, протоколов .

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

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

VPN-решения для создания защищенных сетей

Классификация сетей VPN

На основе глобальной сети Интернет можно реализовывать почти все виды трафика. Есть разные схемы классификации VPN. Самая распространенная схема имеет 3 признака классификации:

  • рабочий уровень модели OSI
  • архитектура технического решения VPN
  • метод технической реализации VPN

Защищенный канал — канал между двумя узлами сети, вдоль определенного виртуального пути. Такой канал можно создать с помощью системных методов, основанных на разных уровнях модели OSI (рис.5).

Рисунок — 5

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

VPN канального уровня . Методы на таком уровня разрешают инкапсулировать трафик третьего уровня (и более высоких) и создавать виртуальные туннели типа точка-точка. К таким относят VPN-продукты на основе протокола .

VPN сетевого уровня . VPN-продукты такого уровня реализуют инкапсуляцию IP в IP. К примеру используют протокол .

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

Классификация VPN по архитектуре технического решения

Делят на:

  • внутрикорпоративные VPN — нужны для реализации защищенной работы между отделами внутри компании
  • VPN с удаленным доступом — нужны для реализации защищенного удаленного доступа к корпоративным информационным ресурсам
  • межкорпоративные VPN — нужны между отдельными частями бизнеса разнесенных географически

Классификация VPN по методу технической реализации

Делят на:

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

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

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

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

· подтверждение целостности поступающих по каналу сообщений, например, путем передачи одновременно с сообщением его дайджеста.

Совокупность защищенных каналов, созданных предприятием в публичной сети для объединения своих филиалов, часто называют виртуальной частной сетью (Virtual Private Network, VPN).

Существуют разные реализации технологии защищенного канала, которые, в частности, могут работать на разных уровнях модели OSI. Так, функции популярного протокола SSL соответствуют представительному уровню модели OSI. Новая версия сетевого протокола IP предусматривает все функции – взаимную аутентификацию, шифрование и обеспечение целостности, – которые по определению свойственны защищенному каналу, а протокол туннелирования РРТР защищает данные на канальном уровне.

В зависимости от места расположения программного обеспечения защищенного канала различают две схемы его образования:

· схему с конечными узлами, взаимодействующими через публичную сеть (Рис. 1.2, а);

· схему с оборудованием поставщика услуг публичной сети, расположенным на границе между частной и публичной сетями (Рис. 1.2, б).

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


Рисунок 1.2 – Два способа образования защищенного канала

Во втором случае клиенты и серверы не участвуют в создании защищенного канала – он прокладывается только внутри публичной сети с коммутацией пакетов, например, внутри Интернета. Канал может быть проложен, например, между сервером удаленного доступа поставщика услуг публичной сети и пограничным маршрутизатором корпоративной сети. Это хорошо масштабируемое решение, управляемое централизованно как администратором корпоративной сети, так и администратором сети поставщика услуг. Для компьютеров корпоративной сети канал прозрачен – программное обеспечение этих конечных узлов остается без изменений. Такой гибкий подход позволяет легко образовывать новые каналы защищенного взаимодействия между компьютерами независимо от их места расположения. Реализация этого подхода сложнее – нужен стандартный протокол образования защищенного канала, требуется установка у всех поставщиков услуг программного обеспечения, поддерживающего такой протокол, необходима поддержка протокола производителями пограничного коммуникационного оборудования. Однако вариант, когда все заботы по поддержании защищенного канала берет на себя поставщик услуг публичной сети, оставляет сомнения в надежности защиты: во-первых, незащищенными оказываются каналы доступа к публичной сети, во-вторых, потребитель услуг чувствует себя в полной зависимости от надежности поставщика услуг. И, тем не менее, специалисты прогнозируют, что именно вторая схема в ближайшем будущем станет основной в построении защищенных каналов.

2. Принципы криптографической защиты информации

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

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

2.1. Схема симметричной криптосистемы

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

Рисунок 2.1 – Обобщенная схема криптосистемы

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

Законный получатель, приняв шифртекст С, расшифровы-вает его с помощью обратного преобразования D = Е К –1 и получает исходное сообщение в виде открытого текста М:

D K (C) = Е К –1 (Е К (М)) = M.

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

Криптографическая система – это однопараметрическое семейство обратимых преобразований

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

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

· симметричные (одноключевые) криптосистемы;

· асимметричные (двухключевые) криптосистемы (с открытым ключом).

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

2.2. Схема асимметричной криптосистемы

Обобщенная схема асимметричной криптосистемы с двумя разными ключами К 1 и К 2 показана на рис. 2.2. В этой криптосистеме один из ключей является открытым, а другой – секретным.


Рисунок 2.2 – Обобщенная схема асимметричной криптосистемы

с открытым ключом

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

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

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

Рисунок 2.3 – Поток информации в криптосистеме при активном

перехвате сообщений

Если предпринятые криптоаналитические атаки не достигают поставленной цели и криптоаналитик не может, не имея подлинного ключа, вывести М из С или С’ из М’, то считается, что такая криптосистема является криптостойкой .

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

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

2.3. Аппаратно-программные средства защиты компьютерной информации

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

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

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

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

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

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

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

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

Работа прикладных программ с дисковыми накопителями состоит из двух этапов – “логического” и “физического”.

Логический этап соответствует уровню взаимодействия прикладной программы с операционной системой (например, вызов сервисных функций чтения/записи данных). На этом уровне основным объектом является файл.

Физический этап соответствует уровню взаимодействия операционной системы и аппаратуры. В качестве объектов этого уровня выступают структуры физической организации данных - сектора диска.

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

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

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

(1) системы “прозрачного” шифрования;

(2) системы, специально вызываемые для осуществления шифрования.

Рисунок 2.4 – Аппаратно-программные средства защиты компьютерной информации

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

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

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

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

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

Однако, у данного подхода имеются существенные недостатки:

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

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

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

Четвертую группу средств защиты составляют системы аутентификации электронных данных .

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

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

Код аутентификации сообщения МАС (Message Authentication Code) формируют с помощью симметричных систем шифрования данных. Проверка целостности принятого сообщения осуществляется путем проверки кода MAC получателем сообщения.

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

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

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

Для реализации ЭЦП используются принципы асимметричного шифрования. Система ЭЦП включает процедуру формирования цифровой подписи отправителем с использованием секретного ключа отправителя и процедуру проверки подписи получателем с использованием открытого ключа отправителя.

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

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

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

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

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

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

1) применение одного или нескольких центров распределения ключей;

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

Создание защищенного канала передачи данных между распределенными информационными ресурсами предприятия

А. А. Теренин, к. т. н.,

специалист по обеспечению качества ИТ и ПО

«Дойче Банк Москва»

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

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

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

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

    канал передачи данных должен быть постоянным,

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

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

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

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

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

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

Как обеспечить подобную защиту канала передачи данных?

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

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

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

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

Рассмотрим подробно, как можно создавать защищенные каналы передачи данных через Интернет.

Проблемы защищенной передачи данных по открытым сетям широко обсуждаются в популярной и массовой литературе:

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

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

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

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

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

Из дополнительных требований к реализуемому защитному каналу передачи данных можно выделить:

    идентификацию и аутентификацию взаимодействующих сторон;

    процедуру защиты от подмены одной из сторон (использование криптоалгоритмов с открытым ключом);

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

    конфигурирование и проверку качества канала связи;

    компрессию передаваемой информации;

    обнаружение и коррекцию ошибок при передаче данных по каналам связи;

    аудит и регистрацию событий;

    автоматическое восстановление работоспособности.

Построим модель нарушителя и модель объекта защиты (рис. 1).

Алгоритм установления соединения

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

Рассматриваются две стороны: сервер и клиент – рабочая станция, которая хочет установить соединение с сервером для дальнейшей работы с ним.

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

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

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

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

Исходя из предположения, что ЗКС и ОКС уже созданы, причем ОКС известен всем, а ЗКС – только серверу, мы получаем следующий алгоритм:

1. Клиент посылает серверу запрос на соединение.

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

3. Клиент генерирует свои ключи (открытый и закрытый) для работы с сервером (ОКК и ЗКК ).

4. Клиент генерирует ключ сессии (КС ) (симметричный ключ шифрования сообщений).

5. Клиент передает серверу следующие компоненты:

    открытый ключ клиента (ОКК );

    ключ сессии;

    случайное сообщение (назовем его Х ), зашифрованное открытым ключом сервера по алгоритму RSA .

6. Сервер обрабатывает полученное сообщение и посылает в ответ сообщение Х , зашифрованное ключом сессии (симметричное шифрование) + зашифрованное открытым ключом клиента (асимметричное шифрование, например алгоритм RSA ) + подписанное закрытым ключом сервера (RSA, DSA, ГОСТ ) (то есть если мы на стороне клиента после дешифрования получим опять Х, то это значит, что:

    сообщение пришло от сервера (подпись – ЗКС );

    сервер принял наш ОКК (и зашифровал нашим ключом);

    сервер принял КС (зашифровал этим ключом сообщение).

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

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

Схема алгоритма установления соединения приведена на рис. 2.

Алгоритм подготовки сообщения к отправке в защищенный канал

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

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

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

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

Алгоритм может быть реализован следующим образом (рис. 3):

    исходный текст сжимается с помощью алгоритма ZIP;

    параллельно этому процессу происходит подпись исходного текста открытым ключом получателя;

    сжатый текст шифруется симметричным ключом сессии, этот ключ тоже есть на приемной стороне;

    к зашифрованному и сжатому тексту добавляется цифровая подпись, однозначно идентифицирующая отправителя;

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

Алгоритм обработки сообщения при приеме из защищенного канала

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

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

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

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

Алгоритм обработки сообщения при приеме из защищенного канала (рис. 4):

    из полученного зашифрованного, сжатого и подписанного сообщения выделяется цифровая подпись;

    текст без цифровой подписи дешифруется ключом сессии;

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

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

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

Алгоритм подписи сообщения

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

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

Для нахождения значения хэшфункции можно применять известные алгоритмы хэширования (SHA, MD4, MD5, ГОСТ и др.), которые позволяют получить на выходе блок данных фиксированной длины. Именно с этим блоком и будет работать алгоритм цифровой подписи. В качестве алгоритма электронной цифровой подписи можно использовать алгоритмы DSA, RSA, Эль-Гамаля и др.

Опишем алгоритм подписи сообщения по пунктам (рис. 5):

    на вход общего алгоритма поступает исходный текст любой длины;

    вычисляется значение хэш-функции для данного текста;

    ЭЦП ;

    используя поступившие данные, вычисляется значение ЭЦП всего текста;

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

Алгоритм проверки подписи

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

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

Опишем алгоритм проверки подписи сообщения по пунктам (рис. 6):

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

    вычисляется значение хэш-функции от данного текста;

    полученное отображение текста фиксированной длины поступает в следующий блок алгоритмической обработки;

    в этот же блок направляется цифровая подпись, которая пришла на вход общего алгоритма;

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

    с использованием поступивших данных вычисляется значение электронной цифровой подписи всего текста;

    мы получили цифровую подпись сообщения, сравнивая которую с ЭЦП , поступившей на вход общего алгоритма, мы можем делать выводы о достоверности текста;

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

Возможные атаки на предложенную схему реализации защищенного канала связи

Рассмотрим наиболее распространенные примеры возможных атак на защищенный канал передачи данных .

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

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

При использовании для установления связи с сервером браузера (Internet Explorer или Netscape Navigator) мы доверяем этому браузеру и доверяем его проверке сертификатов посещаемых сайтов.

После проверки подписи на апплете можно доверять ОКС , который вшит в загружаемые с сервера данные или программы (апплеты).

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

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

Возможные атаки.

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

2. После передачи с сервера ОКС и перед отправлением клиентом в ответ своих ОКК и КС . В случае если при их генерации (ОКК , ЗКК и КС ) используется слабый генератор случайных чисел, можно попытаться предсказать все три указанных параметра или какой-нибудь один из них.

Для отражения данной атаки необходимо генерировать случайные числа, отвечающие ряду требований. Нельзя, например, использовать для генерации случайных чисел таймер, так как злоумышленник, перехватив первое сообщение (ОКС от сервера), может установить время отправления пакета с точностью до секунд. Если таймер срабатывает каждую миллисекунду, то для вскрытия необходим полный перебор всего лишь 60 000 значений (60 с _ 1000 мс).

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

3. При передаче от клиента к серверу пакета, содержащего ОКК , КС , Х , зашифрованного ОКС . Чтобы вскрыть перехваченную информацию, необходимо обладать ЗКС . Данная атака сводится к атаке, рассмотренной выше (подбор ЗКС ). Сама по себе закрытая информация, передаваемая серверу, бесполезна для злоумышленника.

4. При передаче от сервера к клиенту некоторого тестового сообщения Х , зашифрованного КС и ОКК и подписанного ЗКС . Чтобы расшифровать перехваченное сообщение, надо знать и ОКК , и КС , которые будут известны в случае реализации одной из приведенных выше атак после того, как противнику стал известен ЗКС .

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

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

Итак, мы рассмотрели атаки, возможные на этапе реализации процедуры «рукопожатия» (HandShake). Опишем атаки, которые могут осуществляться в процессе передачи данных по нашему каналу.

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

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

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

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

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

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

Заключение

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

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

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

ЛИТЕРАТУРА

1. Медведовский И. Д., Семьянов П. В., Платонов В. В. Атака на Интернет. – СПб.: Изд-во «ДМК» 1999. – 336 с.

2. Карве А. Инфраструктура с открытыми ключами. LAN/Журнал сетевых решений (Russian edition), 8, 1997.

3. Мельников Ю. Н. Электронная цифровая подпись. Возможности защиты. Конфидент № 4 (6), 1995, с. 35–47.

4. Теренин А. А., Мельников Ю. Н. Создание защищенного канала в сети. Материалы семинара «Информационная безопасность – юг России», Таганрог, 28–30 июня 2000.

5. Теренин А. А. Разработка алгоритмов для создания защищенного канала в открытой сети. Автоматизация и современные технологии. – Изд-во «Машиностроение», № 6, 2001, с. 5–12.

6. Теренин А. А. Анализ возможных атак на защищенный канал в открытой сети, созданный программным способом. Материалы XXII Конференции молодых ученых механико-математического факультета МГУ, М, 17–22 апреля 2000.

Андрей Субботин Материал приводится с разрешения редакции.

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

    конфиденциальность информации (доступность ее только для того, кому она предназначена);

    целостность информации (ее достоверность и точность, а также защищенность ее преднамеренных и непреднамеренных искажений);

    готовность информации (в любой момент, когда в ней возникает необходимость).

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

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

Первый вариант более прост в реализации и может использоваться для работы практически с любыми системами передачи электронной почты. Наиболее часто применяются алгоритмы шифрования DES, RSA, ГОСТ 28147-89, "Веста-2".

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

Целостность передаваемой по открытым каналам связи информации обеспечивается использованием специальной электронной подписи, которая позволяет установить авторство и подлинность информации. Электронная подпись в настоящее время широко применяется для подтверждения юридической значимости электронных документов в таких системах обмена информации, как Банк - Банк, Банк - Филиал, Банк - Клиент, Биржа - Брокерская контора и т. п. Из наиболее распространенных алгоритмов электронной подписи можно назвать такие, как RSA, PGP, ElGamal.

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

Положим, разработчик системы защиты утверждает, что полностью реализовал в ней требования ГОСТ 28147-89. Этот ГОСТ был опубликован, но не полностью. Не были опубликованы некоторые специальные криптографические подстановки, от которых существенно зависит ее криптостойкость. Таким образом, в правильности реализации ГОСТ можно быть уверенным только при наличии сертификата ФАПСИ, которого у большинства разработчиков нет.

Разработчик системы защиты сообщает, что у реализовал алгоритм RSA. При этом он умалчивает о том, что реализация должна лицензироваться фирмой RSA Data Security Inc. (патент США # 4 405 829). Более того, вывоз из США реализаций RSA с длиной ключа более 40 бит запрещен (криптостойкость такого ключа оценивается специалистами примерно в несколько дней работы обычного компьютера с процессором Pentium).

Разработчик системы защиты сообщает, что в ней реализован алгоритм PGP, который широко применяется у нас в стране благодаря бесплатно распространявшимся до 1995 г. его исходным текстам через BBS США. Здесь две проблемы. Первая - электронная подпись сделана на базе алгоритма RSA и, с точки зрения охраны авторских прав, также должна лицензироваться фирмой RSA Data Security Inc. Вторая - распространяемые программы нечувствительны к вмешательству в их работу, поэтому с помощью специального криптовируса можно легко получить секретный ключ для формирования электронной подписи.

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

Протокол Kerberos

Протоколы аутентификации:

3. Аутентификация с помощью открытого ключа

Описание DSA

p = простое число длинной L битов, где L принимает значение, кратное 64, в диапазоне от 512 до 1024.

q= 160-битовой простое число - множитель p-1

g = , где h - любое число, меньшее p-1, для которого больше 1

x = число, меньшее q

Используется однонаправленная хэш-функция: Н(m).

Первые три параметра, p, q, g, открыты и могут быть общими для пользователей сети. Закрытым ключом является х, а открытым - у. Чтобы подписать сообщение, m:

1. А генерирует случайное число k, меньше q

2. А генерирует

Его подписью служат параметры r и s, он посылает их В

3. В проверяет подпись, вычисляя

Если v=r, то подпись правильна.

Резюме

Система стандартов IPSec вобрала в себя прогрессивные методики и достижения в области сетевой безопасности. Система IPSec прочно занимает лидирующие позиции в наборе стандартов для создания VPN. Этому способствует ее открытое построение, способное включать все новые достижения в области криптографии. IPsec позволяет защитить сеть от большинства сетевых атак, «сбрасывая» чужие пакеты еще до того, как они достигнут уровня IP на принимающем компьютере. В защищаемый компьютер или сеть могут войти только пакеты от зарегистрированных партнеров по взаимодействию.

IPsec обеспечивает:

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

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

Защита на прикладном уровне

Протокол SSL

Протокол SSL (Secure Socket Layer - уровень защищенных сокетов), разработанный Netscape Communications при участии RSA Data Security, предназначен для реализации защищенного обмена информацией в клиент/серверных приложениях. На практике SSL широко реализуется только совместно с протоколом прикладного уровня HHTP.

Функции безопасности, предоставляемые протоколом SSL:

  • шифрование данных с целью предотвратить раскрытие конфиденциальных данных во время передачи;
  • подписывание данных с целью предотвратить раскрытие конфиденциальных данных во время передачи;
  • аутентификация клиента и сервера.

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

Рисунок 9 Криптозащищенные туннели, сформированные на основе протокола SSL

Согласно протоколу SSL криптозащищенные туннели создаются между конечными точками виртуальной сети. Клиент и сервер функционируют на компьютерах в конечных точках туннеля (рис. 9)

Протокол диалога SSL имеет два основных этапа формирования и поддержки защищаемого соединения:

  • установление SSL-сессии;
  • защищенное взаимодействие.

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

В процессе установления SSL - сессии решаются следующие задачи:

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

Рисунок 10 Процесс аутентификации клиента сервером

В протоколе SSL предусмотрено два типа аутентификации:

  • аутентификация сервера клиентом;
  • аутентификация клиента сервером.

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

Схема применения протокола

До передачи сообщение по линии передачи данных, сообщение проходит следующие этапы обработки:

1.Сообщение фрагментируется на блоки, пригодные для обработки;

2.Данные сжимаются (опционально);

3.Генерируется MAC ключ ;

4.Данные зашифровываются с помощью ключа ;

1.Используя ключ , данные расшифровываются;

2.Проверяется MAC ключ ;

3.Происходит декомпрессия данных (если использовалось сжатие);

4.Сообщение собирается из блоков и получатель читает сообщение.

Аутентичное распределение ключей

A , Клиент CA Удостоверяющий центр B , Сервер
Генерация пары ключей цифровой подписи: . Передача в УЦ - симметричная схема шифрования; - схема открытого шифрования; - схема ЦП; - любые функции (лучше ОНФ) Генерация пары ключей схемы открытого шифрования: . Передача в УЦ
K - случайный сеансовый ключ.

Если , то K принимается как аутентичный общий секретный ключ

Рабочий этап

A B

Симметричная схема шифрования

. . . и т.д. . . .

Атаки на протокол SSL

Как и другие протоколы, SSL подвержен атакам, связанным с не доверенной программной средой, внедрение программ-закладок и др.:

  • Атака отклика. Заключается в записи злоумышленником успешной коммуникационной сессии между клиентом и сервером. Позднее, он устанавливает соединение с сервером, используя записанные сообщения клиента. Но при помощи уникального идентификатора соединения "nonce" SSL отбивает эту атаку. Коды этих идентификаторов имеют длину 128 бит, в связи с чем злоумышленнику необходимо записать 2^64 идентификаторов, чтобы вероятность угадывания была 50%. Количество необходимых записей и низкую вероятность угадывания делают эту атаку бессмысленной.
  • Атака протокола рукопожатия. Злоумышленник может попытаться повлиять на процесс обмена рукопожатиями для того, чтобы стороны выбрали разные алгоритмы шифрования. Из-за того, что многие реализации поддерживают экспортированное шифрование, а некоторые даже 0-шифрование или MAC-алгоритм, эти атаки представляют большой интерес. Для реализации такой атаки злоумышленнику необходимо подменить одно или более сообщений рукопожатия. Если это происходит, то клиент и сервер вычислят различные значения хэшей сообщения рукопожатия. В результате чего стороны не примут друг от друга сообщения "finished". Без знания секрета злоумышленник не сможет исправить сообщение "finished", поэтому атака может быть обнаружена.
  • Раскрытие шифров. SSL зависит от нескольких криптографических технологий. Шифрование с общедоступным ключом RSA используется для пересылки ключей сессии и аутентификации клиента/сервера. В качестве шифра сессии применяются различные криптографические алгоритмы. Если осуществлена успешная атака на эти алгоритмы, SSL не может уже считаться безопасным. Атаки против определенных коммуникационных сессий могут производиться путем записи сессии, и затем предпринимается попытка подобрать ключ сессии или ключ RSA. В случае успеха открывается возможность прочесть переданную информацию.
  • Злоумышленник посередине. Man-in-the-Middle атака предполагает наличие трех сторон: клиента, сервера и злоумышленника. Злоумышленник, находясь между ними, может перехватывать обмен сообщениями между клиентом и сервером. Атака является эффективной только если для обмена ключами применяется алгоритм Диффи-Хэлмана, так как целостность принимаемой информации и ее источник проверить невозможно. В случае SSL такая атака невозможна из-за использования сервером сертификатов, заверенных центром сертификации.

Протокол TLS

Цель создания и преимущества

Цель создания TLS - повышение защиты SSL и более точное и полное определение протокола:

  • Более надежный алгоритм MAC
  • Более детальные предупреждения
  • Более четкие определения спецификаций "серой области"

TLS предоставляет следующие усовершенствованные способы защиты:

  • Хэширование ключей для идентификации с помощью сообщений - TLS применяет в коде идентификации сообщения (HMAC) хэширование, предотвращающее от изменения записи при передаче по незащищенной сети, например в Internet. SSL версии 3.0 также поддерживает идентификацию сообщений с помощью ключей, но HMAC считается более надежным, чем функция MAC, применяемая в SSL версии 3.0.
  • Улучшенная псевдослучайная функция (PRF) С помощью PRF создаются данные ключа. В TLS функция PRF определена с помощью HMAC. PRF применяет два алгоритма хэширования, обеспечивающих ее защиту. Если один из алгоритмов будет взломан, данные будут защищены вторым алгоритмом.
  • Улучшенная проверка сообщения "Готово" - Протоколы TLS версии 1.0 и SSL версии 3.0 отправляют обеим конечным системам сообщение "Готово", означающее, что доставленное сообщение не было изменено. Однако в TLS эта проверка основана на значениях PRF и HMAC, что обеспечивает более высокий уровень защиты по сравнению с SSL версии 3.0.
  • Согласованная обработка сертификатов - В отличие от SSL версии 3.0, TLS пытается указать тип сертификата, который может применяться различными реализациями TLS.
  • Особые предупреждающие сообщения - TLS предоставляет более точные и полные предупреждения о неполадках, обнаруженных одной из конечных систем. TLS также содержит информацию о том, когда какие сообщения с предупреждениями следует отправлять.

Протокол SSH

Протокол SSH (Secure Shell-оболочка безопасности) - это набор протоколов аутентификации с открытым ключом, позволяющий пользователю на стороне клиента безопасно регистрироваться на удалённом сервере.

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

Все сообщения шифруются с помощью IDEA .

Архитектура протокола SSH

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

Набор протоколов SSH состоит из трех компонентов:

  • Протокол транспортного уровня SSH (SSH Transport Layer Protocol), обеспечивает аутентификацию сервера. Для этого используется открытый ключ. Исходной информацией для этого протокола как со стороны сервера, так и со стороны клиента, является пара открытых ключей - "ключи головного компьютера". Итогом протоколом является взаимно аутентифицированный защищённый канал, который гарантирует секретность и целостность данных.
  • Протокол аутентификации пользователя SSH (SSH User Authentication Protocol). Выполняется по каналу односторонней аутентификации, установленному протоколом транспортного уровня SSH. Для выполнения аутентификации от клиента к серверу, поддерживаются различные протоколы односторонней аутентификации. Эти протоколы могут применять либо открытый ключ, либо пароль. Например, они могут быть созданы на основе протокола аутентификации с помощью простого пароля. Результатом протокола является взаимно аутентифицированный защищённый канал между сервером и пользователем. Применяются следующие методы:

publickey - клиент высылается ЭЦП , сервер проверяет доверие открытому ключу клиента по имеющейся на сервере копии ключа, затем проверяет аутентичность клиента по Sc.

password - клиент подтверждает свою аутентичность паролем.

hostbased - аналогично publickey, только используется пара ключей для клиентского хоста; подтвердив аутентичность хоста, сервер доверяет имени пользователя.

  • Протокол связи SSH (SSH Connection Protocol) выполняется по взаимно аутентифицированному защищённому каналу, установленному предыдущими протоколами. Протокол обеспечивает работу защищённого канала при этом разделяя его на несколько защищённых логических каналов.

Протокол распределения ключами

Протокол включает в себя 3 этапа. Первый этап - "Hello" phase, где первый идентификатор это строка, I, отправляется, чтобы начать протокол, за которым следует список поддерживаемых алгоритмов - X.

На 2-й стадии стороны согласуют секретный ключ, s. Для этого применяется алгоритм Диффи-Хеллмана . Сервер подтверждает свою идентичность, отправляя клиенты свой открытый ключ, , верифицированный цифровой подписью, , и подпись дайджеста, h. В качестве идентификатора sid устанавливается значение h.

На стадии 3 секретный ключ, идентификатор сессии и дайджест используются для создании 6 "apllication keys", вычисленных с помощью .

Резюме

К преимуществам протокола относится:

  • возможность действий на сквозной основе (end - to - end) с осуществляющими стеками TCP/IP, существующими интерфейсами прикладного программирования;
  • повышенная эффективность по сравнению с медленными каналами;
  • отсутствие каких-либо проблем с фрагментацией, определением максимального объёма блоков, передаваемых по данному маршруту;
  • сочетание компрессии с шифрованием.