Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Аналіз програм на етапі їх експлуатації

У даному розділі будуть розглянуті методи пошуку і нейтралізації РПЗ за допомогою дизасемблерів і відлагожувачів на етапі експлуатації програм. Тобто завдання захисту на відміну від завдань захисту в попередньому розділі тут вирішується "з точністю до навпаки".

Основна схема аналізу виконуваного коду, в даному випадку, може виглядати таким чином:

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

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

При синтаксичному аналізі можуть зустрітися наступні труднощі:

  • можуть бути не розпізнані деякі лексеми. Це випливає з того, що макроасемблерні конструкції можуть бути представлені нескінченним числом регулярних асемблерних виразів;
  • порядок слідування лексем може бути відомим з деякою вірогідністю або взагалі не відомим;
  • граматика мови може поповнюватися, оскільки можуть виникати нові типи РПЗ або механізми їх роботи.

Таким чином, остаточний висновок про відсутність або наявність РПЗ можна дати тільки на етапі семантичного аналізу, а завдання цього етапу можна конкретизувати як згортку термінальних символів в нетермінали якомога вищого рівня там, де вхідний ланцюжок заданий строго.

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

 

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

 

 


Читайте також:

  1. ABC-XYZ аналіз
  2. Cisco Packet Tracer - Знайомство з програмою. Інтерфейс
  3. I. Введення в розробку програмного забезпечення
  4. II. Багатофакторний дискримінантний аналіз.
  5. II. Вимоги до складання паспорта бюджетної програми
  6. II. Із програм для 11 класу
  7. II.1 Програмне забезпечення
  8. III. Етапи розробки програмного забезпечення
  9. III. Навчально-програмний етап.
  10. III. Програма
  11. III. Програма
  12. IV. На четвертому етапі, виходячи із позиції кожної СОБ на матриці АДЛ, вибирають для неї відповідну стратегію.




Переглядів: 1204

<== попередня сторінка | наступна сторінка ==>
Методи захисту програм від дослідження | Основні напрями

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.007 сек.