В некоторых публикациях в периодической печати и в сети Internet под защитой информации понимается только часть из возможных и необходимых мероприятий в этом направлении, связанных с профилем работы конкретного коллектива исполнителей. Правильнее понимать под этим термином комплекс мероприятий, проводимых с целью предотвращения утечки, хищения, утраты, несанкционированного уничтожения, искажения, модификации (подделки), несанкционированного копирования, блокирования информации и т.п. Поскольку, например, утрата информации может происходить по чисто «техническим», объективным и неумышленным причинам, под это определение попадают также и мероприятия, связанные с повышением надежности сервера из-за отказов или сбоев в работе винчестеров, недостатков в используемом программном обеспечении и т.д.
Вообще, переход от работы на персональных компьютерах к работе в сети усложняет защиту информации по следующим причинам.
Большое число пользователей в сети и их переменный состав. Защита на уровне имени и пароля пользователя недостаточна для предотвращения входа в сеть посторонних лиц.Шифрование данных представляет собой разновидность программных средств защиты информации и имеет особое значение на практике как единственная надежная защита информации, передаваемой по протяженным последовательным линиям, от утечки.
Понятие «шифрование» часто употребляется в связи с более общим понятием криптографии. Криптография включает шифрование и дополнительно рассматривает способы решения проблем, связанных с возможной подменой цифровых данных: как проверить достоверность цифровых данных и как по аналогии с рукописной подписью на бумаге проставить визу на электронных документах, имея в распоряжении лишь последовательности нулей и единиц. Эти проблемы и способы их решения будут рассмотрены далее.
Число используемых программ шифрования ограничено, причем часть из них являются стандартами де-факто или де-юре. Однако даже если алгоритм шифрования не представляет собой секрета, произвести дешифрование (или расшифровку) без знания закрытого ключа чрезвычайно сложно. Это свойство в современных программах шифрования обеспечивается в процессе многоступенчатого преобразования исходной открытой информации («plain text» в англоязычной литературе) с использованием ключа (или двух ключей — по одному для шифрования и дешифрования). В конечном счете каждый из используемых сложных методов (алгоритмов) шифрования представляет собой комбинацию относительно простых методов.
Различают следующие классические алгоритмы шифрования:
подстановка (простая - одноаалфавитная, многоалфавитная однопетлевая, многоалфавитная многопетлевая); перестановка (простая, усложненная); гаммирование (смешивание с короткой, длинной или неограниченной маской).Устойчивость каждого из перечисленных методов к дешифрованию бег знания ключа характеризуется количественно с помощью показателя S представляющего собой минимальный объем зашифрованного текста который может быть дешифрован посредством статистического анализа
Подстановка предполагает использование альтернативного алфавит; (или нескольких алфавитов) вместо исходного алфавита. В случае простой подстановки для символов английского алфавита можно предложить например, следующую замену (табл. 6.1).
Тогда слово «cache» в зашифрованном виде представляется как «usuxk»
Существует, однако, возможность дешифрования сообщения с помощьь известной статистической частоты повторяемости символов в произвольном, достаточно длинном тексте. Например, символ Е встречается чащ всего — в среднем 123 раза на каждые 1000 символов или в 12,3% случаев далее следуют символы Т - 9,6%, А - 8,1%, О - 7,9%, N - 1,2%, I - 7,2%, S - 6,6%, R — 6,0%, Н - 5,1%, L — 4,0% и т.д. Приведенные цифры могут, конеч но, несколько варьироваться в зависимости от источника информацю Поэтому показатель устойчивости к дешифрованию SKB данном случа не превышает 20...30.
Табл. 6.1. Пример замены символов при подстановке
Исходный алфавит |
А |
В |
С |
D |
Е |
F |
G ] |
-I |
i |
J |
К |
L |
X |
Y |
Z |
|
Альтернативный алфавит |
S |
О |
и |
Н |
К |
Т |
L : |
X |
N |
W |
м |
Y |
А |
Р |
J |
При многоалфавитной подстановке можно добиться того, что в зашифрс ванном тексте все символы будут встречаться примерно с одинаковс частотой, что существенно затруднит дешифрование без знания альте) нативных алфавитов и порядка, в котором они использовались при шифровании.
Перестановка потенциально обеспечивает большую по сравнению с по, становкой устойчивость к дешифрованию и выполняется с использов нием цифрового ключа или эквивалентного ключевого слова, как это п казано на следующем примере (см. табл. 6.2.).
Цифровой ключ состоит из неповторяющихся цифр, а соответствующ ему ключевое слово - из неповторяющихся символов. Исходный тек (plain text) записывается под ключом построчно. Зашифрованное сообщение (cipher text) выписывается по столбцам в том порядке, как это предписывают цифры ключа (или в том порядке, в котором расположены отдельные символы ключевого слова в алфавите).
Для рассматриваемого примера зашифрованное сообщение: TRANSPOSITION IS THE ENCIPHER METHOD будет выглядеть следующим образом: AIHHORTTPHPaEaaSNaRaTIalTOINMccNOEEDSSCEct.
Табл. 6.2. Пример использования простой перестановки (а - служебный символ, в данном случае означает пробел)
Ключевое слово |
S |
Е |
С |
и |
R |
I Т |
Y |
Цифровой ключ |
5 |
2 |
1 |
7 |
4 |
3 6 |
8 |
Исходный текст (plain text), записанный построчно |
Т |
R |
А |
N |
S |
Р О |
S |
I |
Т |
I |
О |
N |
а I |
S" |
|
а |
Т |
Н |
Е |
а |
Е N |
С |
|
I |
Р |
Н |
Е |
R |
а М |
Е |
|
Т |
Н |
о |
D |
а |
а а |
а |
Гаммирование (смешивание с маской) основано на побитном сложении по модулю 2 (или, что то же самое - в соответствии с логикой ИСКЛЮЧАЮЩЕЕ ИЛИ) исходного сообщения с заранее выбранной двоичной последовательностью (маской).
Компактным представлением маски могут служить числа в десятичной системе счисления или некоторый текст (в этом случае рассматривается внутренние коды символов - для английского текста таблица ASCII).
Операция суммирования по модулю 2 (ИСКЛЮЧАЮЩЕЕ ИЛИ) является обратимой, так что при сложении с той же маской (ключом) зашифрованного сообщения мы снова получим исходный текст (произойдет дешифрование).
В качестве маски (ключа) могут использоваться константы типа п или е, и тогда маска будет иметь конечную длину. Наибольшую устойчивость к дешифрованию может обеспечить использование маски с бесконечной длиной, которая образована генератором случайных (точнее, псевдослучайных) последовательностей. Такой генератор легко реализуется аппаратными или программными средствами, например, с помощью сдвигового регистра с обратными связями, который используется при вычислении помехоустойчивого циклического кода. Точное воспроизведение псевдослучайной последовательности в генераторе на приемном конце линии обеспечивается при установке такого же исходного состояния (содержимого сдвигового регистра) и той же структуры обратных связей, что и в генераторе на передающем конце.
Перечисленные классические методы шифрования (подстановка, перестановка и гаммирование) являются линейными в том смысле, что длина зашифрованного сообщения равна длине исходного текста. Возможно нелинейное преобразование типа подстановки вместо исходных символов (или целых слов, фраз, предложений) заранее выбранных комбинаций символов другой длины.
Стандартные методы шифрования (национальные или международные) для повышения степени устойчивости к дешифрованию реализуют несколько этапов (шагов) шифрования, на каждом из которых используются различные классические методы шифрования в соответствии с выбранным ключом (или ключами). Существуют две принципиально различные группы стандартных методов шифрования:
шифрование с использованием одних и тех же ключей (шифров) при шифровании и дешифровании (симметричное шифрование или системы с открытыми ключами - private-key systems); шифрование с использованием открытых ключей для шифрования и закрытых - для дешифрования (несимметричное шифрование).Строгое математическое описание алгоритмов, используемых в стандартных методах шифрования, слишком сложно. Для пользователей важны в первую очередь потребительские свойства различных методов (степень устойчивости к дешифрованию, скорость шифрования и дешифрования, порядок и удобство распространения ключей), которые и рассматриваются ниже.
Стандарт шифрования данных США DES (Data Encryption Standard — стандарт шифрования данных) относится к группе методов симметричного шифрования и действует более 20 лет (принят в 1976 г.). Используемые операции - перестановка, гаммирование и нелинейная подстановка. Число шагов — 16. Длина ключа составляет 56 бит, из которых 8 бит - это проверочные разряды четности/нечетности.
Долгое время степень устойчивости к дешифрованию этого метода считалась достаточной, однако в 1998 г. появилось сообщение о создании специализированного компьютера (DES cracker), позволяющего вскрыть зашифрованный текст максимум за 9 дней (см. http://www.eff.org/ descracker). Впрочем, такого рода сообщения можно отнести и к одному из проявлений конкурентной борьбы.
Отечественный ГОСТ28147-89 - это аналог DES, но с длиной ключа 256 бит, так что его степень устойчивости к дешифрованию изначально существенно выше. Важно также и то, что в данном случае предусматривается целая система защиты, которая преодолевает «родовой» недостаток симметричных методов шифрования - возможность подмены сообщений. Такие усовершенствования, как имитовставки, хэш-функции и электронные цифровые подписи позволяют «авторизовать» передаваемые сообщения. Достоинством симметричных методов шифрования является высокая скорость шифрования и дешифрования, недостатком — малая степень защиты в случае, если ключ стал доступен третьему лицу.
Достаточно популярны, особенно при использовании электронной почты в сети Internet, несимметричные методы шифрования или системы с открытыми ключами - public-key systems. Типичный представитель этой группы методов - PGP (Pretty Good Privacy - достаточно хорошая секретность).
Каждый пользователь в этом случае имеет пару ключей. Открытые ключи предназначены для шифрования и свободно рассылаются по сети, но не позволяют произвести дешифрование. Для этого нужны секретные (закрытые) ключи.
Принцип шифрования в данном случае основывается на использовании так называемых односторонних функций. Прямая функция х -» f (х) легко вычисляется на основании открытого алгоритма (ключа). Обратное
преобразование f (x) —> х без знания закрытого ключа затруднено и должно занимать достаточно большое время, которое и определяет степень «трудновычислимости» односторонней функции.
Идею системы с открытыми ключами можно пояснить следующим образом (табл. 6.3). Для шифрования сообщений можно использовать обычную телефонную книгу, в которой имена абонентов расположены в алфавитном порядке и предшествуют телефонным номерам. Берется имя абонента, начинающееся на данную букву исходного слова, и номер телефона используется в качестве шифрованного сообщения.
Табл. 6.3. Пример шифрования в системе с открытыми ключами
Исходное слово | Выбранное имя абонента | Зашифрованное сообщение (телефонные номера) |
S |
Scott |
3541920 |
А |
Adleman |
4002132 |
и |
Ullman |
7384502 |
N |
Nivat |
5768115 |
А |
Aho |
7721443 |
Понятно, что у пользователя имеется возможность выбора соответствия между символом в исходном тексте и именем абонента, т.е. это многоалфавитная система, что повышает ее степень устойчивости к дешифрованию. Легальный пользователь имеет «обратный» телефонный справочник, в котором в первом столбце располагаются телефонные номера по возрастанию, и легко производит дешифрование. Если же такого «обратного» справочника нет, то пользователю предстоит утомительное и многократное просматривание доступного прямого справочника в поисках нужных телефонных номеров. Это и есть практическая реализация трудновычислимой функции. Сам по себе метод шифрования на основе телефонных справочников вряд ли перспективен хотя бы из-за того, что никто не мешает потенциальному взломщику составить «обратный» телефонный справочник. Однако в используемых на практике методах шифрования данной группы в смысле надежности защиты все обстоит благополучно.
В отличие от симметричных методов шифрования, проблема рассылки ключей в несимметричных методах решается проще — пары ключей (открытый и закрытый) генерируются «на месте» с помощью специальных программ. Для рассылки открытых ключей используются специальные
технологии типа LDAP (Lightweight Directory Access Protocol - протокол облегченного доступа к справочнику). Рассылаемые ключи могут быть предварительно зашифрованы с помощью одного из симметричных методов шифрования.
Встроенные средства защиты информации в сетевых ОС доступны, но не всегда, как уже отмечалось, могут полностью решить возникающие на практике проблемы. Например, сетевые ОС NetWare 3.x, 4.x позволяют осуществить надежную «эшелонированную» защиту данных от аппаратных сбоев и повреждений. Система SFT (System Fault Tolerance - система устойчивости к отказам) фирмы Novell предусматривает три основных уровня.
SFT Level I. Первый уровень предусматривает, в частности, создание дополнительных копий FAT и Directory Entries Tables, немедленную верификацию каждого в'новь записанного на файловый сервер блока данных, а также резервирование на каждом жестком диске около 2% от объема диска. При обнаружении сбоя данные перенаправляются в зарезервированную область диска, а сбойный блок помечается как «плохой» и в дальнейшем не используется. SFT Level II содержит дополнительно возможности создания «зеркальных» дисков, а также дублирования дисковых контроллеров, источников питания и интерфейсных кабелей. SFT Level III позволяет использовать в локальной сети дублированные серверы, один из которых является «главным», а второй, содержащий копию всей информации, вступает в работу в случае выхода «главного» сервера из строя. Система контроля и ограничения прав доступа в сетях NetWare (защита от несанкционированного доступа) также содержит несколько уровней. Уровень начального доступа (включает имя и пароль пользователя, систему учетных ограничений типа явного разрешения или запрещения работы, допустимого времени работы в сети, места на жестком диске, занимаемого личными файлами данного пользователя, и т.д.). Уровень прав пользователей («персональные» ограничения на выполнение отдельных операций и/или ограничения на работу данного пользователя как члена определенного подразделения, в отдельных частях файловой системы сети). Уровень атрибутов каталогов и файлов (ограничения на выполнение отдельных операций типа удаления, редактирования или создания, идущие со стороны файловой системы и касающиеся всех пользователей, пытающихся работать с данными каталогами или файлами). Уровень консоли файл-сервера (блокирование клавиатуры файл-сервера на время отсутствия сетевого администратора до ввода им специального пароля).Однако полагаться на эту часть системы защиты информации в ОС NetWare можно не всегда. Свидетельством тому являются многочисленные инструкции в Internet и готовые доступные программы, позволяющие взломать те или иные элементы защиты от несанкционированного доступа. То же замечание справедливо по отношению к другим мощным сетевым ОС со встроенными средствами защиты информации (Windows NT, UNIX).
Дело в том, что защита информации - это только часть из многочисленных задач, решаемых сетевыми ОС. «Выпячивание» одной из функций в ущерб другим (при понятных разумных ограничениях на объем, занимаемый данной ОС на жестком диске) не может быть магистральным направлением развития таких программных продуктов общего назначения, которыми являются сетевые ОС.
В то же время в связи с остротой проблемы защиты информации наблюдается тенденция интеграции (встраивания) отдельных, хорошо зарекомендовавших себя и ставших стандартными средств в сетевые ОС или разработка собственных «фирменных» аналогов известным программам защиты информации. Так, в сетевой ОС NetWare 4.1 предусмотрена возможность кодирования данных по принципу «открытого ключа» (алгоритм RSA) с формированием электронной подписи для передаваемых по сети пакетов.
Специализированные программные средства защиты информации от
несанкционированного доступа обладают в целом лучшими возможностями и характеристиками, чем встроенные средства сетевых ОС. Кроме программ шифрования, существует много других доступных внешних средств защиты информации. Из наиболее часто упоминаемых следует отметить следующие две системы, позволяющие ограничить информационные потоки.
Firewalls - брандмауэры (дословно firewall — огненная стена). Между локальной и глобальной сетями создаются специальные промежуточные сервера, которые инспектируют и фильтруют весь проходящий через них трафик сетевого/ транспортного уровней. Это позволяет резко снизить угрозу несанкционированного доступа извне в корпоративные сети, но не устраняет эту опасность совсем. Более защищенная разновидность метода - это способ маскарада (masquerading), когда весь исходящий из локальной сети трафик посылается от имени firewall-сервера, делая локальную сеть практически невидимой. Proxy-servers (proxy - доверенность, доверенное лицо). Весь трафик сетевого/транспортного уровней между локальной и глобальной сетями запрещается полностью — попросту отсутствует маршрутизация как таковая, а обращения из локальной сети в глобальную происходят через специальные серверы-посредники. Очевидно, что при этом методе обращения из глобальной сети в локальную становятся невозможными в принципе. Очевидно также, что этот метод не дает достаточной защиты против атак на более высоких уровнях - например, на уровне приложения (вирусы, код Java и JavaScript).Нет никакой возможности (да и необходимости) рассматривать различные аспекты проблем защиты информации в компьютерных сетях и возможные способы их решения более подробно. Этим специальным вопросам посвящено много книг, публикаций в периодической печати и в Internet. Имеются, наконец, жесткие законодательные акты. Авторы надеются, что приведенные в данном разделе сведения достаточны для первоначального введения в круг проблем и решений, связанных с защитой информации.