Использование сигнатур для передачи NCP-пакетов

Необходимость применения сигнатуры (подписи) NCP-пакетов связана со скандалом, разыгравшимся в 1992 году. Тогда голландский студент предложил простой способ "взламывания" файлового сервера NetWare. Этот способ основывается на параллельной работе хаккера и пользователя, имеющего требуемые права (рисунок 2.55).

Рис. 2.55. Организация несанкционированного доступа к файловому серверу

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

Далее пакет посылается на файловый сервер. Файловый сервер пересылает адрес станции hacker в поле ImmAddress блока ECB и использует данные заголовка пакета IPX, чтобы определить номер соединения и возможность выполнения команды. Но в заголовке пакета хаккера записан адрес пользователя (адрес Admin), который имеет требуемые права. Поэтому команда хаккера выполняется.

При формировании сетевым адаптером заголовка ответного кадра адрес станции, куда непосредственно переда╦тся кадр, выбирается из поля ImmAddress блока ECB. Т. е. станция hacker воспринимается файловым сервером как маршрутизатор или мост. Напомним, что адрес конечной станции-получателя хранится в заголовке пакета IPX (в данном случае это адрес Admin, хотя для хаккера это не имеет значения). Таким образом, ответ посылается на станцию hacker, где и обрабатывается.

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

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

1. С консоли файлового сервера необходимо ввести SET-команду SET NCP Packet Signature Option = уровень (по умолчанию 1)

Можно задать один из следующих уровней:

2. На рабочей станции в раздел Netware DOS Requester файла net.cfg необходимо включить строку: Signature Level = уровень (по умолчанию 1)

Можно задать один из следующих уровней:

В таблице 2.15 перечислены различные сочетания уровней на сервере и рабочей станции, а также варианты подписи пакета.

Таблица 2.15. Варианты подписи пакета

Еслиуровень на сервере = 0
= 1

= 2

= 3
уровень на станции = 0
-

-

-

N
= 1- -++
= 2 - +++
= 3 N+++

Здесь приняты следующие обозначения :

Предыдущая глава || Оглавление || Следующая глава

Copyright © CIT