Досвідчені дрібниці-9, або "Ви хворі! Як лікувати будемо? "

Продовження «досвідчених дрібниць». Попередні частини можна почитати тут.


Час від часу у кожного системного адміністратора виникає необхідність перевірити «підозрілий» комп'ютер на предмет шкідливого ПЗ. Або дивний трафік з нього йде, або дивні віконця вилазять, або того гірше який-небудь WinLock зловили. Я розповім про просту, майже покрокову експрес-методику, яку ми пропонуємо нашим саппортерам-новачкам. Комусь, можливо, вона здасться неповною або занадто простою, проте багато проблем з її допомогою визначити можна. А зрозуміти проблему - вже половина рішення. У будь-якому випадку, буду радий прочитати в коментарях ваші доповнення і корисні поради з цього питання.

Взагалі, досліджувати комп'ютер на предмет «пошуку зарази», це заняття захоплююче, але невдячне. Часто час, який ви витратили на пошуки і лікування, значно більше того часу, який ви витратили б на повну перевстановку комп'ютера зі збереженням даних.

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

Ще один важливий момент: щоб малодосвідчений саппортер міг коректно «перевіряти» заражений комп'ютер, потрібно в першу чергу навчити його розуміти що в ньому «нормально» а що ні, для цих цілей ми на початку даємо їм свіжовстановлений, чистий комп'ютер з приблизним набором нашого внутрішнього ПЗ, і вони на ньому тренуються. Тупо проганяють всі тести, і дивляться що виходить. Напрацьовують т. зв. «шаблон чистого комп'ютера». Своїми очима бачать спрацювання перевірочних утиліт на рядові речі, які присутні навіть на завідомо чистих комп'ютерах (наприклад AVZ моторошно лається, якщо на комп'ютері стоїть Symantec Endpoint Protection, і т. д.). Надалі при перевірках вже в реальних умовах справжні «відхилення» досить легко помічаються.

  1. Запустити на машині AVZ зі свіжими базами. У параметрах поставити: Евристика - макс, Розширений аналіз, Блокування користувальницьких руткітів - залежно від важливості машини. Взагалі, краще для початку просто запустити перевірку і подивитися на результат, нічого не блокуючи. Перевірити налаштування SPI, відкриті порти TCP\UDP за допомогою того-таки AVZ. Вивчити результат, навскидку порівняти з виведенням з чистої машини, відсіяти відомі програми, що дають ефект спрацьовування (антивіруси, перехоплювачі а-ля PuntoSwitcher тощо). Проаналізувати різницю, якщо вона є.
  2. «Для фанатів» можна пройтися по пунктах меню СЕРВІС в AVZ. Пошукати сірі (невпізнані) рядки Program Files, Documents And Settings, Windows. Спробувати зрозуміти що це і для чого. На важливих комп'ютерах краще дивитися ВСІ пункти (Менеджери..., диспетчери... тощо) меню СЕРВІС.
  3. Запустити Autoruns від Sysinternals. Увімкнути параметр Verify Code Signature. Проаналізувати результат на предмет «дивацтва», звертати увагу на шляхи, назви, описи в стовпчиках Publisher і Description.
  4. Перевірити вже виконувані завдання, за допомогою Process Explorer від Sysinternals. Звертати увагу на шлях до запуску програми (потрібно включити додатково в меню View - Select Columns

Виконання описаних процедур та уважний аналіз отриманих результатів дозволяє прийняти рішення про те що робити далі: чистити комп'ютер або пускати на перевстановлення. Процес очищення системи майже завжди нешаблонний, творчий. Інші зарази досить складно вивести, вони глибоко прописуються в службах, стежать за видаленням себе з авторан-шляхів, замінюють шелл тощо. Зрештою існують руткіти. Будьте готові до того, що остаточний шлях очищення швидше за все доведеться добряче пошукати, найпростіший спосіб, швидше за все, буде неповним. Якщо все ж зважилися, то чистити систему можна, наприклад, так:

  1. Вимкніть службу відновлення системи. перевірте, що всі точки відновлення очистилися. Традиційно це улюблене «бомбосховище» для різного роду зарази.
  2. Очистіть все можливе за допомогою AVZ (обов'язково ввімкніть режим AVZ-Guard (в ньому AVZ блокує запуск стороннього софта і дозволяє запускати ПО тільки з його інтерфейсу), запускати все що потрібно з AVZ, майстер пошуку та усунення проблем-чистка системи, відкладене видалення файлів, блокування руткітів тощо).
  3. Після (!) блокування руткітів за допомогою AVZ, в режимі AVZ-Guard запустіть і уважно вивчіть висновок утиліти Autoruns від Sysinternals. Зловреди зазвичай або пишуться в «запускаються гілки реєстру», або підміняють собою shell. Тут допоможе досвід, зорке око і «шаблон чистої машини»
  4. Очистіть вручну в профілі зараженого користувача:
    • Тимчасові теки (% User %\Local Settings\Temp)
    • Кеш браузера (% User %\Local Settings\Temporary Internet Files\Content.IE5)
    • Історію браузера (% User %\Local Settings\History\History.IE5)
    • Скиньте налаштування internet explorer на дефолтні (сервіс-властивості оглядача-додатково-скидання)
    • У Internet Explorer перевірте надбудови (сервіс-властивості оглядача-програми-надбудови). Зайве вимкнути\вилучити.
    • (Врахуйте, що після цих дій у поточного користувача зникне історія відвідувань, збережені паролі, куки тощо)
    • аналогічно прошерстите профілі сторонніх браузерів, якщо користувач їх використовує
  5. Перевірте системні змінні (у командному рядку наберіть SET), особливо зверніть увагу на PATH, при необхідності почистіть, але будьте акуратні, не вилучіть потрібне. Тут допоможе тренувальний «шаблон чистої системи».
  6. Перевірити SYSTEM-LOG від останнього завантаження (журнал системи від події 6009-6005). Звертати увагу на помилки під час запуску і запуску драйверів.
  7. Можна запустити портативні версії популярних антивірусів, наприклад DrWeb Cure IT (він безкоштовний тільки для особистого використання, пам'ятайте це) або версію від Лабораторії Касперського. Такі антивірусні утиліти оновлюються регулярно, і кожен раз швидше за все доведеться качати їх заново зі свіжими базами. Перевіряти ними можна не всі, а тільки теки Documents And Settings, Program Files, Windows
  8. Якщо результат незадовільний, завантажитеся з будь-якого live-CD (Bart-pe, Alkid-LceCD, Hiren BootCD тощо), і перевірте тими ж антивірусними утиліттями.
  9. Перевірте файли у теках Windows і Windows\System32 на предмет їхніх дат. Особливу увагу зверніть на файли, які змінено в день або за день до зараження. Якщо вони мають правильні назви, і на перший погляд, потрібні для роботи системи - замініть їх аналогічними з сусідньої системи (врахуйте тільки що робити це можна з однаковими системами, які хоча б приблизно схожі. Не можна змінювати файл userinit.exe від WinXPSp2 на такий самий файл від WinXPSP3 тощо.

Якщо все одно не вдалося вилікувати машину, спробуйте звернутися в профільні гілки форумів, наприклад Virusinfo, а якщо і там не допомогли - серйозно подумайте про перевстановлення системи, тому що троян ви може бути і вилікуйте, але час витратите дуже багато, і гарантій на повне лікування швидше за все не буде. А витрачений на це заняття час, ви могли б витратити з набагато більшою користю.

Upd: Для більшої ясності доповню: машини які досліджують таким чином ВЖЕ відключені від мережі, з них забрали дані (якщо їх можна забрати). Ця експрес-методика була написана для навчання особового складу, щоб швидко і мінімальними зусиллями, недосвідченим саппортерам приймати рішення: чи варто лікувати комп або пускати його на перевстановлення.

Продовження слід