
- •Безпека інформаційно- комунікаційних систем
- •Isbn 966-552-167-5
- •1.1. Термінологія
- •1.1.1. Системи, в яких здійснюється захист інформації
- •1.1.2. Завдання захисту інформації
- •1.1.3. Загрози і вразливості
- •1.1.4. Комплексна система захисту інформації
- •1.1.5. Об'єкти захисту та їхні властивості
- •1.1.6. Розроблення й оцінювання захищених систем
- •1.2. Загрози безпеці інформації
- •1.2.1. Класифікація загроз
- •1.2.2. Перелік типових загроз безпеці
- •1.2.3. Класифікація атак
- •1.2.4. Методика класифікації загроз stride
- •1.2.5. Модель загроз
- •1.3. Порушники
- •1.3.1. Визначення терміну «хакер»
- •1.3.2. Наслідки віддій порушників
- •1.3.3. Модель порушника
- •2.1. Рівні інформаційно-комунікаційної системи
- •2.2. Функціональні сервіси безпеки і механізми, що їх реалізують
- •2.2.1. Таксономія функцій систем захисту
- •2.3. Основні підсистеми комплексу засобів захисту
- •2.3.1. Підсистема керування доступом
- •2.3.2. Підсистема ідентифікації й автентифікації
- •2.3.3. Підсистема аудита
- •Підсистема забезпечення цілісності
- •Криптографічна підсистема
- •3.1. Історична довідка
- •3.2. Основні поняття
- •3.3.1. Симетричне шифрування
- •3.3.2. Асиметричне шифрування
- •4.1. Загальні поняття теорії захисту інформації
- •4.2. Позначення, аксіоми та визначення
- •4.3. Основні типи політик безпеки
- •4.4. Математичні моделі безпеки
- •4.4.1. Моделі дискреційної політики безпеки
- •4.4.2. Моделі мандатної політики безпеки
- •5.1. Передумови виникнення вразливостей у комп'ютерних системах
- •5.2. Класифікація вад захисту
- •5.2.1. Класифікація вад захисту за причиною їх появи
- •5.2.2. Класифікація вад захисту за їх розміщенням у системі
- •5.2.3. Класифікація вад захисту за етапами їх появи
- •5.3. Класифікація помилок, що виникають у процесі програмної реалізації системи
- •5.4. Помилки переповнення буфера
- •5.4.1. Переповнення буфера у стеку
- •5.4.2. Переповнення буфера у статичній або динамічній пам'яті
- •5.4.3. Помилка переповнення в один байт
- •5.5. Помилки оброблення текстових рядків
- •5.5.1. Використання конвеєра
- •5.5.2. Переспрямування введення-виведення
- •5.5.3. Спеціальні символи
- •5.6. Люки
- •5.6.1. Режим debug у програмі sendmail
- •6.1. Класифікація шкідливого програмного забезпечення
- •6.2. Програмні закладки
- •6.2.1. Функції програмних закладок
- •6.2.2. Шпигунські програми
- •6.2.3. «Логічні бомби»
- •6.2.4. Люки — утиліти віддаленого адміністрування
- •6.2.5. Несанкціонована робота з мережею
- •6.2.6. Інші програмні закладки
- •6.3. Комп'ютерні віруси
- •6.3.1. Файлові віруси
- •6.3.2. Завантажувальні віруси
- •6.3.3. Макровіруси
- •6.3.4. Скриптові віруси
- •6.3.5. Захист від комп'ютерних вірусів
- •6.4. Мережні хробаки
- •6.4.1. Класифікація мережних хробаків
- •6.4.2. Хробак Морріса
- •6.4.3. Сучасні мережні хробаки
- •6.5. «Троянські коні»
- •6.5.1. Соціальна інженерія
- •6.5.2. Класифікація «троянських коней»
- •6.5.3. Шпигунські троянські програми
- •6.5.4. Троянські інсталятори
- •6.5.5. «Троянські бомби»
- •6.6. Спеціальні хакерські утиліти
- •6.6.1. Засоби здійснення віддалених атак Засоби проникнення на віддалені комп'ютери
- •6.6.2. Засоби створення шкідливого програмного забезпечення
- •6.6.3. Створення засобів атак
- •7.1. Призначення стандартів інформаційної безпеки
- •7.2. Стандарти, орієнтовані на застосування військовими та спецслужбами
- •7.2.1. «Критерії оцінювання захищених комп'ютерних систем» Міністерства оборони сша
- •7.2.2. Інтерпретація і розвиток tcsec
- •7.2.3. Керівні документи Державної технічної комісії при Президенті Російської Федерації
- •7.3. Стандарти, що враховують специфіку вимог захисту в різних системах
- •7.3.1. Європейські критерії безпеки інформаційних технологій
- •7.4. Стандарти, що використовують
- •7.4.1. Концепція профілю захисту
- •7.4.2. Федеральні критерії безпеки
- •8.1. Законодавча і нормативна база захисту
- •8.1.1. Закон України «Про захист інформації
- •8.1.2. Нормативні документи системи
- •8.2. Оцінювання захищеності інформації,
- •8.2.1. Особливості термінології
- •8.2.2. Критерії захищеності інформації в комп'ютерних системах від несанкціонованого доступу
- •8.2.3. Класифікація автоматизованих систем
- •8.3. Керівні документи з вимогами до захисту інформації в інформаційних системах певних типів
- •8.3.1. Вимоги із захисту конфіденційної інформації
- •8.3.2. Вимоги до захисту інформації веб-сторінки від несанкціонованого доступу
- •9.1. Основні відомості
- •9.2. Базові поняття
- •9.3.2. Оцінювання об'єкта за «Загальною методологію»
- •9.3.3. Матеріали, необхідні для проведення кваліфікаційного аналізу
- •9.3.4. Три етапи здійснення кваліфікаційного аналізу
- •9.4. Структура основних документів «Загальних критеріїв»
- •9.4.1. Профіль захисту
- •9.4.2. Завдання з безпеки
- •1. Вступ.
- •5. Вимоги безпеки.
- •8. Обґрунтування.
- •10.1. Завдання апаратного захисту
- •10.2. Підтримка керування пам'яттю
- •10.2.1. Віртуальні адреси
- •10.2.2. Віртуальна пам'ять
- •10.2.3. Трансляція адрес
- •10.4. Особливості архітектури процесорів Intel х86
- •10.4.2. Селектори та дескриптори сегментів і сторінок
- •10.5.2. Сегментно-сторінковий розподіл пам'яті
- •10.6. Керування задачами
- •10.6.1. Виклик процедур
- •10.6.2. Виклик задач
- •10.6.3. Привілейовані команди
- •11.1. Загрози безпеці операційних систем
- •11.1.1. Сканування файлової системи
- •11.1.2. Викрадення ключової інформації
- •11.1.3. Добирання паролів
- •11.1.4. Збирання сміття
- •11.1.5. Перевищення повноважень
- •11.1.6. Програмні закладки
- •11.1.7. «Жадібні» програми
- •11.2. Поняття захищеної операційної системи
- •11.2.1. Підходи до побудови захищених операційних систем
- •11.2.2. Принципи створення захищених систем
- •11.2.3. Адміністративні заходи захисту
- •11.2.4. Політика безпеки
- •11.3.1. Основні функції кзз
- •11.3.2. Розмежування доступу
- •11.3.3. Ідентифікація, автентифікація й авторизація
- •11.3.4. Аудит
- •12.1. Історія створення unix
- •12.2. Архітектура системи
- •12.3.1. Модель безпеки системи unix
- •12.3.2. Підсистема ідентифікації й автентифікації
- •12.3.3. Підсистема розмежування доступу
- •12.3.4. Підсистема реєстрації
- •12.4. Адміністрування засобів безпеки unix 12.4.1. Особливості адміністрування
- •12.4.2. Утиліти безпеки
- •12.4.3. Характерні вразливості системи unix
- •13.1. Основні відомості про систему
- •13.1.1. Стисло про історію створення системи
- •13.1.2. Відповідність вимогам стандартів безпеки
- •13.2.1. Основні концепції
- •13.2.2. Компоненти системи захисту
- •13.3. Розмежування доступу
- •13.3.1. Основні принципи реалізації системи розмежування
- •13.3.2. Суб'єкти доступу Windows
- •13.3.3. Об'єкти доступу Windows
- •13.3.4. Стандартні настроювання прав доступу
- •13.3.5. Ідентифікація й автентифікація
- •13.3.6. Реалізація дискреційного керування доступом
- •13.4. Аудит
- •14.1. Обґрунтування застосування захищених ос для створення систем оброблення конфіденційної інформації
- •14.2. Система Trusted Solaris
- •14.2.1. Основні характеристики середовища Trusted Solaris
- •14.2.2. Керування доступом у середовищі Trusted Solaris
- •14.2.3. Окреме зберігання позначеної мітками
- •14.2.4. Адміністрування безпеки у середовищі Trusted Solaris
- •14.3. Операційна система Фенікс
- •14.3.1. Архітектура системи
- •14.3.2. Засоби захисту
- •14.3.3. Дискреційна модель ієрархічного керування
- •14.3.4. Засоби керування доступом
- •14.3.5. Перегляд протоколу аудита
- •14.3.5. Програмні інтерфейси системи
- •14.3.7. Застосування операційної системи Фенікс
- •15.1. Основні відомості про комп'ютерні мережі
- •15.1.1. Відкриті системи
- •15.1.2. Модель взаємодії відкритих систем
- •15.1.3. Стеки протоколів
- •15.2. Інтернет
- •15.2.1. Організація
- •15.2.2. Адресація
- •15.2.3. Маршрутизація
- •15.3. Загрози безпеці інформації у мережах
- •15.4. Безпека взаємодії відкритих систем
- •15.4.1. Сервіси безпеки
- •15.4.2. Специфічні механізми безпеки
- •15.4.3. Універсальні механізми безпеки
- •15.4.5. Подальший розвиток міжнародних стандартів
- •16.1. Протоколи прикладного рівня
- •16.1.1. Протокол Telnet
- •16.1.2. Протокол ftp
- •16.1.3. Мережні служби unix
- •16.2. Транспортні протоколи
- •16.2.1. Протокол udp
- •16.2.2. Протокол tcp
- •16.3. Протокол ip
- •16.3.1. Призначення й можливості протоколу iPv4
- •16.3.2. Атаки на протокол iPv4, пов'язані з адресацією Підміна адреси відправника
- •16.3.3. Атаки, що ґрунтуються на помилках оброблення фрагментованих пакетів
- •16.3.4. Можливості, закладені у протокол iPv6
- •16.4.1. Особливості протоколу
- •16.4.2. Модель загроз
- •16.4.3. Механізми захисту
- •16.4.4. Рішення з безпеки
- •Interdomain Route Validation
- •16.4.5. Оцінювання захищеності
- •16.5. Протоколи керування мережею 16.5.1. Протокол ісмр
- •16.5.2. Протокол snmp
- •17.1. Система електронної пошти
- •17.1.1. Архітектура системи електронної пошти
- •17.1.2. Формат повідомлення електронної пошти
- •17.1.3. Протокол smtp
- •17.1.4. Протокол рорз
- •17.1.5. Протокол імар4
- •17.1.6. Загрози, пов'язані з використанням електронної пошти
- •17.1.7. Анонімне відсилання електронної пошти
- •17.1.8. Атаки через систему електронної пошти
- •17.2.1. Принципи веб-технології
- •17.2.2. Протокол http
- •17.2.3. Динамічні сторінки
- •17.2.4. Уразливості серверного програмного забезпечення
- •17.2.5. Уразливості у сценаріях
- •17.2.7. Міжсайтовий скриптінг
- •17.2.8. Захист сервера від атак
- •17.2.9. Атака на клієнта
- •17.2.10. Безпека Java
- •18.1. Архітектура захищених мереж
- •18.1.1. Протидія прослуховуванню трафіку
- •18.1.2. Сегментація мережі
- •18.1.3. Резервування мережного обладнання і каналів зв'язку
- •18.2. Міжмережні екрани
- •18.2.1. Можливості міжмережних екранів
- •18.2.2. Рівні реалізації
- •18.2.3. Особливості персональних брандмауерів
- •18.2.4. Недоліки міжмережного екрана
- •18.3. Системи виявлення атак
- •18.3.1. Можливості систем виявлення атак
- •18.3.2. Різні типи систем виявлення атак
- •18.3.3. Інформаційні джерела
- •18.3.4. Аналіз подій у системах виявлення атак
- •18.3.5. Відповідні дії систем виявлення атак
- •18.4. Додаткові інструментальні засоби
- •18.4.1. Системи аналізу й оцінювання вразливостей
- •18.4.2. Перевірка цілісності файлів
- •Передавання інформації через захищені мережі
- •19.1. Захист інформації, що передається відкритими каналами зв'язку
- •19.2. Віртуальні захищені мережі
- •19.2.1. Різні види віртуальних захищених мереж
- •Vpn віддаленого доступу
- •19.2.2. Проблеми побудови віртуальних захищених мереж
- •19.3. Рівні реалізації віртуальних захищених мереж
- •19.3.1. Захист віртуальних каналів на сеансовому рівні
- •19.3.2. Захист віртуальних каналів на мережному рівні
- •19.3.3. Захист віртуальних каналів на канальному рівні
- •19.4. Вимоги нормативної бази до реалізації віртуальних захищених мереж в Україні
- •20.1. Порядок проведення робіт зі створення комплексної системи захисту інформації
- •20.1.1. Структура комплексної системи захисту інформації
- •20.1.2. Створення комплексної системи захисту інформації
- •Обґрунтування потреби у створенні системи захисту
- •20.2.2. Обстеження середовищ функціонування
- •20.2.3. Визначення й аналіз можливих загроз безпеці
- •20.2.4. Розроблення політики безпеки
- •20.2.5. Перелік вимог до захищеної системи
- •20.3. Розроблення технічного завдання на створення комплексної системи захисту інформації
- •20.4. Створення і впровадження комплексної системи захисту інформації
- •20.4.1. Розроблення проекту Порядок розроблення проекту
- •20.4.2. Введення комплексної системи захисту інформації в дію та оцінювання захищеності інформації в інформаційно-телекомунікаційних системах
- •20.4.3. Супроводження комплексної системи захисту інформації
- •21.1. Вимоги до кваліфікаційного аналізу
- •21.2. Організація державної експертизи
- •21.2.1. Положення про державну експертизу
- •21.2.2. Рекомендації з оформлення програм і методик проведення експертизи комплексної системи захисту інформації
- •21.3. Сертифікація засобів технічного захисту інформації
- •22.1. «Типове положення про службу захисту інформації в автоматизованій системі»
- •22.1.1. Загальні положення
- •22.1.2. Завдання та функції служби захисту інформації
- •22.1.3. Права й обов'язки служби захисту інформації
- •22.1.4. Взаємодія служби захисту інформації з іншими підрозділами та із зовнішніми організаціями
- •22.1.5. Штатний розклад і структура служби захисту інформації
- •22.1.6. Організація заходів служби захисту інформації та їх фінансування
- •22.2. Рекомендації щодо структури
- •22.2.1. Завдання захисту інформації в ас
- •22.2.2. Класифікація інформації, що обробляють в ас
- •22.2.3. Компоненти ас і технології оброблення інформації
- •22.2.4. Загрози інформації в ас
- •22.2.5. Політика безпеки інформації в ас
- •22.2.6. Календарний план робіт із захисту інформації в ас
- •22.3. Iso/iec 27002 «Інформаційні технології — Методики безпеки — Практичні правила управління безпекою інформації»
- •22.3.1. Загальні відомості про стандарт
- •22.3.2. Структура й основний зміст стандарту
- •22.3.3. Інші стандарти серн 27000
- •Грайворонський Микола Владленович Новіков Олексій Миколайович безпека інформаційно-комунікаційних систем
- •21100, М. Вінниця, вул. 600-річчя, 19.
10.2.3. Трансляція адрес
Трансляцію віртуальних адрес у фізичні може бути виконано в кілька етапів; це залежить від того, яку модель використання пам'яті підтримують апаратні засоби і ОС [92]. Є принципово різні способи трансляції адрес.
Один із них передбачає одноразову трансляцію адрес у момент початкового завантаження програми в пам'ять, після чого у програмі використовуються не віртуальні, а фізичні адреси. Перевага цього способу полягає у тому, що програми виконуються набагато швидше; недоліком є унеможливлення перенесення програмного коду і даних з одного місця фізичної пам'яті в інше.
Інший спосіб — динамічна трансляція адрес. У програмному коді залишаються віртуальні адреси, які транслюються у фізичні під час кожного звернення до оперативної пам'яті. Завдяки динамічній трансляції під час виконання програми програмний код можна перемістити з одного місця фізичної пам'яті в інше.
Нa
рис.
10.3 показано схему трансляції віртуальної
адреси у фізичну для сегментного
розподілу пам'яті.
Рис.
10.4.
Трансляція віртуальної адреси у разі
дворівневої сторінкової організації
пам'яті (зміщення у фізичній сторінці
збігається із зміщенням у віртуальній
сторінці)
Рис.
10.3.
Трансляція віртуальної адреси у разі,
сегментної організації пам'яті (фізична
адреса обчислюється додаванням зміщення
до базової адреси сегмента)
На
рис. 10.4 показано трансляцію віртуальної
адреси у фізичну для сторінкового
розподілу пам'яті. Слід звернути увагу
на легкість формування фізичної адреси:
старші розряди адреси — це номер
фізичної сторінки, а молодші розряди
зміщення, яке автоматично переноситься
з віртуальної адреси, позаяк розміри
і межі віртуальних і фізичних сторінок
збігаються.
Віртуальна
адреса
Розглянемо
схему трансляції адрес для
сегментно-сторінкового розподілу, яку
широко застосовують на практиці, зокрема
у процесорах Intel
х86
(рис. 10.5). Як видно
з
наведеної на рисунку схеми, трансляція
відбувається у два етапи. Спочатку за
схемою сегментного розподілу, обчислюється
лінійна віртуальна адреса, яка потім
транслюється у фізичну адресу за схемою
сторінкового розподілу.
10.3.
Підтримка керування процесами
Сучасні
ОС виконують такі завдання з керування
процесами (задачами) [92, 93]:
створення
і знищення процесів;
забезпечення
процесів необхідними ресурсами;
планування
і диспетчеризація процесів (розподіл
процесорного часу між процесами);
♦
підтримка
взаємодії між процесами.
Деякі
із зазначених завдань виконують виключно
програмні засоби, а деякі реалізовано
частково програмно, а частково апаратно.
Наприклад, створення, знищення і
планування процесів реалізовано
програмно, а диспетчеризацію процесів
— за інтенсивного застосування апаратних
засобів. До завдань планування належать
такі:
визначення
часу, коли буде змінено процес, що
виконується;
вибирання
з черги готових процесів наступного
процесу для виконання.
Рис.
10.5. Трансляція віртуальної адреси у
разі сегментно-сторінкового розподілу
пам'яті
Переключення процесів, тобто звільнення процесора від виконання поперед нього процесу і здійснення всіх необхідних дій для початку виконання наступного процесу, є завданням диспетчеризації.
Виконання всіх цих завдань суттєво впливає на певні аспекти безпеки:
♦ надійність і стабільність роботи ОС;
гарантованість забезпечення процесів необхідними ресурсами;
здатність ОС протистояти некоректним діям з боку окремих процесів, на приклад, спроб:
несанкціонованого доступу до системних ресурсів;
♦ захоплення великих об'ємів ресурсів або їх монополізації;
несанкціонованого запуску нових процесів;
несанкціонованого доступу до ресурсів інших процесів (програмного коду, пам'яті).
Щоб реалізувати керування процесами, використовують дві структури дескриптор процесу і контекст процесу.
Дескриптор процесу — це структура даних, яка містить необхідну для планування процесів інформацію. Операційна система заносить у дескриптор (різні oпeраційні системи підтримують різні формати цієї структури), зокрема, такі дані:
ідентифікатор процесу;
відомості про розташування виконуваного модуля в оперативній пам'яті;
інформацію щодо привілейованості процесу;
дані про пріоритет процесу;
♦ інформацію щодо прав доступу до процесу.
Приклади дескрипторів процесів: у системі UNIX — структура ргос, у систем і Windows — object-process (об'єкт-процес), у системі OS/2 — РСВ (Process Con
trol Block — блок керування процесом), OS/360 — ТСВ (Task Control Block блок керування задачею).
Контекст процесу — це структура даних, яка містить інформацію, необхідну для диспетчеризації процесів. Основним призначенням контексту є збереження всієї інформації, необхідної для поновлення виконання процесу після його переривання. Це, по-перше, стан компонентів комп'ютера в момент переривання процесу, зокрема, вміст регістрів процесора, режим його роботи, прапорці, маски переривань, значення лічильника команд і, по-друге, параметри операційного середовища, а саме: посилання на відкриті файли, дані про незавершені операції введення-виведення, коди помилок системних викликів, що виконуються процесом, тощо. Приклади контекстів процесів: у системі UNIX — структура user, у системі Windows — TSS (Task State Segment).
До функцій захисту, які реалізують за допомогою безпосередньо засобів планування і диспетчеризації процесів, належать:
♦ контроль за виділенням процесам процесорного часу з метою запобігання перевищенню квот або монополізації процесора;
♦ контроль за викликами одними процесами інших задля забезпечення встановлених правил доступу.
Здійснювати контроль за викликами процесів можна, застосовуючи дискреційні та мандатні принципи керування доступом. У першому випадку в дескрипторі процесу має бути передбачена область даних, яка визначає права доступу інших процесів на запуск, зміну стану і пріоритету, знищення цього процесу або інші дії, що можуть бути виконані над дескриптором процесу, коли сам процес не виконується (тобто знаходиться у стані готовності або очікування). Права доступу можуть визначатися за допомогою списку керування доступом. Слід зауважити, що список керування доступом є досить великою структурою, і роботу з ним складно (хоча й можливо) організувати на апаратному рівні.
Набагато легше реалізувати мандатне керування доступом. Така реалізація значно ефективніша, легко досягається апаратними засобами, тому не лише швидка, але й надійна, через що її частіше застосовують. Кожному процесу надається певний рівень виконання, який позначається цілим числом. У найпростішому випадку процеси з нижчим рівнем виконання не зможуть викликати програмний код, якому присвоєний вищий рівень, а також отримати доступ до пов'язаних з ним структур даних. Таким чином утворюються так звані кільця захисту. Коли їх реалізують апаратно, максимальна кількість кілець захисту визначається за допомогою апаратури (центрального процесора), але ОС може і не використовувати ці можливості повною мірою. Більшість RISC- процесорів підтримують лише два рівні виконання процесів, тобто два кільця захисту, — рівень ядра (Kernel Mode) і рівень користувача (User Mode), або рівень прикладних програм. Відповідно й ОС, розроблені для таких процесорів (різні версії UNIX і Windows), підтримують лише два рівні виконання процесів. Популярні процесори Intel х86 (починаючи з 80286) підтримують чотири кільця захисту. Є такі ОС, що повністю використовують цю властивість процесорів (найпопулярнішою з них була OS/2).
Захист дескрипторів і контекстів процесів від несанкціонованого доступу здійснюється засобами контролю доступу до областей оперативної пам'яті, оскільки ці структури переважно розташовані саме в системній області оперативної пам'яті.