СБОРНИК ДОКЛАДОВ
33
тип ПО, архитектура системы и многое другое. Системы дистанционного подключения
можно разделить по принципу доступа к интерфейсу и по принципу работы с системой.
Так, существуют:
- «Интернет-клиент»
— система с доступом только с помощью браузера;
- «Тонкий клиент»
— система, аналогичная «интернет-клиенту», отличающаяся тем,
что в браузер встраивается дополнительная надстройка для работы с ключами клиента
и установки электронной цифровой подписи (ЭЦП).
«Тонкий клиент» в большинстве случаев обладает минимальной аппаратной кон-
фигурацией, вместо жесткого диска для загрузки локальной специализированной ОС
используется DOM (DiskOnModule) (модуль с разъёмом IDE, флэш-памятью и микросхе-
мой, реализующей логику обычного жёсткого диска — в BIOS определяется как обыч-
ный жёсткий диск, только размер его обычно в 2-3 раза меньше). В некоторых конфи-
гурациях системы «тонкий клиент» загружает операционную систему по сети с сервера,
используя протоколы PXE, BOOTP, DHCP, TFTP и Remote Installation Services (RIS);
- «Толстый клиент»
- система, для работы с которой используется отдельное (от бра-
узера) ПО, запускаемое клиентом при организации доступа. Достоинствами являются:
- Наличие более широкого функционала - в отличие от «тонкого».
- Режим многопользовательской работы.
- Предоставление возможности работы даже при обрывах связи с сервером.
- Высокое быстродействие интерфейса.
Однако у него есть и ряд существенных недостатков:
- Большой размер дистрибутива.
- Многое в работе клиента зависит от того, для какой платформы он разрабатывался.
- При работе с ним возникают проблемы с удаленным доступом к данным.
- Довольно сложный процесс установки и настройки.
- Сложность обновления и связанная с ней неактуальность данных.
Защита перечисленных систем сводится к использованию идентификатора поль-
зователя и пароля, а также второго фактора аутентификации. Кроме того, существуют
каналы оповещения пользователя о событиях в системе.
Большинство систем было разработано на популярных языках программирования,
при этом компоненты систем могут быть как веб-приложениями (например, технологии
ASP.Net, Java), так и клиентскими приложениями (технология ActiveX) или просто при-
ложениями, написанными на языках семейства Си. В совокупности все эти компоненты
обеспечивают функционал для обеспечения удаленного доступа сотрудника ОВД к ИР.
Используя данную базу для создания таких систем, программисты могут совершать
ошибки, которые приводят к появлению уязвимостей, как на клиентской части, так и
на серверной.
Основные уязвимости при разработке «толстого клиента», а также серверной части,
если это не веб-приложение, появляются в результате ошибок памяти и реализуются
через ошибки при управлении переменными в стеке или при неверной работе с указа-
телями, счетчиками или индексами. Класс таких ошибок довольно широк и включает в
себя такие известные уязвимости, как:
•
переполнение буфера в стеке;
•
использование памяти после освобождения;
•
целочисленное переполнение.