поиск по сайту
Построение систем защиты от несанкционированного доступа к терминальным системам
Д. Ю. Счастный

Построение систем защиты от несанкционированного доступа к терминальным системам

Долгими зимними вечерами крупные IT-специалисты с большим стажем вспоминают начало своей трудовой деятельности с теплотой и ностальгией. Упоминание перфокарт, перфолент, действительно БОЛЬШИХ ЭВМ и терминалов доступа к данным вызывает невольный трепет, ассоциируясь с теми временами, когда не было спама и вирусов, DOS-атак и спуфинга, хакеров и инсайдеров. Масла в огонь подливают заявления о том, что автоматизированные системы, построенные на мейнфреймах, ни разу не были взломаны и вообще весьма надежны с точки зрения безопасности. Поэтому от современных терминальных системам, подсознательно ждешь, что с безопасностью у них все в порядке. Однако, не все так просто, как хотелось бы:

В классических терминальных системах пользовательские терминалы не только были лишены каких-либо портов ввода-вывода, но и полноценная операционная система на них отсутствовала. Все терминалы были идентичны, и как-то изменять их, чтобы они могли существенно отличаться друг от друга, - было невозможно. Вся обработка и хранение данных происходили в одном месте, а пользовательские процессы были архитектурно отделены друг от друга. <Притвориться сервером>, то есть сымитировать Большую ЭВМ - можно было только с помощью другой Большой ЭВМ, то есть фактически - для злоумышленника это было невозможно именно из-за того, что она была большая. Фактически, она и представляла собой всю терминальную систему, так как самостоятельными единицами терминалы не являлись. Поэтому для системы защиты от несанкционированного доступа было необходимо грамотно настроить права доступа пользователей и идентифицировать пользователя по имени и аутентифицировать его с помощью пароля.

Делать это и сейчас необходимо, но, увы, уже не достаточно.

Терминальные системы сегодня - это не есть классические большие ЭВМ, скорее они представляют собой результат слияния больших и персональных электронных вычислительных машин. От больших ЭВМ в терминальных системах присутствует основная идея централизованной обработки и хранения данных, от персональных же ЭВМ - практические программные и аппаратные реализации. Сегодня одинаково легко заставить программное обеспечение терминального сервера выполняться на ноутбуке и использовать в качестве терминала полноразмерный специализированный сервер. То есть на лицо изменение парадигмы терминальных систем: вместо иерархии <множество глупых терминалов - один умный сервер> сейчас используется <много достаточно умных терминалов - один умный сервер>. Исходя из данной парадигмы и нужно подходить к вопросам защиты от несанкционированного доступа к информации в терминальных системах.

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

Таким образом, можно сформулировать особенности построения систем защиты в терминальных системах примерно так:

1.                Защите подлежат не только терминальные сервера, но и сами терминалы. При этом задача защиты терминалов распадается на две подзадачи.

а) Во-первых, необходимо контролировать доступ пользователя к портам ввода-вывода терминала, с тем чтобы запретить подключение неразрешенных внешних устройств, например, принтеров или флеш-дисков. Это дает возможность как предотвратить создание возможных каналов утечки данных с терминального сервера, так и не позволить привнести на терминал, а в последствии и на сервер, вредоносное программное обеспечение.

б) Во-вторых, необходимо обеспечивать контроль целостности программных средств, с помощью которых пользователь взаимодействует с терминальным сервером. Важно помнить, что, хотя пользовательские данные и хранятся, и обрабатываются на терминальном сервере, пользователь все-таки воспринимает и интерпретирует эти данные непосредственно на терминале. И нажимает пользователь на кнопки клавиатуры, подключенной опять-таки к терминалу. И только после обработки этих нажатий в операционной системе терминала они попадают на терминальный сервер.

2.                Идентифицироваться и аутентифицироваться должны не только пользователи, но и сами терминалы и терминальные сервера. Причем терминалы и терминальные сервера должны уметь проводить процедуры взаимной аутентификации.

Аутентификация терминального сервера особенно важна для пользователя. Зачастую для пользователя терминальный сервер представляется ярлычком на его рабочем столе. Пользователь знает, что его данные хранятся и обрабатываются на терминальном сервере, знает, что для доступа к этим данным он должен пройти процедуры идентификации и аутентификации, но не знает, откуда приходит к нему изображение на монитор терминала и куда он передает нажатия кнопок на клавиатуре и мыши, а может только верить в то, что это именно его сервер. Реально у пользователя нет механизма проверить куда он подсоединяется, откуда получает данные и куда передает результаты их обработки. Пользователь взаимодействует в первую очередь с терминалом, и это функция терминала - обеспечить корректное соединение с терминальным сервером.

С другой стороны в рамках политики безопасности правильно разграничивать подключения легальных пользователей к терминальному серверу в зависимости от того, с какого терминала он обращается. Терминалы могут существенно отличаться друг от друга не только составом аппаратных средств, но и набором программного обеспечения, функционирующего на них.

3.                 Правила разграничения доступа пользователей на терминалах и серверах должны быть синхронизированы между собой.

Как уже не раз упоминалось выше, в качестве терминалов могут выступать вполне современные ПЭВМ, для которых работа с терминальным сервером является только одной из множества функций. И очень важно, чтобы правила разграничения доступа, установленные для пользователя на терминальном сервере, поддерживались бы и на терминале. Если пользователю запрещено печатать тот или иной документ, хранящийся на терминальном сервере, то нужно обеспечить реализацию этого требования и на терминале, для того чтобы он не смог все-таки распечатать документ, например, как копию экрана.

Итак, подытожим. Если в случае с персональным компьютером пользователю во время работы необходимо быть уверенным в том, что он работает именно на том компьютере, на котором должен работать и с теми данными, с которыми он должен работать, а для доступа к этим данным он должен подтвердить свои полномочия, то в случае с терминальной системой появляется еще один проверяемый элемент: помимо вышеперечисленного пользователь должен быть уверен, что он работает со своего защищенного терминала именно с тем терминальным сервером, с которым должен работать, а полномочия пользователя должны пройти проверку не только на терминальном сервере, но и на терминале. То есть терминальный сервер и терминал должны провести процедуры взаимной идентификации и аутентификации, а правила разграничения доступа, установленные для пользователя на терминале, должны быть синхронизированы с правилами разграничения доступа на терминальном сервере.

В настоящее время штатная система защиты терминальных систем, построенных на базе операционной системы Microsoft Windows,  сводится к защите терминального сервера, криптографической защите каналов взаимодействия между терминалом и сервером (причем детали реализации этой защиты не раскрываются) и идентификации/аутентификации пользователей на терминальных серверах. Как было показано выше, эти механизмы не учитывают всех нюансов построения систем защиты от несанкционированного доступа, а значит, не обеспечивают достаточного уровня защищенности. Разработка таких систем, которые смогут сделать терминальные системы столь же защищенными, как в эпоху мейнфремов, - актуальна и интересна. В нашей стране несколькими признанными разработчиками ведутся работы над такого рода проектами, и они представляются на сегодняшний день весьма перспективными.


ФорумФорум
Форум ОКБ САПР
Вопросы специалистовВопросы специалистов
Вопросы, которые нам присылают, и наши ответы на них