Метод разделения административных и пользовательских полномочий
П.Н. Девянин, к.т.н., доцент
ИКСИ
peter_devyanin@hotmail.com
Анализируя решения по защите информации в корпоративных вычислительных сетях, можно отметить, что общей для многих из них проблемой является обеспечение защиты от несанкционированного использования нарушителем особых административных полномочий (привилегий или прав доступа), необходимых для выполнения своих функций привилегированными пользователями системы. К числу административных полномочий можно отнести, например, права доступа на модификацию исполняемых модулей операционной системы (ОС), привилегии, позволяющие устанавливать в ОС дополнительные исполняемые модули или осуществлять их отладку, права доступа на модификацию записей в конфигурационных файлах ОС, позволяющие изменять состав исполняемых модулей ОС или параметры учетных записей пользователей.
При этом известно [3, 5], что многие атаки на ОС используют следующие возможности:
- пропущенные в системных функциях ОС механизмы проверки на наличие прав использования административных полномочий;
- ошибки в системных процессах ОС, использующих административные полномочия;
- ресурсы ОС, используемые нарушителем для внедрения программных закладок, активизируемых привилегированным пользователем.
Таким образом, становится очевидным, что для повышения безопасности ОС следует найти компромисс между двумя противоположностями: с одной стороны, необходимостью обеспечить защиту от несанкционированного использования административных полномочий, с другой стороны, предоставлением возможности привилегированным пользователям выполнять свои функции.
Для того чтобы найти возможный путь решения данной проблемы, целесообразно использовать следующие свойства современных ОС.
Процессы большинства современных ОС можно разделить на три группы:
- процессы ядра ОС;
- привилегированные процессы ОС;
- процессы пользователей.
Процессы ядра обладают максимальными полномочиями в ОС. При этом интерфейс взаимодействия процессов ядра с другими процессами, как правило, является достаточно безопасным. Монитор ссылок (подсистема безопасности, реализующая заданные правила разграничения доступа) в большинстве современных ОС является частью ядра ОС.
Привилегированные процессы ОС, а также процессы, активизируемые привилегированными пользователями, обладают всей совокупностью административных полномочий, позволяющих получить полный контроль над ОС, включая возможность модификации и изменения состава модулей ядра ОС.
Привилегированные процессы обеспечивают возможность функционирования в ОС процессов пользователя, который реализует определенную его функциональными обязанностями технологию обработки информации и не решает задач по администрированию и настройке ОС. Административные полномочия не доступны процессам непривилегированного пользователя, кроме того, при его работе на компьютере административные полномочия, как правило, не используются и привилегированными процессами. Следовательно, большую часть времени функционирования ОС административные полномочия, наличие которых в ОС является потенциальной угрозой ее безопасности, не используются процессами ОС.
Таким образом, для повышения безопасности ОС целесообразно использовать метод разделения административных и пользовательских полномочий. Метод состоит в выполнении следующих действий и требований:
- удалить на компьютере учетные записи привилегированных пользователей;
- модифицировать монитор ссылок ОС таким образом, чтобы исключить возможность использования тех административных полномочий, необходимость использования которых отсутствует при работе на компьютере непривилегированного пользователя;
- добавить в монитор ссылок ОС модуль, позволяющий блокировать доступ на добавление или модификацию объектов ОС, важных для обеспечения ее безопасности;
- защитить процедуру начальной загрузки компьютера;
- обеспечить защиту аппаратного обеспечения компьютера от непосредственного доступа или модификации нарушителем.
Реализовав перечисленные действия и требования, можно существенно затруднить несанкционированное использование административных полномочий нарушителем. Однако при этом необходимо предоставить возможность привилегированному пользователю администрировать и настраивать ОС.
Для решения данной задачи целесообразно использовать концепцию безопасного администрирования [1]. Из положений концепции следует, что поскольку компьютеры вычислительной сети играют различные роли в обеспечении ее безопасности (например, серверы безопасности и рабочие станции пользователей), то способы обеспечения их безопасности могут быть различными.
На серверах безопасности реализовывать метод нецелесообразно. Так как, с одной стороны, доступ к серверам безопасности непривилегированных пользователей может быть запрещен организационными мерами. С другой стороны, разработка для серверов безопасности нештатных средств администрирования, необходимых для реализации метода, требует больших трудозатрат.
Администрирование и настройка рабочих станций пользователей в большинстве случаев не требуют существенной модификации конфигурационных файлов ОС. Кроме того, перечисленные выше атаки на ОС осуществляются, как правило, на рабочих станциях пользователей. В связи с этим, метод целесообразно реализовать, в первую очередь, для повышения безопасности ОС рабочих станций пользователей.
Можно предложить два способа, позволяющих при реализации метода разделения административных и пользовательских полномочий обеспечить для привилегированного пользователя возможность администрирования и настройки ОС.
Первый способ предполагает реализацию следующих действий и требований:
- ОС, модифицированная в соответствии с требованиями метода для работы непривилегированного пользователя, загружается с жесткого диска рабочей станции;
- ОС для работы привилегированного пользователя загружается с внешнего носителя (например, CD);
- возможность загрузки ОС с внешнего носителя должна быть предоставлена только привилегированному пользователю;
- для выполнения привилегированным пользователем функций по администрированию и настройке ОС, загружаемой с жесткого диска рабочей станции, должно быть разработано программное обеспечение, запускаемое с внешнего носителя.
При реализации второго способа обеспечивается выполнение следующих действий и требований:
- ОС, модифицированная в соответствии с требованиями метода для работы непривилегированного пользователя, загружается на рабочей станции с сервера удаленной загрузки по каналам вычислительной сети;
- должна быть обеспечена защита аппаратного обеспечения рабочей станции и вычислительной сети от изменения нарушителем процедуры удаленной загрузки;
- для выполнения привилегированным пользователем функций по администрированию и настройке ОС должно быть разработано программное обеспечение, запускаемое на сервере удаленной загрузки, позволяющее модифицировать размещенный на нем комплект ОС удаленной загрузки.
Реализацию метода разделения административных и пользовательских полномочий следует сочетать с использованием концепции безопасного администрирования [1].
В концепции рассматриваются две угрозы безопасности вычислительной сети:
- наличие у нарушителя возможности разместить ресурсы на компьютере (запустить процесс или разместить файловые данные) несет угрозу получения им всех привилегий на данном компьютере;
- обращение пользователя к компьютеру (с целью получить данные локально или по сетевым коммуникационным каналам) несет угрозу захвата его привилегий нарушителем, разместившим свои ресурсы на этом компьютере.
Также в концепции рассматривается двухуровневая модель нарушителя:
если нарушитель может разместить на компьютере свой ресурс, то он имеет возможность управления функциями автоматизированной системы (нарушитель 3 уровня по Руководящим документам Гостехкомиссии России [4]);
- если нарушитель может только удаленно обращаться к компьютеру, то он имеет возможность ведения диалога с автоматизированной системой (нарушитель1 уровня по Руководящим документам Гостехкомиссии России).
Цель реализации концепции безопасного администрирования состоит в обеспечении выполнения основного постулата концепции: взлом защиты одного из компьютеров вычислительной сети посредством реализации описанных двух угроз (в результате действий нарушителей по размещению своих ресурсов на компьютерах или по обращению к компьютерам) не должен нести угрозы безопасности для других компьютеров сети.
В концепции используется иерархия ролей безопасности. При этом предполагается, что компьютеры и пользователи вычислительной сети обладают различными ролями, определяющими их полномочия и функции при обеспечении безопасности сети. Например, для компьютеров используются роль «сервер безопасности» и подчиненная ей роль «рабочая станция», для пользователей используются роль «администратор безопасности» и подчиненная ей роль «пользователь». Чем выше в иерархии находится роль, тем более доверенным считается ее обладатель.
Для реализации концепции безопасного администрирования следует выполнять ряд требований, определяющих порядок администрирования и конфигурирования вычислительной сети.
1. Администратор безопасности должен выполнять свои функции только на сервере безопасности.
2. Учетные записи пользователей вычислительной сети должны быть труднодоступными для нарушителя, для чего размещение файловых данных и запуск процессов на сервере безопасности должно быть разрешено только администратору безопасности. На рабочих станциях сети не должны быть зарегистрированы пользователи.
3. Для выполнения административных функций на рабочей станции должен быть зарегистрирован на сервере безопасности выделенный пользователь, который администрирует и выполняет свои функции только на заданной рабочей станции и не обращается к другим рабочим станциям сети или иным компьютерам с меньшим доверием.
4. При определении порядка обращения друг к другу компонентов вычислительной сети необходимо исключить обращения от компьютеров с большим доверием к компьютерам с меньшим доверием.
Требования метода разделения административных и пользовательских полномочий не противоречат требованиям концепции безопасного администрирования. Удаление на рабочих станциях учетных записей привилегированных пользователей, блокирование административных полномочий не сопровождается реализацией рассматриваемых в концепции угроз.
При использовании первого способа реализации метода операционная система привилегированного пользователя загружается с внешнего носителя. Таким образом, выполняется третье требование концепции.
Загрузка ОС привилегированного пользователя с сервера удаленной загрузки выполняется по запросу с рабочей станции и не приводит к размещению на сервере пользовательских ресурсов. Таким образом, при использовании второго способа реализации метода также выполняются требования концепции.
Использования для повышения безопасности рабочих станций метода разделения административных и пользовательских полномочий предоставляет возможность эффективно реализовать требования изолированной программной среды [2].
Изолированная программная среда используется для обеспечения гарантии выполнения в ОС заданной политики безопасности. При этом предполагается, что требования политики безопасности реализует ядро безопасности. Целью реализации в ОС изолированной программной среды является обеспечение целостности ядра безопасности и исключение возможности его несанкционированной модификации или изменения функциональности нарушителем.
Для реализации изолированной программной среды требуется, чтобы пользователи ОС могли активизировать только процессы, прошедшие проверку на корректность и принадлежащие предопределенному списку разрешенных процессов. При этом корректность процесса предполагает отсутствие в нем функций, позволяющих изменить функциональность ядра безопасности или других процессов.
В методе разделения административных и пользовательских полномочий требуется обеспечить блокирование административных полномочий, с использованием которых, как правило, возможно воздействие одного процесса ОС на функциональность другого процесса. Реализация метода обеспечивает большую защищенность ядра безопасности от воздействия со стороны процессов нарушителя.
В заключение следует сделать следующие выводы:
- метод разделения административных и пользовательских полномочий позволяет повысить безопасность современных ОС;
- метод целесообразно использовать в сочетании с реализацией требований концепции безопасного администрирования и изолированной программной среды.
ЛИТЕРАТУРА
1. Девянин П. Н. Концепция безопасного администрирования в Windows NT // Защита информации. Конфидент. № 2, 2000. С. 48–53.
2. Девянин П. Н., Михальский О. О., Правиков Д. И., Щербаков А. Ю. Теоретические основы компьютерной безопасности: Учеб. пособие для вузов. – М.: Радио и связь, 2000. – 192 с.
3. Проскурин В. Г., Крутов С. В., Мацкевич И. В. Защита в операционных системах: Учеб. пособие для вузов. – М.: Радио и связь, 2000. – 168 с.
4. Гостехкомиссия России. Руководящий документ. Концепция защиты средств вычислительной техники и автоматизированных систем от несанкционированного доступа к информации. – М.: Военное издательство, 1992.
5. Microsoft RPC Heap Corruption Vulnerability – Part II // eEye Digital Security, September 10, 2003, http://www.eeye.com/html/Research/Advisories/AD20030910.html.
«Защита информации. Конфидент». №2, 2004, с. 56-58