Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторна робота з ЗПЗ №1.docx
Скачиваний:
20
Добавлен:
16.05.2015
Размер:
1.76 Mб
Скачать

3 Моніторінг звернень до файлів та каталогів

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

Для вирішення таких задач дослідникам (зламникам) допомагає програма FileMon, інтерфейс якої зображено на рис. 3.1:

Рисунок 3.1 — Вигляд інтерфейсу FileMon

Filemon стежить за роботою і контролює активність всієї файлової системи Microsoft Windows, а також відображає всі процеси, що відбуваються в реальному часі. Серед технічних можливостей можна виділити наступні: пошук, збереження отриманих результатів у файл, встановлення фільтрів для дослідження операційної системи.

Якщо при останньому запуску Filemon були налагоджені які-небудь фільтри, при наступному запуску програма попросить підтвердити їх використання. Кожного разу, при виході з Filemon програма запам'ятовує налагоджені фільтри, положення вікна і ширину стовпців вихідних даних.

Фільтрація в діалоговому вікні «Filter», яке відкривається за допомогою кнопки на панелі інструментів або команди меню «Edit|filter/highlight», може вказати, які дані повинні відображуватися в списку.

За допомогою фільтру виділення можна вказати, які рядки в списку слід виділити кольором. Додаткові параметри фільтрації дозволяють вибрати або виключити операції читання, запису або відкриття.

Виконати пошук потрібних рядків у вікні виводу можна за допомогою команди меню «Find» або відповідної кнопки на панелі інструментів.

Программа Filemon може показувати або час виконання операцій, або їх тривалість.

Меню «Options» (Параметри) і кнопка із зображенням годинника на панелі інструментів дозволяють переходити з одного режиму в інший.

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

4 Перегляд інформації про процеси, потоки і пам’ять

Останнім часом з'явилася безліч програм, що зламують навісні захисти методом зняття з пам'яті. Принцип тут дуже простий. Після того, як захист відпрацював і дав "добро" на виконання, в пам'яті знаходиться початкова програма в такому ж вигляді, неначе її запустили звичайним способом, без усіляких захистів. Якщо у цей момент вміст оперативного запам’ятовуючого пристрою (ОЗП) записати на диск, то з отриманого дампу можна витягнути первинну програму. У кращому випадку в результаті виходить працездатний EXE-файл, практично ідентичний первинній програмі.

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

Прикладом такої програми є утиліта Process Monitor.

Головне вікно програми має такі функції:

  • Відкриття та збереження файлу;

  • Режим перехвату даних, автоматичне зміщення вниз та очистка вікна реєстру;

  • Фільтр, виділення, включення процесу у вікні;

  • Дерево процесів;

  • Пошук, перехід до об’єкту;

  • Функції, які показують активність в реєстрі, файловій системі, активність в мережі, процеси і потоки діяльності, профілювання подій.

Кожній дії, яка відбулась в реєстрі відповідає один рядок у вікні виводу даних. Подвійний натиск на рядок викликає вікно перегляду опцій процесу.(Event Properties)(рисунок 4.1).

Рисунок 4.1 — Вікно перегляду опцій (Event Properties)

Вікно має три вкладки:

  • Event – містить детальну інформацію про подію: час, клас події, виконувана операція, результат і деякі дані, що залежать від типу виконуваної операції.

  • Process дозволяє переглянути детальну інформацію щодо процесу - ім'я, версію, шлях виконуваного файлу, параметри командного рядка, PID самого процесу і PID його батька, список завантажених бібліотек.

  • Stack - інформація про виклики функцій модулів ядра (позначені літерою K) і модулів середовища користувача (позначені буквою U).

Process Monitor запам'ятовує останній використовуваний набір фільтрів і застосовує його при наступному запуску програми. Задати умови фільтрації можна відразу після старту утиліти або викликавши вікно налаштування фільтрів (Process Monitor Filters) (рис. 4.2) в будь-який момент часу з використанням меню програми або комбінації клавіш CTRL + L. Крім безпосереднього створення правил фільтрації вручну, можливе використання кнопок панелі інструментів і контекстного меню, що викликається правою кнопкою мишки.

Рисунок 4.2 — Вигляд вікна фільтру

Запис правил фільтрації складається з чотирьох стовпців:

Column - можна вибрати одне з можливих полів, відображуваних у вікні даних програми.

Relation - логічне вираження.

Value - значення. Залежить від властивостей вибраного поля в першій колонці (Columns)

Action - дія.

Головними перевагами програми над конкурентами є:

  • Відстеження запуску і завершення роботи процесів та потоків,

включаючи інформацію про код завершення.

  • Збір інформації про процеси, включаючи шлях до

образу процесу, командний рядок, а також ID користувача і сесії.

  • Відображення активності файлової системи, реєстру, а

також процесів та потоків.

  • Відстеження завантаження образів (бібліотек DLL і драйверів

пристроїв, що працюють в режимі ядра).

  • Зібрання даних про параметри операцій введення і виведення.

  • Запис в журнал всіх операцій під час завантаження системи.

  • Показ всіх змін, що відбуваються з файлами, повідомлення про

їх видалення або відкриття.

Найбільш вагомою перевагою програми є детальний пошук по реєстрові та процесах з можливістю фільтрації непотрібних результатів, а також повна підтримка Windows 8.