ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 04.05.2024

Просмотров: 45

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

В ОК об’єкт оцінки розглядається в контексті середовища безпеки, яка характеризується певними умовами і загрозами.

У свою чергу, загрози характеризуються наступними параметрами:

  • джерело загрози;

  • метод дії;

  • вразливі місця, які можуть бути використані;

  • ресурси (активи), які можуть постраждати.

Вразливі місця можуть виникати через недолік в:

  • вимогах безпеки;

  • проектуванні;

  • експлуатації.

Слабкі місця по можливості слід усунути, мінімізувати або хоча б постаратися обмежити можливий збиток від їх навмисного використовування або випадкової активізації.

З погляду технології програмування в ОК використаний застарілий бібліотечний (не об’єктний) підхід. Щоб, проте, структурувати простір вимог, в "Загальних критеріях" введена ієрархія клас-семейство-компонент-елемент.

Класи визначають саме загальне, "наочне" угрупування вимог (наприклад, функціональні вимоги підзвітності).

Сімейства в межах класу розрізняються по строгості і іншим нюансам вимог.

Компонент - мінімальний набір вимог, що фігурує як ціле.

Елемент - неподільна вимога.

Як і між бібліотечними функціями, між компонентами ОК може існувати залежність. Вони виникають, коли компонент сам по собі недостатній для досягнення мети безпеки. Взагалі кажучи, не всі комбінації компонентів мають сенс, і поняття залежності якоюсь мірою компенсує недостатню виразність бібліотечної організації, хоча і не замінює об’єднання функцій в змістовні об’єктні інтерфейси.

Як указувалося вище, за допомогою бібліотек можуть формуватися два види нормативних документів: профіль захисту і завдання по безпеці.

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

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

Вище ми відзначали, що в ОК немає готових класів захисту. Сформувати класифікацію в термінах "Загальних критеріїв" - значить визначити дещо ієрархічно впорядкованих (що містять вимоги, що посилюються) профілів захисту, в максимально можливому ступені використовуючих стандартні функціональні вимоги і вимоги довір’я безпеки.


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

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

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


3.2 Функціональні вимоги

Функціональні вимоги згруповані на основі виконуваної ними ролі або обслуговуваній меті безпеки. Всього в "Загальних критеріях" представлено 11 функціональних класів, 66 сімейств, 135 компонентів. Це, звичайно, значно більше, ніж число аналогічних єств в "Оранжевій книзі".

Перерахуємо класи функціональних вимог ОК:

  • ідентифікація і аутентифікація;

  • захист даних користувача;

  • захист функцій безпеки (вимоги відносяться до цілісності і контролю даних сервісів безпеки і реалізовуючих їх механізмів);

  • управління безпекою (вимоги цього класу відносяться до управління атрибутами і параметрами безпеки);

  • аудит безпеки (виявлення, реєстрація, зберігання, аналіз даних, що зачіпають безпеку об’єкту оцінки, реагування на можливе порушення безпеки);

  • доступ до об’єкту оцінки;

  • приватность (захист користувача від розкриття і несанкціонованого використовування його ідентифікаційних даних);

  • використовування ресурсів (вимоги до доступності інформації);

  • криптографічна підтримка (управління ключами);

  • зв’язок (аутентифікація сторін, що беруть участь в обміні даними);

  • довірений маршрут/канал (для зв’язку з сервісами безпеки).

Опишемо докладніше два класи, демонструючі особливості сучасного підходу до ІБ.

Клас "Пріватность" містить 4 сімейства функціональних вимог.

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

Псевдонімность. Нагадує анонімність, але при вживанні псевдоніма підтримується посилання на ідентифікатор користувача для забезпечення підзвітності або для інших цілей.

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


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

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

Відмовостійкість. Вимоги цього сімейства направлені на збереження доступності інформаційних сервісів навіть у разі збою або відмови. В ОК розрізняються активна і пасивна відмовостійкість. Активний механізм містить спеціальні функції, які активізуються у разі збою. Пасивна відмовостійкість має на увазі наявність надмірності з можливістю нейтралізації помилок.

Обслуговування по пріоритетах. Виконання цих вимог дозволяє управляти використовуванням ресурсів так, що низькопріоритетним операціям не можуть перешкодити високопріоритетним.

Розподіл ресурсів. Вимоги направлені на захист (шляхом вживання механізму квот) від несанкціонованої монополізації ресурсів.

Ми бачимо, що "Загальні критерії" - дуже продуманий і повний документ з погляду функціональних вимог. В той же час, хотілося б звернути увагу і на деякі недоліки.

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

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

На жаль, в "Загальних критеріях" відсутні архітектурні вимоги, що є природним слідством вибраного старомодного підходу програміста "від" низу до верху. На наш погляд, це серйозне упущення. Технологічність засобів безпеки, проходження загальновизнаним рекомендаціям по протоколах і програмних інтерфейсах, а також апробованих архітектурних рішеннях, таким як менеджер/агент, - необхідні якості виробів інформаційних технологій, призначених для підтримки критично важливих функцій, до числа яких, безумовно, відносяться функції безпеки. Без розгляду інтерфейсних аспектів системи виявляються нерозширюваними і ізольованими. Очевидно, з практичної точки зору це неприпустимо. В той же час, забезпечення безпеки інтерфейсів - важлива задача, яку бажано вирішувати одноманітно.