Безпека програмного забезпечення
Спеціальність: Кібербезпека
Код дисципліни: 6.125.00.O.047
Кількість кредитів: 4.00
Кафедра: Захист інформації
Семестр: 5 семестр
Форма навчання: денна
Безпека програмного забезпечення
Спеціальність: Кібербезпека
Код дисципліни: 6.125.00.O.046
Кількість кредитів: 4.00
Кафедра: Безпека інформаційних технологій
Лектор: Полотай О.І.
Семестр: 5 семестр
Форма навчання: денна
Завдання: Здатність до використання інформаційно-комунікаційних технологій, сучасних методів і моделей інформаційної безпеки та/або кібербезпеки.
Здатність до використання програмних та програмно-апаратних комплексів засобів захисту інформації в інформаційно-телекомунікаційних (автоматизованих) системах.
Здатність аналізувати, виявляти та оцінювати можливі загрози, уразливості та дестабілізуючі чинники інформаційному простору та інформаційним ресурсам згідно з встановленою політикою інформаційної та/або кібербезпеки.
Результати навчання: • знати основні принципи побудови систем захисту інформації в АС; визначення, класифікацію за функціональною ознакою програмних засобів захисту інформації, їх переваги та недоліки; суть механізмів захисту інформації у лініях зв’язку на основі використання зовнішніх програм;
• володіти основними принципами роботи внутрішніх програм захисту інформації; класифікацію засобів атаки на системи захисту програмного забезпечення;
• використовувати методи захисту програмного забезпечення від копіювання, несанкціонованого доступу та модифікації; місця уразливості програмного забезпечення і програмних засобів захисту; методи і принципи захисту уразливих місць програмного забезпечення і програмних засобів захисту інформації.
• аналізувати стан захищеності інформаційних ресурсів та програмного забезпечення;
• аналізувати можливості несанкціонованого використання програмного забезпечення та здобуття інформації потенційними зловмисниками;
• використовувати отримані знання про відомі методи захисту програмного забезпечення та програмні засоби захисту інформації, проводячи їх порівняльний аналіз та обґрунтований вибір засобів і методів, що відповідають конкретній ситуації;
• користуватися сучасною науково-технічною інформацією з досліджуваних проблем і задач;
• застосовувати сучасні програмні засоби захисту інформації та системи захисту програмного забезпечення на практиці, у ході проведення наукових досліджень, зокрема, під час виконання випускних дипломних робіт;
• організовувати та виконувати практичні дії посадових осіб відділу захисту інформації відповідно до настанов і обов'язків.
Необхідні обов'язкові попередні та супутні навчальні дисципліни: Безпека інфраструктури комп’ютерних мереж
Комплексні системи захисту інформації
Короткий зміст навчальної програми: У межах дисципліни висвітлюються основні способи захисту програмного забезпечення від несанкціонованого доступу, зміни коду та несанкціоонованого використання. становить вивчення основних положень та принципів побудови. Основу дисципліни становить використання програмних та апаратно-програмних засобів забезпечення безпеки програм та даних у комп’ютерних системах та мережах. Опанування сучасних технологій роботи із даними на рівні створення та налагодження програмного забезпечення, засвоєння та використання методів захисту даних та програмного забезпечення є необхідним компонентом підготовки кваліфікованого інженера-програміста (Software Engineer), системного архітектора (System Architect), архітектора програмного забезпечення (Software Architect).
Опис: Системи захисту інформації. Загальні принципи захисту програм від несанкціонованого дослідження.
Вступ в системи захисту інформації. Класифікація систем захисту інформації. Критерії оцінки захищеності інформації. Основні вимоги до розробки систем захисту програмного забезпечення. Принципи побудови систем захисту та їх функції. Основні методи та засоби дослідження програм. Способи вбудовування захисних механізмів в ПЗ. Структура програм, захищених від дослідження
Основні поняття операційної системи, які необхідні для створення систем захисту ПЗ. Загальний огляд систем захисту програмного забезпечення.
Склад та функції операційної системи. BIOS - Базова система введення-виведення. CMOS - Complementary Metal Oxide Semiconductor. Переривання, їх роль та процедура звернення в програмах. Мета і доцільність використання систем захисту. класифікація системи захисту інформації. Пакувальники/шифратори. системи захисту від несанкціонованого копіювання. системи захисту від несанкціонованого доступу. Основні алгоритми захисту програмного забезпечення. показники застосовності та критерії оцінювання СЗПЗ. Основні вимоги до розробки систем захисту ПЗ. Розповсюджені типи захистів та їх недоліки. демо-версії програмного забезпечення. захист обмеженням часу роботи програми. захист, заснований на генерації серійного номера або на використанні зовнішнього “ключового файлу”. Використання унікальних ідентифікаторів носія програмного продукту. навісні захисти. Захисти за допомогою електронних ключів. надання розробникам ПЗ засобів SDK. Аналіз сучасних програмних продуктів для захисту програмного забезпечення.
Сучасний стан засобів подолання систем захисту.
Проблема існування засобів зламу захистів ПЗ. Класифікація засобів подолання СЗПЗ. Програмні оболонки операційних систем. Програми-монітори. Сервісні програми операційних систем. Програми статичного та динамічного аналізу програми статичної та динамічної модифікації. програми-емулятори. Апаратні засоби, що полегшують задачу зламу СЗПЗ. програми розпакування, дешифрування та криптоаналізу.
Захист від несанкціонованого копіювання. Методи захисту програмного забезпечення.
Методи розповсюдження програмного забезпечення. Мотиви захисту програмного забезпечення. Реєстраційні коди. Апаратні ключі. Навісні захисти (протектори). Захист від несанкціонованого копіювання. Стеганографічний захист даних. Криптографічний захист програмного забезпечення.
Статичний аналіз шкідливого програмного забезпечення.
Визначення типу файлу за допомогою ручного методу. Визначення типу файлу за допомогою інструментальних засобів. Визначення типу файлу за допомогою Python. Зчитування інформації за допомогою цифрових відбитків. Генерування криптографічної хеш-функції з використанням інструментальних засобів. Визначення криптографічної хеш-функції у Python. Багаторазове антивірусне сканування Вилучення рядків. Визначення обфускування файлу. Перевірка інформації про PE-заголовок. Порівняння та класифікація шкідливих програм.
Динамічний аналіз шкідливого програмного забезпечення..
Огляд тестового середовища. Системний та мережевий моніторинг. Інструменти динамічного аналізу (моніторингу). Етапи динамічного аналізу. Збираємо все разом: аналізуємо виконуваний файл шкідливого ПЗ. Аналіз бібліотеки (DLL, що динамічно підключається).
Засоби захисту програмного забезпечення та засоби їх зламу.
Засоби захисту вмісту файлів та папок. Засоби захисту вмісту локальних дисків. Засоби захисту ПЗ від несанкціонованого копіювання. Антивіруси. Міжмережеві екрани (брандмауери). Засоби стеганографічного захисту. Проблеми існування засобів зламу захистів ПЗ. Класифікація засобів зламу захистів ПЗ. Програмний інструментарій для зламу програмного забезпечення.
3
Методи та критерії оцінювання: Поточна перевірка в процесі засвоєння кожної теми, що вивчається; оцінка активності студента у процесі лабораторних занять; перевірка виконання лабораторних робіт; усне опитування щодо засвоєння знань, набутих у процесі виконання лабораторних робіт.
Оцінка активності студента у процесі лабораторних занять; перевірка виконання лабораторних робіт; усне опитування засвоєння знань, набутих у процесі виконання лабораторних робіт.
Критерії оцінювання результатів навчання: Поточний контроль - 40 балів.
Екзаменаційний контроль - 60 балів.
Лабораторні роботи – 20 балів за 5 робіт.
Тестування - 20 балів за 4 тести.
Порядок та критерії виставляння балів та оцінок: 100–88 балів – («відмінно») виставляється за високий рівень знань (допускаються деякі неточності) навчального матеріалу компонента, що міститься в основних і додаткових рекомендованих літературних джерелах, вміння аналізувати явища, які вивчаються, у їхньому взаємозв’язку і роз витку, чітко, лаконічно, логічно, послідовно відповідати на поставлені запитання, вміння застосовувати теоретичні положення під час розв’язання практичних задач; 87–71 бал – («добре») виставляється за загалом правильне розуміння навчального матеріалу компонента, включаючи розрахунки , аргументовані відповіді на поставлені запитання, які, однак, містять певні (неістотні) недоліки, за вміння застосовувати теоретичні положення під час розв’язання практичних задач; 70 – 50 балів – («задовільно») виставляється за слабкі знання навчального матеріалу компонента, неточні або мало аргументовані відповіді, з порушенням послідовності викладення, за слабке застосування теоретичних положень під час розв’язання практичних задач; 49–26 балів – («не атестований» з можливістю повторного складання семестрового контролю) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння застосувати теоретичні положення під час розв’язання практичних задач; 25–00 балів – («незадовільно» з обов’язковим повторним вивченням) виставляється за незнання значної частини навчального матеріалу компонента, істотні помилки у відповідях на запитання, невміння орієнтуватися під час розв’язання практичних задач, незнання основних фундаментальних положень.
Рекомендована література: 1. Каплун В.А. Захист програмного забезпечення. Частина 1 / Каплун В.А., Дмитришин О.В., Баришев В.Ю. – Вінниця : ВНТУ, 2005. – 140 с.
2. Каплун В.А. Захист програмного забезпечення. Частина 2 / Каплун В.А., Дмитришин О.В., Баришев В.Ю. – Вінниця : ВНТУ, 2014. – 105 с.
3. J. Koo, Y. Kim and S. Lee, "Security Requirements for Cloud-based C4I Security Architecture", 2019 International Conference on Platform Technology and Service (PlatCon), pp. 1-4, 2019.
4. C. Wang, S. Chen, Z. Feng, Y. Jiang and X. Xue, "Block Chain-Based Data Audit and Access Control Mechanism in Service Collaboration", 2019 IEEE International Conference on Web Services, pp. 214-218, 2019.
5. Гуз А.М., Довгань О.Д., Марущак А.І. Організація захисту інформації з обмеженим доступом. - К. : Наук.-вид. відділ НА СБ України, 2015. - 378 с.
6. Технології захисту інформації : навч. посібник / С. Е. Остапов, С. П. Євсеєв, О. Г. Король. – Харків : Вид. ХНЕУ, 2013. – 476 с.
Захист інформації в автоматизованих системах управління : навч. посібник / Уклад. І.А. Пількевич, Н.М. Лобанчикова, К.В. Молодецька.– Житомир: Вид-во ЖДУ ім. І. Франка, 2015. – 226 с.
Уніфікований додаток: Національний університет «Львівська політехніка» забезпечує реалізацію права осіб з інвалідністю на здобуття вищої освіти. Інклюзивні освітні послуги надає Служба доступності до можливостей навчання «Без обмежень», метою діяльності якої є забезпечення постійного індивідуального супроводу навчального процесу студентів з інвалідністю та хронічними захворюваннями. Важливим інструментом імплементації інклюзивної освітньої політики в Університеті є Програма підвищення кваліфікації науково-педагогічних працівників та навчально-допоміжного персоналу у сфері соціальної інклюзії та інклюзивної освіти. Звертатися за адресою:
вул. Карпінського, 2/4, І-й н.к., кімн. 112
E-mail: nolimits@lpnu.ua
Websites: https://lpnu.ua/nolimits https://lpnu.ua/integration
Академічна доброчесність: Політика щодо академічної доброчесності учасників освітнього процесу формується на основі дотримання принципів академічної доброчесності з урахуванням норм «Положення про академічну доброчесність у Національному університеті «Львівська політехніка» (затверджене вченою радою університету від 20.06.2017 р., протокол № 35).