Смекни!
smekni.com

Безопасность в распределенных системах (стр. 2 из 4)

Алгоритм RSA был изобретен Ривестом, Шамиром и Альде-маном в 1976 году и представляет собой значительный шаг в криптографии. Этот алгоритм также был принят в качестве стандарта Национальным Бюро Стандартов.

DES, технически, является СИММЕТРИЧНЫМ алгорит­мом, а RSA — АСИММЕТРИЧНЫМ, то есть он использует разные ключи при шифровании и дешифровании. Пользовате­ли имеют два ключа и могут широко распространять свой отк­рытый ключ. Открытый ключ используется для шифрования сообщения пользователем, но только определенный получатель может дешифровать его своим секретным ключом; открытый ключ бесполезен для дешифрования. Это делает ненужными секретные соглашения о передаче ключей между корреспонден­тами. DES определяет длину данных и ключа в битах, а RSA мо­жет быть реализован при любой длине ключа. Чем длиннее ключ, тем выше уровень безопасности (но становится длитель­нее и процесс шифрования и дешифрования). Если ключи DES можно сгенерировать за микросекунды, то примерное время ге­нерации ключа RSA — десятки секунд. Поэтому открытые клю­чи RSA предпочитают разработчики программных средств, а секретные ключи DES — разработчики аппаратуры.

Некоторые решения

Примером архитектуры клиент/сервер, которую хорошо дополняют средства шифрования, могут служить Oracle Server, сетевые продукты (SQMNet) и программное обеспечение кли­ента.

Сетевая служба безопасности (SNS — Secure Network Services) предлагает стандартный, оптимизированный алго­ритм шифрования DES с ключом длиной 56 бит для организа­ций, от которых требуется использовать стандарт DES. Для за­казчиков вне пределов США или Канады SNS предлагает DES40, в котором комбинируется использование алгоритма шифрования DES с общепринятым ключом длиной 40 бит (эк­спорт технологий шифрования в США законодательно ограни­чен). Наряду с DES возможно также использование алгоритма шифрования RSA RC4.

Секретный, генерируемый случайным образом ключ для каждой сессии SQL* Net сохраняет весь сетевой трафик — включая пароли, значения данных, SQL-утверждения и сохра­няемые вызовы и результаты.

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

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

1) криптографически защищенная контрольная сумма в каждом пакете SQL* Net обеспечивает защиту от модификации данных и замены операции;

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

3) информация о всех нарушениях регистрируется в жур­нале.

Наряду с этим обеспечивается многопротокольная переко­дировка данных, т.е. полностью поддерживается Oracle Multiprotocol Interchange — при работе с зашифрованной сес­сией можно начинать работу с одним сетевым протоколом, а за­канчивать с другим, при этом не требуется дешифрование или перешифрование информации. SNS полностью поддерживает­ся сквозными шлюзами, Oracle Transparent Gateways, и проце­дурными шлюзами, Oracle Procedural Gateways, которые дают возможность организовывать полностью зашифрованные сес­сии клиент/сервер к отличным от Oracle источникам данных, включая Adabas, CA-Datacom, DB2, DRDA, FOCUS, IDMS, IMS, ISAM, MUMPS, QSAM, Rdb, RMS, SAP, SQL/DS, SQL/400, SUPRA, Teradata, TOTAL, VSAM и другие.

SNS работает со всеми основными протоколами, поддержи­ваемыми SQL* Net, включая AppleTalk, Banyan, DECnet, LU6.2, MaxSix, NetBIOS, SPX/IPX, TCP/IP, X.25 и другие.

Обеспечивается независимость от топологии сети — SNS работает во всех основных сетевых средах, поддерживаемых SQL-Net.

SNS представляет собой дополнительный продукт к стан­дартному пакету SQL* Net, то есть требуется предварительно приобрести лицензию на SQL* Net. Продукт надо покупать и для клиента, и для сервера.

Вместе тем СУБД Oracle, начиная с версии 7.1, пароль пере­дается по сети в зашифрованном виде.

Это означает, что при организации связи клиент/сервер ис­пользуется новый протокол установления связи, в котором применяется сеансовый ключ, пригодный только для единст­венной попытки соединения с базой данных и используемый в качестве ключа для шифрования пароля, прежде чем он будет передан клиентам. Oracle-сервер находит зашифрованный па­роль для этого пользователя и использует его в качестве клю­ча, которым он зашифровывает сеансовый ключ. Затем сервер пересылает этот зашифрованный сеансовый ключ клиенту. Клиент шифрует (применяя тот же самый односторонний ал­горитм, который используется сервером) пароль, введенный пользователем, и с его помощью дешифрует зашифрованный сеансовый ключ. Обнаружив этот сеансовый ключ, он исполь­зует его — это становится совместным секретом клиента и сер­вера — для шифрования пароля пользователя. Этот зашифро­ванный пароль затем передается через сеть серверу. Сервер де­шифрует пароль и затем зашифровывает его, используя одно­сторонний алгоритм сервера; результат этих вычислений све­ряется со значением, хранимым в словаре данных. Если они совпадают, клиенту предоставляется доступ. Такой подход ре­ализуется как в соединениях типа клиент/сервер, так и сер­вер/сервер, где сеансы устанавливаются через так называемые полномочные звенья баз данных (т.е. звенья баз данных без вложенных имен пользователей и паролей).

Понятия идентификации и аутентифи­кации в достоверных системах

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

Сохранить требуемый уровень безопасности системы воз­можно при использовании операционных систем класса В1 (Trusted), которые позволяют администратору системы прис­воить каждому пользователю уровень доступности объектов системы (Secret, Confidential, Unclassified).

Обработка секретной и конфиденциальной информации требует от системы использовать механизм гарантии соответст­вующей идентификации и аутентификации пользователей. Все возможные подходы к идентификации и аутентификации' дол­жны быть идентифицированы, рассмотрены и сравнены с Кри­терием Оценки Достоверности Вычислительных Систем (TCSEC), или с «Оранжевой Книгой» (в Европе — Критерием Оценки Безопасности Информационных Технологий, или «Бе­лой Книгой»).

TCSEC делится на четыре класса: D, С, В и А. Эти классы упорядочены, причем самый высокий класс (А) зарезервиро­ван за системами, имеющими наивысший уровень защиты ин­формации. Внутри классов В и С имеются подклассы, которые тоже упорядочены в соответствии с обеспечиваемым уровнем защиты. Коротко говоря, принадлежность к классу D означа­ет, что система не имеет средств защиты информации (неклас­сифицированная), к классу С — что она имеет некоторые сред­ства избирательной защиты (классифицированная), к классу В — что к упомянутым ранее средствам добавляются гарантии безопасности и они описываются как «полномочные» (секрет­ная информация), ну а если система отнесена к классу А, зна­чит, средства защиты ранее проверены (совершенно секретная информация). Многие популярные операционные системы (например, различные варианты PС UNIX, Sun Solaris 2.3 и т.п.) соответствуют классу С.

В1 — первый в классификации уровень, в котором имеет место контроль доступа и переноса данных, основанный на уровнях конфиденциальности. Для непривилегированных пользователей используются данные идентификации и аутентификации для определения уровня авторизации текущего пользователя, которые Достоверная Компьютерная База (ТСВ — Trusted Computer Base) сравни­вает со своей базой данных пользователей, содержащей ранги авторизации для каждого пользователя. Если информация, указанная при вхождении в связь, корректна и ее уровень признан соответствующим запросу, ТСВ допускает пользова­теля в систему. При попытке доступа к файлам ТСВ выступа­ет в роли арбитра, при этом ТСВ основывается на уровне пользователя и метке файла или объекта, к которым пользова­тель пытается получить доступ. Поскольку уровень конфиденциальности представляется уровнем прозрачности и кате­горией доступа, а разрешение на доступ к объекту определяет­ся конфиденциальностью и объекта, и субъекта (внешний п ( отношению к ТСВ), авторизация субъекта становится компонентом требований к авторизации.

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

1) система должна иметь четкий сертификат безопасности

2) каждый объект, ассоциированный с этим сертификате! должен иметь метку контроля доступа;

3) индивидуальные пользователи должны быть идентифицированы;

4) система должна поддерживать совокупность сведений накапливающихся со временем и используемых для упрощен проверки средств защиты;

5) система должна быть открыта для независимой оценки безопасности информации;

6) система должна быть постоянно защищена от измененений конфигурации или каких-либо других изменений.

Со времени выпуска Оранжевой книги было опубликовано множество других документов с различными цветами обложек. Эта «радужная серия» охватывает вопросы Интерпретации Достоверных Сетей (Trusted Network Interpretation), Интерпретации Достоверных Баз Данных (Trusted DataBase Interpretation), руководства по паролям, руководство по избирательному контролю доступа и Перечень Оцененных Средств.