BC/NW 2010; №2 (17):11.6
КОНТРОЛЬ ДЕЙСТВИЙ АДМИНИСТРАТОРОВ
ПРИ УДАЛЁННОМ ДОСТУПЕ
Мельников В.А., Луканина В.И.
(Московский
энергетический институт (технический университет), Россия)
На данный момент производители программного обеспечения для удалённого администрирования не уделяют достаточного внимания контролю действий системных администраторов на проблемных машинах. Администратор может выполнить любые действия на удалённой машине и изменить лог-файл так, что будет невозможно отличить действия администратора от действий пользователя. Так же администратор может отрицать факт доступа к удалённой машине.
Научная новизна работы заключается в том, что предлагается способ предоставления доступа системным администраторам, при котором будет невозможно отрицать факт доступа к удалённой машине.
Для аудита действий администраторов предлагается схема получения доступа к рабочим станциям сотрудников. Её особенностью является наличие агента, предоставляющего пароли. Пароли для доступа к рабочим станциям сотрудников генерируются агентом при обращении серверных частей системы. После запуска рабочей станции сервер запрашивает новый пароль у агента. Так как на сервере пароль хранится в хешированном виде, то агенту требуется предоставить пароль клиенту в первозданном виде. Следовательно, чтобы обеспечить безопасное хранение, перед внесением пароля в БД, он должен быть зашифрован. Для этого используется симметричное шифрование, ключ генерируется на основе парольной фразы, вводимой ответственным сотрудником. Чтобы исключить возможность подмены агента, он подписывает передаваемые пароли с помощью ЭЦП. Пароли передаются строго в зашифрованном виде. Для этого применяется криптосистема с открытым ключом, например, RSA.
Общая схема работы системы
Рис. 1. Обобщённая схема получения доступа к
серверной части:
1 ‑ сервер запрашивает пароль у агента;
2 ‑ агент высылает пароль серверу;
3 ‑ клиент (администратор) запрашивает пароль от сервера
у агента;
4 ‑ агент высылает пароль клиенту;
5 ‑ клиент подсоединяется к серверу;
6 ‑ сервер аннулирует использованный пароль.
Рис. 2. Назначение пароля серверу:
1 ‑ сервер запрашивает пароль и высылает свой IP;
2 ‑ агент генерирует пароль;
3 ‑ агент хеширует пароль и вычисляет ЭЦП;
4 ‑ агент зашифровывает пароль;
5 ‑ агент записывает зашифрованный пароль в БД;
6 ‑ агент отправляет хешированный пароль и ЭЦП серверу.
Получение пароля для доступа к серверу
Рис. 3. Получение пароля для доступа к
серверу:
1 ‑ клиент отправляет агенту логин, пароль и IP сервера;
2 ‑ агент хеширует пароль клиента;
3 ‑ агент запрашивает логин и хеш пароля из БД;
4 ‑ агент получает логин и хеш пароля из БД;
5 ‑ агент сравнивает полученные данные;
6 ‑ агент запрашивает пароль сервера;
7 ‑ агент получает пароль сервера;
8 ‑ агент расшифровывает пароль сервера и вычисляет ЭЦП;
9 ‑ агент отправляет пароль и ЭЦП клиенту.
Подробное описание работы
комплекса
1. Сервер отправляет запрос на назначение ему пароля.
2. Агент запрашивает аутентификационные данные сервера.
3. Сервер отправляет имя компьютера агенту.
4. Агент запрашивает ЭЦП имени компьютера сервера.
5. Сервер отправляет ЭЦП агенту.
6. Агент отправляет результат проверки серверу.
7. Сервер отправляет запрос на получение пароля.
8. Агент генерирует пароль и зашифровывает его на открытом ключе сервера, отправляет его серверу.
9. Сервер запрашивает ЭЦП пароля.
10. Агент отправляет ЭЦП сгенерированного пароля серверу.
Получение пароля от сервера
клиентом
1. Клиент отправляет запрос агенту на выдачу пароля от сервера.
2. Агент запрашивает аутентификационные данные клиента (зашифрованные на открытом ключе агента имя пользователя и пароль клиента).
3. Клиент отправляет зашифрованный на открытом ключе агента имя пользователя.
4. Агент запрашивает ЭЦП имени пользователя.
5. Клиент отправляет ЭЦП имени пользователя.
6. Агент запрашивает пароль.
7. Клиент отправляет зашифрованный на открытом ключе агента пароль.
8. Агент запрашивает ЭЦП пароля.
9. Клиент отправляет ЭЦП пароля.
10. Агент проверяет аутентификационные данные клиента и отправляет ему результат. В случае если аутентификационные данные корректны, отправляется запрос IP адреса сервера.
11. Клиент отправляет IP адрес сервера.
12. Агент запрашивает подпись IP.
13. Клиент отправляет подпись IP.
14. Агент отправляет клиенту результат проверки подписи.
15. Клиент запрашивает непосредственно пароль сервера.
16. Агент отправляет пароль, зашифрованный на открытом ключе клиента.
17. Клиент запрашивает подпись IP.
18. Агент отправляет подпись.
19. Клиент проверяет подпись и отправляет результат проверки агенту.
Преимущества предлагаемого
способа
При использования предлагаемого способа можно выделить следующие преимущества:
- централизация управления учетными записями
администраторов;
- все попытки получить удалённый доступ
фиксируются агентом, независимо от прав доступа администратора;
- отпадает необходимость помнить пароли от
всех администрируемых рабочих станций;
- атака на хеш
пароля становится неактуальной;
- подмена агента, не зная его закрытого ключа,
не принесёт результатов.
Противодействие атакам
Для противодействия атаками типа Man-in-the-Middle в предлагаемой схеме предоставления доступа используется асимметричная криптография, т.е. сообщения шифруются на открытых ключах получателя, а для проверки корректности сообщений используется электронная цифровая подпись [1].
От IP-спуфинга система также защищена с помощью асимметричной криптографии, а именно наличием закрытых ключей у каждого из компонентов. Даже если нарушитель фальсифицирует IP адрес любого из компонентов, без знания им закрытого ключа фальсифицируемого объекта он ничего не сможет сделать. Диалог будет начат, но при проверке аутентичности нарушителя произойдёт ошибка.
Противодействие атакам типа маскарад осуществляется аналогично описанным выше способами.
Нарушитель может попытаться подобрать пароль к серверному компоненту. Но, т.к. в предлагаемом способе сервер запрашивает пароль у агента при включении либо после предоставления доступа клиенту, время жизни пароля не превысит нескольких десятков часов. Если взять алфавит из 62 символов (26 строчных латинских букв, 26 прописных и 10 цифр) и длину пароля 32 символа, то количество паролей составит 6232 ≈ 2.27•1057 комбинаций, что делает метод прямого перебора паролей нецелесообразным.
Заключение
В данной работе был предложен способ предоставления доступа к рабочим станциям, при котором администратор не мог бы отрицать факт доступа и были описаны основные этапы его работы. Он может применяться в любых локальных вычислительных сетях. При его использовании увеличивается общая безопасность системы и удобство работы.
Литература
1. Баричев С.Г., Серов Р.Е. Основы современной криптографии.
М.: Горячая линия - Телеком, 2001. С. 88-90.