Модель Бела — ЛаПадули
Модель Бела — ЛаПадули — модель контролю та керування доступом, яка заснована на мандатній моделі керування доступом. У моделі аналізуються умови, при яких неможливе утворення інформаційних потоків від суб'єктів з вищим рівнем доступу до суб'єктів з нижчим рівнем доступу.
Класична модель Бела — ЛаПадули описана у 1975 р. співробітниками MITRE Corporation Девідом Белом та Леонардом ЛаПадулою. До створення моделі їх підштовхнула система безпеки при роботі з таємними документами уряду США[1][2][3]. Сутність системи полягає у тому, що кожному суб'єкту (особі, яка працює з документами) і об'єкту (документу) надавалась мітка конфіденційності, починаючи з найвищої («Top Secret») до найнижчої («Unclassified»). Причому суб'єкт, якому дозволено доступ до об'єктів з нижчою міткою конфіденційності, не може отримати доступ до об'єкта з вищою міткою конфіденційності. Також суб'єкту забороняється запис у об'єкти з нижчою міткою конфіденційності.
Модель Бела — ЛаПадули є моделлю розмежування доступу до інформації, що захищається. Вона описується скінченним автоматом з допустимим набором станів, у яких може знаходитись інформаційна система. Усі елементи у складі інформаційної системи поділені на суб'єкти і об'єкти. Кожному суб'єкту приписується рівень доступу, який відповідає рівню конфіденційності. Аналогічно об'єкту надається рівень таємності. Поняття захищеної визначається наступним чином: кожен стан системи повинен відповідати політиці безпеки, встановленої для даної інформаційної системи. Перехід між станами описується функціями переходу. Система знаходиться у безпечному стані тільки у тому випадку, коли у кожного суб'єкта наявний доступ тільки до тих об'єктів, до яких від дозволений на основі поточної політики безпеки. Для визначення права доступу суб'єкта до об'єкта рівень доступу суб'єкта порівнюється з рівнем таємності об'єкта, і на підставі цього приймається рішення щодо надання запитаного рівня доступу. Набори рівень доступу/рівень таємності описуються матрицею доступу. Основними правилами, що забезпечують розмежування доступу, є:
Суб'єкт з рівнем доступу може читати інформацію з об'єкта з рівнем таємності тоді і тільки тоді, коли перевищує . Це правило також відоме під назвою «Немає читання зверху» (No read up, NRU). Наприклад, суб'єкт, який має доступ лише до нетаємних даних, спробує прочитати об'єкт з рівнем «цілком таємно», то йому буде відмовлено.
Сутність властивості ★ (читається як «властивість зірочка») полягає у тому, що суб'єкт з рівнем доступу s може писати інформацію у об'єкт з рівнем таємності xо тільки якщо xо перевищує . Це правило також відоме під назвою «Немає запису вниз» (No write down, NWD). Наприклад, якщо суб'єкт, який має рівень доступу «цілком таємно» спробує записати у об'єкт з рівнем таємності «таємно», то йому буде відмовлено у цьому.
Сильна властивість ★ є альтернативною властивості ★, у якій суб'єкти можуть писати у об'єкти тільки з тим рівнем таємності, що відповідає рівню доступу суб'єкта. Таким чином, операція запису вгору, присутня при властивості ★, відсутня, а лише наявна операція запису у об'єкти з тим же рівнем доступу. Сильна властивість ★ зазвичай згадується у контексті багаторівневих систем керування базами даних і обумовлена вимогами цілісності[4]. Сильна властивість ★ передбачається моделлю Біби, де було показано, що стійка цілісність у поєднанні з моделлю Бела — ЛаПадули забезпечується читанням і записом у межах єдиного рівня таємності.
Принцип стійкості моделі Бела — ЛаПадули стверджує, що рівень таємності/доступу суб'єкта або об'єкта не змінюється під час звернення. Є дві форми принципу стійкості. Принцип сильної стійкості стверджує, що рівень безпеки не зміниться під час нормальної роботи системи. Принцип слабкої стійкості стверджує, що рівень безпеки неможливо змінити таким чином, що порушилась політика безпеки. Принцип слабкої стійкості дозволяє дотримуватися принципу мінімуму повноважень у системі. Тобто процеси починаються з низьким рівнем ознайомленості, незалежно від рівня ознайомленості їх власників, і у процесах поступово накопичуються більш високі рівні обізнаності, по мірі потреби у діях, які вимагають підвищення рівня обізнаності.
- — множина суб'єктів;
- — множина об'єктів, ;
- — множина прав доступу, — доступ на читання, — доступ на запис;
- — множина рівнів таємності, — відкрита, — для службового користування, — таємна, — цілком таємна;
- — решітка рівнів секретності, де:
- — оператор, що визначає часткове несуворе відношення порядку рівнів таємності;
- — оператор найменшої верхньої межі;
- — оператор найбільшої нижньої межі.
- — множина станів системи, що представляється у вигляді впорядкованих пар , де:
- — функція рівнів таємності, яка ставить у відповідність кожному об'єкту і суб'єкту в системі певний рівень таємності;
- — матриця поточних прав доступу.
Оператор відношення має наступні властивості:
- Рефлексивність: , полягає тому, що між суб'єктами та об'єктами одного рівня таємності передача інформації дозволена.
- Антисиметричність: , полягає у тому, що якщо інформація може передаватися від суб'єктів та об'єктів рівня A до суб'єктів та об'єктів рівня B, і ід суб'єктів та об'єктів рівня B до суб'єктів та об'єктів рівня A, то ці рівні еквівалентні.
- Транзитивність: , полягає у тому, що якщо інформація може передаватися від суб'єктів і об'єктів рівня A до суб'єктів і об'єктів рівня B, і від суб'єктів і об'єктів рівня B до суб'єктів і об'єктів рівня C, то вона може передаватися від суб'єктів і об'єктів рівня A до суб'єктів і об'єктів рівня C.
Оператор найменшої верхньої межі визначається відношенням:
Оператор найбільшої нижньої межі визначається відношенням: З визначення цих двох операторів можна показати, що для кожної пари існує єдиний елемент найменшої верхньої межі та єдиний елемент найбільшої нижньої межі.
Система у моделі Бела — ЛаПадули складається з наступних елементів:
- — початковий стан системи;
- — множина прав доступу;
- — функція переходу, яка у ході виконання запитів переводить систему із одного стану у інший.
Стан називається досяжним у системі , якщо існує послідовність Початковий стан є досяжним за визначенням.
Стан системи називається безпечним по читанню (або просто безпечним (від простої властивості)), якщо для кожного суб'єкта, який здійснює у цьому стані доступ на читання до об'єкта, рівень доступу суб'єкта переважає рівень таємності об'єкта:
Стан системи називається безпечним по запису (або ★ — безпечним (від властивості ★)), якщо для кожного суб'єкта, який здійснює у цьому стані доступ на запис до об'єкта, рівень таємності об'єкта переважає рівень доступу суб'єкта:
Стан називається безпечним, якщо він є безпечним і по читанню, і по запису.
Система називається безпечною, якщо її початковий стан є безпечним, і усі стани, які можуть бути досягнуті з шляхом застосування скінченної послідовності запитів з , безпечні.
Система безпечна тоді, і тільки тоді, коли виконані наступні умови:
- Початковий стан є безпечним.
- Для будь-якого стану , яке досяжне з шляхом застосування скінченної послідовності запитів з , таких, що и , для виконані умови:
- Якщо и , то
- Якщо и , то
- Якщо и , то
- Якщо и , то
Доказ.
Необхідність твердження.
Нехай система безпечна. У цьому випадку початковий стан безпечний за визначенням. Припустимо, що існує безпечний стан , досяжний із стану , і для даного переходу порушено одну з умов 1-4. Легко помітити, що якщо порушені властивості 1 або 2, то стан не буде безпечним по читанню, а якщо порушені властивості 3 або 4, то стан не буде безпечним по запису. У обох випадках стан не є безпечним.
Достатність твердження.
Система може бути небезпечною у двох випадках:
- У випадку, якщо початковий стан небезпечний. Однак це твердження суперечить умовам теореми.
- Якщо існує небезпечний стан , досяжний з безпечного стану шляхом застосування скінченного числа запитів . Це означає, що на певному проміжному етапі відбувся перехід , де – безпечний стан, а — небезпечний. Однак умови 1-4 роблять такий перехід неможливим.
Ця вразливість полягає у тому, що класична модель не попереджує пониження рівня таємності об'єкта (зміну рівня таємності аж до «відкрита» за бажанням суб'єкта з допуском до «цілком таємно»). Наприклад, нехай суб'єкт з високим рівнем доступу A читає інформацію з об'єкта з тим же рівнем таємності. Далі він понижує свій рівень до низького B, і записує зчитану раніше інформацію у об'єкт з низьким рівнем таємності. Таким чином, хоч модель формально не порушена, було порушено політику безпеки. Для вирішення цієї проблеми вводяться правила:
- Правило сильного спокою — рівні безпеки суб'єктів і об'єктів ніколи не змінюються під час роботи системи.
- Правило слабкого спокою — рівні безпеки суб'єктів і об'єктів ніколи не змінюються під час роботи системи таким чином, щоб порушити задану політику безпеки.
Ця вразливість проявляється у розподілених комп'ютерних системах. Припустимо, суб'єкт A з високим рівнем доступу намагається прочитати інформацію об'єкта B з низьким рівнем таємності. Під час операції між віддаленими об'єктами відбувається утворення потоку інформації від об'єкта, що читається, до суб'єкта, який запитав читання. Цей потік є безпечним, тому що інформація недоступна неавторизованим суб'єктам. Однак у розподіленій системі читання ініціюється запитом від одного об'єкта до іншого. Такий запит створює потік інформації, який направлений від об'єкта з високим рівнем таємності до об'єкта з низьким рівнем таємності, що заборонено класичною моделлю Бела — ЛаПадули.
- ↑ Bell, David Elliott and LaPadula, Leonard J. Secure Computer Systems: Mathematical Foundations (PDF). — MITRE Corporation, 1973. Архівовано з джерела 18 червня 2006. Процитовано 15 січня 2016.
- ↑ Bell, David Elliott and LaPadula, Leonard J. Secure Computer System: Unified Exposition and Multics Interpretation (PDF). — MITRE Corporation, 1976. Архівовано з джерела 29 серпня 2008. Процитовано 15 січня 2016.
- ↑ Bell, David Elliott (December 2005). Looking Back at the Bell-LaPadula Model (PDF). Proceedings of the 21st Annual Computer Security Applications Conference. Tucson, Arizona, USA. с. 337—351. doi:10.1109/CSAC.2005.37. Архів оригіналу (PDF) за 21 лютого 2020. Процитовано 15 січня 2016. Slides — Looking Back at the Bell-LaPadula Model [Архівовано 8 червня 2008 у Wayback Machine.]
- ↑ Sandhu, Ravi S. (1994). Relational Database Access Controls (PDF). Handbook of Information Security Management (1994-95 Yearbook). Auerbach Publishers. с. 145—160. Архів оригіналу (PDF) за 1 вересня 2006. Процитовано 12 серпня 2006.
- Цирлов В. Л. Основы информационной безопасности автоматизированных систем. — Р.: Феникс, 2008. С. 40-44 ISBN 978-5-222-13164-0
- Девянин П. Н. Модели безопасности компьютерных систем: Учебное пособие для студентов высших учебных заведений. — М.: Издательский центр «Академия», 2005. С. 55-66 ISBN 5-7695-2053-1
- Грушо А. А., Тимонина Е. Е. Теоретические основы защиты информации. — М.: Издательство Агентства «Яхтсмен», 1996. С 52-55
- А. П. Баранов, Н. П. Борисенко, П. Д. Зегжда, А. Г. Ростовцев, Корт С. С. — Математические основы информационной безопасности. — М.: Издательство Агентства «Яхтсмен», 1997. C 22-36 https://web.archive.org/web/20110611052603/http://www.ssl.stu.neva.ru/sam/Book97.pdf