Компьютерная безопасность. Криптографические методы защиты - Петров А.А.
ISBN 5-89818-064-8
Скачать (прямая ссылка):
• 3 = обязательно использовать.
По умолчанию между клиентом и сервером используется тип 2 подтверждения достоверности, однако, получив доступ к файлу Net.cfg, нарушитель сможет прописать там строку Signature Level=0 или, имея доступ к консоли управления сервером, ввести строку SET NCP PACKET SIGNATURE=O и тем самым добиться цели. Использование данного механизма позволит избежать не только приведенной выше атаки, но также обеспечить неизменность передаваемых по сети исполняемых модулей, например login.exe. Если же этого не сделать, то нарушитель молсет инфицировать login.exe при передаче его по сети.
В общем случае процедура login между клиентом и сервером выглядит следующим образом:
1. Клиент посылает запрос серверу.
2. Сервер проверяет имя клиента и отправляет ему пару (R, UID), где R - случайное число, a UID - идентификатор пользователя.
3. Клиент выполняет следующие вычисления: X = hash(UID, password) и Y = hash(X, R), а затем посылает серверу Y.
4. Сервер получает Y и вычисляет значения Xl = hash(UID, password) и Y1 = hash(Xl, R). После чего производит сравнение Y - Y1. Если равенство выполнено, клиент получает доступ к серверу.
5. Клиент и сервер вычисляют Z = hash(X, R, С) (С является константой), которое затем используется в качестве ключа генерации MAC для данной сессии.
В Novell NetWare 4.x описанная процедура проходит с использованием асимметричного алгоритма RSA.
Однако на приведенную выше схему возможны атаки типа «человек в середине» (man in the middle) при условии, что нарушитель способен просматривать пакеты, пересылаемые между клиентом и сервером, и посылать пакеты быстрее, чем клиент и сервер. Для этого нарушителю, например, нужно находиться между клиентом и сервером или провести атаку типа «внедрение ложного объекта», например внедрив ложный ARP-сервер. Наиболее удобным способом для нарушителя будет подключение между сервером и клиентом, как показано на рис. 3.6. В этом случае нарушитель молсет не только анализировать трафик, но и блокировать передачу некоторых пакетов.
240 Компьютерная безопасность и практическое применение криптографии
Подобные атаки, очевидно, не будут работать, ес/ш выполнится условие повсеместного использования MAC на NCP-пакеты в ЛВС. Поэтому его включение администратором ЛВС обязательно.
Атака осуществляется следующим образом:
Рабочая станция нарушителя
1. Нарушитель ОЖИДает начала login СО СТО- с двумя сетевыми интерфейсами
роны клиента. Когда клиент посылает |Г~11Ь сервер
запрос серверу на прохождение login, нарушитель, в свою очередь, тоже направляет запрос серверу.
2. Сервер отвечает двумя значениями Rl и R2, предназначенными соответственно для клиента и нарушителя. Рис ЗА Подключение нарушителя
3. Когда нарушитель получает R2, он изменяет в данном пакете сетевой адрес сервера и посылает R2 клиенту.
4. Клиент вычисляет Yl = hash(X, R2) и посылает его серверу, в то время как сервер ожидает значение Y2 = hash(X, Rl).
5. Нарушитель перехватывает данный пакет и изменяет в нем сетевой адрес клиента на свой реальный.
6. После чего нарушитель начинает работать с сервером от имени клиента.
Учитывая сказанное, очевидно, что без дополнительных средств защиты, осуществляющих шифрование и подпись передаваемого трафика, невозможно обеспечить безопасность в данной ОС. Но все же некоторый уровень защиты при работе с этой ОС обеспечить можно, если придерживаться следующих рекомендаций (которые, правда, не претендуют на полноту):
• физически защитить сервер. Необходимо организовать локальную защиту сервера и ограничить к нему доступ (подробно методы защиты локальной рабочей станции рассматривались выше). Здесь будет уместно дать рекомендацию: используйте команду SECURE CONSOLE для предотвращения запуска NLM не из SYS: SYSTEM. Реализация этого пункта приведет к тому, что 75% потенциальных атак будут исключены;
• защитить критичные файлы системы. Например, вычислите контрольную сумму на файлы, находящиеся в SYS: LOGIN, SYS:PUBLIC и SYS:SYSTEM, и постоянно производите проверку полученных контрольных сумм;
• доступ пользователей к ресурсам должен быть организован в соответствии с выбранной политикой безопасности;
Защита в локальных сетях
241
• использовать мониторинг работы с консолью; это можно осуществить с помощью запуска console.nlm;
• включить accounting, посредством которого молшо регистрировать все попытки произвести login и logout к серверу;
• использовать механизмы подтверждения подлинности NCP-пакетов;
• стараться не применять процедуры RCONSOLE;
• обеспечить безопасность NCF-файлов;
• добавить команду EXIT в System Login Script;
• проверить местоположение rconsole.exe. Например, в Novell NetWare 3.12 rconsole.exe находится в SYSiSYSTEM и SYS:PUBLIC.
3.3.3. Безопасность в сетях Windows NT
Показатели сетевой безопасности Windows NT по сравнению с NetWare далеко не лучшие. У этой операционной системы тоже есть уязвимые места, позволяющие нарушителю не только дезорганизовать работу пользователей в ЛВС, но и осуществлять несанкционированный доступ к защищаемой информации. Уязвимости Windows NT связаны как с непроработан-ностыо вопросов сетевой безопасности, ошибками при проектировании ее сетевой части, так и с некорректным администрированием. Правда, молшо устранить большинство существующих на сегодняшний день уязвимостей путем отслеживания обновлений ОС, выпускаемых фирмой Microsoft в виде Service Pack, и корректно администрируя ОС, однако в этой системе существует целый класс уязвимостей, устранение которых возмолшо только при использовании дополнительных защитных механизмов, выраженных в реализации шифрования сетевого трафика или контроля доступа к каналам передачи данных в ЛВС.