Незрозумілі файли на диску ми виявляємо двома шляхами. Або вони явно видно в провіднику або файловому менеджері, або до них призводять пошуки причини зникнення вільного місця на диску. Добре, якщо після видалення файлів, вони більше не з`являються. Але так буває не завжди, і в цьому випадку доводиться визначати додаток, яке їх створює.
Одного разу на форум звернувся чоловік, у якого якийсь додаток записували в корінь системного диска файли, в імені яких міститься tmp _out.
Звичайно, не виключено, що ця система заражена, і потрібна ретельна перевірка всілякими антивірусними засобами. Але далеко не завжди проблема пов`язана з шкідливим кодом, і тоді знадобиться інший підхід. Найпростіше обчислити винуватця появи таких файлів за допомогою утиліти Process Monitor. І через чотири хвилини ви дізнаєтеся, як це зробити.
відстеження активності
При запуску утиліта відстежує кілька типів системної активності:
- реєстр
- файлову систему
- мережа
- процеси і потоки
Оскільки ми шукаємо причину записи файлів на диск, потрібно зосередитися на активності в файлової системі. Для цього на панелі інструментів залиште включеної тільки одну кнопку, що відповідає за активність на диску.
Крім того, переконайтеся, що утиліта відстежує активність. Якщо у вас перекреслена кнопка, яка на малюнку обведена червоним, натисніть CTRL + E.
На малюнку вище активність відстежується, причому тільки в файлової системі.
основний фільтр
Тепер потрібно застосувати фільтр, щоб виключити не відноситься до справи активність. Натисніть клавіші CTRL + L, і ви побачите можливості фільтрації. В Process Monitor відразу активні деякі фільтри, що виключають відстеження діяльності самої програми, а також деяких системних компонентів (файлу підкачки, таблиці MFT і т.д.). Це зроблено для того, щоб виключити моніторинг стандартної активності системи. У більшості випадків видаляти ці фільтри не потрібно, і досить просто додати свій.
На малюнку вище показаний фільтр, який буде відслідковувати створення і зміна всіх файлів, в шляхах до яких міститься tmp _out. Давайте розберемо фільтр докладніше зліва направо:
- Path. Шлях в файлової системі. Також можна вказувати розділи реєстру, коли відстежується активність в ньому.
- contains. Умова, за якою визначається пошук ключового слова. У перекладі з англійської це слово означає «містить». Залежно від завдання можна конкретизувати умова, вибравши варіант begins with (починається з) або ends with (закінчується на).
- tmp _out. Ключове слово, яке в даному випадку має міститися в дорозі. Файл та його розширення є частиною повного шляху до файлу.
- Include. Включення заданого умови в список що відслідковуються.
Не забудьте натиснути кнопку Add, щоб додати фільтр до списку. Втім, якщо ви забудете, Process Monitor нагадає про це, перш ніж закрити вікно фільтрів.
В даному випадку я використав частину імені файлу в якості ключового слова, оскільки всі незрозумілі файли містять в імені tmp_out. Якщо файли створюються з різними іменами, але зате в певній папці, використовуйте шлях до цієї папки в якості ключового слова.
Оскільки задано жорстку умову фільтрації файлової активності, у вікні програми, швидше за все, тепер не буде доступний широкому ніяких процесів. Але Process Monitor вже почав їх відстежувати.
Перевірити роботу фільтра дуже просто. Досить створити в текстовому редакторі файл з потрібним ім`ям або в що спостерігається папці, і Process Monitor моментально відреагує на це.
додаткові фільтри
Зверніть увагу, що утиліта зафіксувала не тільки активність блокнота, але також провідника і пошуку Windows. Чи не стосуються справи процеси можна виключити з результатів, створивши додаткові фільтри. Досить клацнути по процесу правою кнопкою миші і вибрати з контекстного меню пункт Exclude lt; ім`я процессаgt ;. Це найпростіший спосіб створення фільтра, але можна зробити це з вікна фільтрації, як показано вище. У цьому випадку умова буде:
Process Name - Is - lt; ім`я процессаgt; - Exclude.
Запис і відкриття логу
Врахуйте, що при тривалому відстеження розмір логу може вимірюватися гігабайтами. За замовчуванням Process Monitor записує лог в файл підкачки. Якщо у вас маленький системний розділ, має сенс зберігати лог в файл на іншому розділі диска.
Для збереження балки в файл натисніть сполучення клавіш CTRL + B і вкажіть ім`я і бажане розташування файлу.
Зміни вступають в силу після перезапуску захоплення активності. Тепер можна сміливо залишити Process Monitor включеним на тривалий час, не побоюючись за ліміт дискового простору.
Зупинити відстеження активності можна сполучення клавіш CTRL + E.
Згодом ви завжди зможете завантажити в утиліту лог з збереженого файлу. Закрийте Process Monitor і двічі клацніть файл логу з розширенням PML. Вміст логу відобразиться у вікні Process Explorer.
Людина, який звернувся на форум з проблемою, так і не повернувся повідомити, чи допоміг йому моя порада. Але він був з таким питанням не перший і, напевно, не останній. Якщо питання виникне у вас, ви зможете відповісти на нього за допомогою Process Monitor.
Відео
Читачі блога висловили підтримку моєї ідеї доповнювати статті відеоматеріалами. Я подумав, що цей випадок дуже добре підходить, і записав ролик довжиною менше 4 хвилин.
Якщо чесно, створення такого відео займає набагато більше часу, ніж написання статті. Тому я в жодному разі не готовий замінювати друкований текст відеоматеріалами. Але мені здається, що в даному випадку відео цікавіше і зрозуміліше. А що ви думаєте з цього приводу?
Відео триває близько чотирьох хвилин, і я намагався зробити його швидким і ємним. Адже в реальності підготовка до затримання додатки займає буквально одну хвилину. Вас влаштовує швидкість викладу?
Більш докладна розповідь про Process Monitor і інші приклади його практичного використання ви можете