Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OS(методичка).docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
403.88 Кб
Скачать

3.8.4. Захист даних

Засоби безпеки в Windows NT/2000/XP являють собою окрему підсистему, яка забезпечує захист не тільки файлів, але і інших типів системних об'єктів. Файли і каталоги NTFS являють собою найбільш типові приклади об'єктів, що захищаються.

Як відомо, Windows дозволяє використовувати різні файлові системи, при цьому можливості захисту даних визначаються архітектурою конкретної файлової системи. Наприклад, якщо на дисковому томі використовується система FAT (де, як нам відомо, ніяких засобів захисту не

передбачено), то Windows може хіба що обмежити доступ до всього того, але не до окремих файлів і каталогів.

3.8.4.1. Аутентифікація користувача

Важливим елементом будь-якої системи захисту даних є процедура входу в систему, при якій виконується аутентифікація користувача. У Windows NT для виклику діалогу входу в систему використовується відома «комбінація з трьох пальців» - Ctrl + Alt + Del. Як стверджують розробники, ніяка «троянська" програма не може перехопити обробку цієї комбінації і використовувати її з метою колекціонування паролів.

Не хоче хто-небудь спробувати?

Система шукає введене ім'я користувача спочатку в списку користувачів даного комп'ютера, а потім і на інших комп'ютерах поточного домену локальної мережі. У випадку, якщо ім'я знайдено і пароль співпав, система отримує доступ до облікового запису (account) даного користувача.

На підставі відомостей з облікового запису користувача система формує структуру даних, яка називається маркером доступу (access token). Маркер містить ідентифікатор користувача (SID, Security IDentifier), ідентифікатори всіх груп, в які включений даний користувач, а також набір привілеїв, якими володіє користувач.

Привілеями називаються права загального характеру, не пов'язані з конкретними об'єктами. До числа привілеїв, доступних тільки адміністратору, відносяться, наприклад, права на встановлення системного часу, на створення нових користувачів, на привласнення чужих файлів. Деякі скромні привілеї звичайно надаються всім користувачам (наприклад, такі, як право налагоджувати процеси, право отримувати повідомлення про зміни у файловій системі).

У подальшій роботі, коли користувачеві має бути наданий доступ до яких-небудь ресурсів, що захищаються, рішення про доступ приймається на підставі інформації з маркера доступу.

3.8.4.2. Дескриптор захисту

Для будь-якого об'єкта, що захищається Windows (файла, каталогу, диска, пристрої, семафора, процесу тощо) може бути задана спеціальна структура даних - атрибути захисту.

Основним змістом атрибутів захисту є інша структура - дескриптор захисту. Цей дескриптор містить наступні дані:

· Ідентифікатор захисту (SID) власника об'єкта;

· Ідентифікатор захисту первинної групи власника об'єкта;

· Користувальницький («дискреційний», «розмежувальний») список управління доступом (DACL, Discretionary Access Control List);

· Системний список управління доступом (SACL, System Access Control List).

Користувальницький список управляє дозволами і заборонами доступу до даного об'єкта. Змінювати цей список може тільки власник об'єкта.

Системний список управляє тільки аудитом доступу даному об'єкту, тобто задає, які дії користувачів по відношенню до даного об'єкту повинні бути запротокольовані в системному журналі. Змінювати цей список може тільки користувач, що має права адміністратора системи.

У Windows, на відміну від багатьох інших ОС, адміністратор не всесильний. Він не може заборонити або дозволити кому б то не було, навіть самому собі, доступ до чужого файлу. Інша справа, що адміністратор має право оголосити себе власником будь-якого файлу, але потім він не зможе повернути файл колишньому хазяїну. Подібні обмеження випливають з розуміння, що адміністратор теж не завжди ангел і, хоча він повинен мати в системі великі права, його дії слід хоч якось контролювати.

Обидва списки управління доступом мають однакову структуру, їх основною частиною є масив записів управління доступом (ACE, Access Control Entity).

Розглянемо структуру запису ACE. Вона містить:

· Тип ACE, який може бути одним з наступних: дозвіл, заборона, аудит;

· Прапори, уточнюючі особливості дії даної ACE;

· Бітова маска видів доступу, яка вказує, які саме дії слід дозволити, заборонити чи піддати аудиту;

· Ідентифікатор (SID) користувача або групи, чиї права визначає дана ACE.

Більш цікавий користувальницький список. Він може містити лише записи дозволу і заборони. На початку списку завжди йдуть забороняють записи, потім дозволяють.

Коли користувач запитує доступ до об'єкта (тобто, наприклад, програма, запущена цим користувачем, викликає функцію відкриття файлу), відбувається перевірка прав доступу. Вона виконується на основі порівняння маркера доступу користувача зі списком DACL. Система переглядає по порядку всі записи ACE із DACL, для кожної ACE визначає записаний в ній SID і звіряє, чи не є він ідентифікатором поточного користувача або однієї з груп, куди входить цей користувач. Якщо ні, то дана ACE не має до нього відношення і не враховується. Якщо так, то виконується порівняння прав, необхідних користувачу для виконання запитаної операції з маскою видів доступу з ACE. При цьому права аналізуються вельми детально: наприклад, відкриття файлу на читання увазі наявність прав на читання даних, на читання атрибутів (в тому числі власника і атрибутів захисту), на використання файлу як об'єкта синхронізації (див. п. 4.5.5.2).

Якщо у забороняє ACE знайдеться хоча б один одиничний біт в позиції, відповідної одному із запитаних видів доступу, то вся операція, розпочата користувачем, вважається забороненою і подальші перевірки не проводяться.

Якщо такі біти будуть знайдені в роздільною ACE, то перевірка наступних ACE виконується до тих пір, поки не будуть вирішені і всі інші запитані види доступу.

Як видумаєте, чому в списку DACL спочатку йдуть забороняють ACE, а тільки потім вирішують?

Таким чином, кажучи коротко, користувач отримає доступ до об'єкта тільки в тому випадку, якщо всі запитані їм види доступу явним чином дозволені і жоден з них не заборонений.

У роки перебудови багато писалося про двох протилежних принципах: «заборонено все, що не дозволено» або «дозволено все, що не заборонено». У Windows все набагато суворіше: заборонено все, що заборонено, і все, що не дозволено.

Список DACL з усіма необхідними дозволами і заборонами може бути встановлений програмно при створенні файлу, а згодом програмно ж може бути змінений власником. Можна також змінювати дозволи в діалозі, скориставшись вікном властивостей файлу.

Є також два крайніх випадку. Список DACL може зовсім отсутствовать (для цього достатньо, наприклад, при створенні файлу вказати NULL замість атрибутів захисту), при цьому права доступу не перевіряються, всі дії дозволені всім користувачам. Список DACL може бути присутнім, але мати нульову довжину (немає жодної ACE). Як випливає із загальних правил, у цьому випадку в доступі буде відмовлено всім, у тому числі і господаря файлу.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]