7.3. Задача аналізу безпеки ПЗ
Під безпекою ПЗ будемо розуміти відсутність у ньому елементів РПЗ.
Отже, відповідно до визначення РПЗ, даному раніше, для доказу безпеки
програми потрібно довести, що програма не встановлює нелегітимних відносин
з об’єктами обчислювальн ої си стеми. З урахуванням уведених понять
приведемо формальну постановку задачі аналізу безпеки програм.
Для того, щоб довести, що програма р, яка досліджуєтьс я, є безпечн о ю ,
необхідно і достатньо довести, що р∉ V. Це, з урахуванням запропонованого
визначення РПЗ, означає, що множина відносин А
р
, до я ко ї належать усі
відносини з об’єктами обчислювальної системи, що установлюються
програмою р у процесі її виконання, не містить нелегітимних відносин, тобто
А
р
∩L
p
=∅.
Проте, розв’язок цієї задачі утруднюється двома проблемами.
По-перше, у загальному випадку неможливо побудувати розв’язуючу
процедуру, що дозволяє визначити легітимність відносини доступу.
По-друге, неможливо одержати всі елементи для визначення їхньої
легітимності.
Спосіб розв’язання цих проблем залежить від того, у якому просторі –
просторі відносин чи просторі програм буде розглядатися задача аналізу
безпеки. Отже, у наступному розділі буде розглянута постановка задачі аналізу
безпеки і методи її рішення для кожного з цих підходів.
7.4. Методи аналізу безпеки ПЗ
Перш за все слід відзначити, що в області аналізу безпеки програм
практика значно випереджає теорію. Ш ироко відомі різні засоби ПЗ виявлень
елементів РПЗ – від найпростіших антивірусних програм -скан ерів до складних
відладчиків і дизасемблерів-аналізатор ів, у той час як теоретичні дослідження в
області методів аналізу безпеки носять трохи відвернений характер. Все ж
можна зробити спробу встановити зв’язок між методами, що лежать в основі
конкретних засобів, і теоретичними розробками в області аналізу безпеки ПЗ.