Одного разу на форум звернувся чоловік, у якого будь-який додаток записувало в корінь системного диска файли, в яких міститься tmp _out.
Звичайно, не виключено, що ця система уражена, і потрібно ретельна перевірка всілякими антивірусними засобами. Але далеко не завжди проблема пов'язана з шкідливим кодом, і тоді знадобиться інший підхід. Найпростіше обчислити винуватця появи таких файлів за допомогою утиліти Process Monitor. І через чотири хвилини ви дізнаєтеся, як це зробити.
При запуску утиліта відстежує кілька типів системної активності:
Оскільки ми шукаємо причину запису файлів на диск, потрібно зосередитися на активності у файловій системі. Для цього на панелі інструментів залиште включеним тільки одну кнопку, що відповідає за активність на диску.
Крім того, переконайтеся, що утиліта відстежує активність. Якщо у вас перекреслена кнопка, яка на малюнку обведена червоним, натисніть сполучення клавіш CTRL E.
На малюнку вище активність відстежується, причому тільки у файловій системі.
Тепер потрібно застосувати фільтр, щоб виключити не відноситься до справи активність. Натисніть сполучення клавіш CTRL L, і ви побачите можливості фільтрації. В Process Monitor відразу активні деякі фільтри, що виключають відстеження діяльності самої програми, а також деяких системних компонентів (файлу підкачки, таблиці MFT і т. д.). Це зроблено для того, щоб виключити моніторинг стандартної активності системи. У більшості випадків видаляти ці фільтри не потрібно, досить просто додати свій.
На малюнку вище показано фільтр, який буде відстежувати створення і зміна всіх файлів, шляхи до яких міститься tmp _out. Давайте розберемо фільтр детальніше зліва направо:
Не забудьте натиснути кнопку Add, щоб додати фільтр в список. Втім, якщо ви забудете, Process Monitor нагадає про це, перш ніж закрити вікно фільтрів.
В даному випадку я використав частину імені файлу в якості ключового слова, оскільки всі незрозумілі файли містять в імені tmp_out. Якщо файли створюються з різними іменами, але зате в певній папці, використовуйте шлях до цієї папки в якості ключового слова.
Оскільки задано жорстку умову фільтрації файлової активності, у вікні програми, швидше за все, тепер не буде відображатися ніяких процесів. Але Process Monitor вже почав їх відслідковувати.
Перевірити роботу фільтра дуже просто. Досить створити в текстовому редакторі файл з потрібним ім'ям або в теці, і Process Monitor моментально відреагує на це.
Зверніть увагу, що утиліта зафіксувала не тільки активність блокнота, але також провідника і пошуку Windows. Не відносяться до справи процеси можна виключити з результатів, створивши додаткові фільтри. Досить клацнути по процесу правою кнопкою миші і вибрати з контекстного меню пункт Exclude . Це найпростіший спосіб створення фільтра, але можна зробити це з вікна фільтрації, як показано вище. У цьому випадку умова:
Process Name - Is – – Exclude.
Врахуйте, що при тривалому відстеження розмір лода може вимірюватися гігабайтами. За замовчуванням Process Monitor записує в лог файл підкачки. Якщо у вас маленька системний розділ, має сенс зберігати в лог файл на іншому розділі диска.
Для збереження лода у файл, натисніть сполучення клавіш CTRL B і вкажіть ім'я і бажане розташування файлу.
Зміни набирають чинності після перезапуску захоплення активності. Тепер можна сміливо залишити Process Monitor включеним на тривалий час, не побоюючись за ліміт дискового простору.
Зупинити відстеження активності можна комбінацією клавіш CTRL E.
Згодом ви завжди зможете завантажити утиліту лог із збереженого файлу. Закрийте Process Monitor і двічі клацніть файл лода з розширенням PML. Вміст лода відобразиться у вікні Process Explorer.
Чоловік, який звернувся на форум з проблемою, так і не повернувся повідомити, чи допоміг йому моя порада. Але він був з таким питанням не перший і, напевно, не останній. Якщо питання виникне у вас, ви зможете відповісти на нього з допомогою Process Monitor.
Читачі блогу висловили підтримку моєї ідеї доповнювати статті відеоматеріалами. Я подумав, що цей випадок дуже добре підходить, і записав ролик довжиною менше 4 хвилин.
Якщо чесно, створення такого відео займає набагато більше часу, ніж написання статті. Тому я в жодному разі не готовий замінити друкований текст відеоматеріалами. Але мені здається, що в даному випадку відео цікавіше і зрозуміліше. А що ви думаєте з цього приводу?
Відео триває близько чотирьох хвилин, і я старався зробити його швидким і ємним. Адже в реальності підготовка до затримання додатки займає буквально одну хвилину. Вас влаштовує швидкість викладу?
Більш докладна розповідь про Process Monitor і інші приклади його практичного використання ви можете подивитися у відео мого колеги Василя Гусєва, якщо у вас є вільні 40 хвилин :)