його подальших дій і всіх дій його процесів;
адміністратор системи має змогу контролювати всі події, пов'язані з безпекою;
система захищає себе від модифікації системних файлів та системної інформації на стадії виконання.
Систему безпеки можна вивчати як на рівні окремої станції, так і на рівні мережі WNT. У її основі є локальна система безпеки. Розглянемо її структуру (рис. 43.6).
Загальна характеристика локальної системи безпеки. Головні компоненти локальної системи безпеки такі:
процеси входження у систему. Приймають запити користувачів на входження у систему та ініціюють перевіряння повноважень користувача. Процеси входження опрацьовують запити локального або віддаленого користувача;
розпорядник локальної безпеки. Це головна компонента керування системи безпеки. Вона розпізнає користувача, створює для нього маркери доступу, керує політикою контролю та реєструє котрольні повідомлення монітора безпеки у спеціальному журналі;
диспетчер бюджету безпеки підтримує базу даних бюджетів користувачів та груп, взаємодіє з розпорядником локальної безпеки;
монітор безпеки. На відміну від попередніх компонент, він працює у привілейованому режимі, перевіряє правомірність звертання процесу до ресурсу кожного разу під час спроби звертання і дає або не дає дозволу. Отже, монітор безпеки реалізує політику безпеки на нижньому рівні.
Головні принципи організації локальної системи безпеки. Призначенням системи безпеки WNT є контроль за доступом до ресурсів системи. У спеціальній БД системи, зберігається інформація про користувачів, їхні групи, ресурси та права доступу. Процеси, що виконуються у WNT, асоціюються з певним користувачем, який їх запустив (діють від його імені).
Аналогічно до інших систем безпеки адміністратор може задавати права доступу до ресурсів. Перелік прав залежить від типу ресурсу. Наприклад, для файлу можуть бути такі права: ,,
читання (read); |
знищення (delete);
записування (write);
змінювання прав (change permission);
виконання (executive);
монопольне використання (take ownership); ¦ *
відсутність доступу (no access).
Як бачимо з переліку, ці права суттєво відрізняються від прав ОС Windows 95. Особливе значення мають права монопольного використання та явного задания відсутності доступу, вони ліпше захищають ОС.
Крім звичайних прав доступу до ресурсів, у WNT передбачені права на виконання певних системних дій (архівування, зміна системного часу, запуск системи та ін.).
Кожного користувача та групу ідентифікують за допомогою унікального ідентифікатора безпеки (Security ID (SID)). Коли користувач входить у систему, створюється маркер доступу. У нього записують ім'я та SID користувача, перелік назв груп, до яких він належить, та їхні SID. Після цього кожен процес, що виконується у системі від імені користувача, має копію маркера доступу. Інформацію з нього використовують для перевірки прав доступу процесу до ресурсу. Такий процес називають суб 'єктом користувача. Кажуть, що він діє в контексті безпеки цього користувача. Це означає, що суб'єкт має права доступу до ресурсів, визначені правами цього користувача.
Деякі серверні процеси WNT можуть діяти від імені конкретного користувача. У цьому випадку вони тимчасово позичають атрибути його безпеки. Таку техніку називають перевтіленням (impersonation). Наприклад, коли сервер звертається до ресурсу на вимогу процесу-суб'єкта користувача, то відбувається перевтілення, і права доступу тимчасово переходять до серверного процесу.
Процес входження користувача у систему. Користувач, розпочинаючи роботу у системі, входить у неї за допомогою набору клавіш Ctrl-Alt-Del. Ця комбінація захищає процес розпізнавання від програм, що імітують процес входження користувача з метою зафіксувати його ім'я та пароль. Потім користувач уводить своє ім'я та пароль. Ці дані надходять у пакет розпізнавання, який перевіряє базу даних бюджетів. Якщо бюджет є локальним (тобто міститься у локальній базі), то відбувається порівняння імен та паролів, якщо ж його не виявлено у базі, то пакет розпізнавання може або викликати інший, альтернативний пакет розпізнавання, або видати помилку.
Після підтвердження достовірності користувача Диспетчер бюджету безпеки повертає пакетові SID користувача та всіх його груп. Ця інформація потрапляє до локального розпорядника безпеки, який і створює маркер доступу. Сеанс входження у систему, створений попередньо пакетом розпізнавання, викликає підсистему Win32, яка формує процес-суб'єкт для користувача з приєднаним маркером доступу.
Права доступу до об'єктів. Об'єктам ОС WNT можна призначити права доступу. Кожен об'єкт має спеціальний дескриптор безпеки - базу даних з такими структурними елементами:
ідентифікатор безпеки власника (користувач або група);
контрольований список керування доступом (Access Control List (ACL)), що ідентифікує об'єкти та права доступу їх до конкретного об'єкта;
системний ACL, що керує переліком контрольних подій та повідомлень, які генерує система.
Серед об'єктів виділяють контейнерні (можуть містити інші об'єкти) та неконтейнерні. Якщо якісь права призначені контейнерному об'єкту (наприклад, каталогу), то їх можуть успадковувати всі вкладені об'єкти (каталоги та файли). Успадкування можна обмежити під час задания прав.
Кожен список ACL складається з окремих елементів АСЕ (Access Control Entry). АСЕ визначає права доступу для окремого користувача або групи. Є три типи АСЕ:
Access Allowed — дозволяє доступ згідно з маскою доступу;
Access Denied- забороняє доступ згідно з маскою доступу;
System A udit — використовують для генерування повідомлень, які записують у журнал безпеки.
Крім типу, кожен АСЕ має маску доступу - перелік наявних прав доступу. Конкретні права у ньому можуть залежати від типу об'єкта (специфічні типи) та не залежати від нього (стандартні типи). Набори специфічних та стандартних прав доступу формують загальні (geтипи прав доступу.
Права доступу у разі звертання процесу в контексті певного користувача до певного об'єкта перевіряють так. Процес формує запит до об'єкта, тобто визначає потрібну маску доступу запиту - набір операцій, які він просить виконати з об'єктом. Ідентифікатори об'єкта, процесу та маска доступу надходять до монітора безпеки, який по черзі переглядає окремі АСЕ зі списку ACL об'єкта, керуючись такими