Чужинці в системних папках

Знову у вікні Диспетчера завдань якісь зайві процеси ... Що й казати, приємного мало. Хто їх знає, що вони роблять, а раптом щось шкідливе?

Шкідливі програми люблять системні папки Windows. Наше завдання - виявити і вижити їх звідти.

Знову у вікні Task Manager (Диспетчер завдань) якісь зайві процеси ... Що й казати, приємного мало. Хто їх знає, що вони роблять, а раптом щось шкідливе? І, в будь-якому випадку, на них витрачаються системні ресурси.

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

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

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

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

Збереження даних перш за все

Головне в цій справі - пам`ятати, що ми маємо справу з операційною системою. Тому лізти в системні файли, а особливо видаляти їх - вірний шлях до проблем. Подібні дії цілком можуть привести до того, що Windows перестане запускатися.

Потім, на кожному кроці необхідно залишати за собою шлях до відступу. Для цього в Windows XP і Me зручно використовувати функцію System Restore, яка гарантує повернення в стан, що передує збою. Для цього потрібно клацнути на кнопці Start - Programs (в XP - All Programs) - Accessories - System Tools - System Restore - Create a restore point (Пуск - Програми (в XP - Усі програми) - Стандартні - Службові - Створити точку повернення) і виконати інструкції майстра. Такі точки повернення слід створювати перед кожною зміною.

Деякі системні файли є прихованими і при звичайній налаштування інтерфейсу Windows не відображаються на екрані. Для того щоб їх побачити, відкрийте Explorer (Провідник) або будь-яке вікно папки і виберіть команду Tools - Folder Options - View (Сервіс - Властивості папки - Вид). У вікні, включіть режим Show hidden files and folders (Показати приховані файли і папки) і простежте, щоб режими Hide extensions for known file types (Не показувати розширення відомих типів файлів) і Hide protected operating system files (Recommended) (Приховати захищені файли операційної системи (Рекомендується)) були відключені. У відповідь на всі наступні попередження Windows клацайте на кнопці Yes (Так). (Ми ще поговоримо про ці попередження.) Потім запустіть останню версію антивірусної програми і антишпигунського сканера. Якщо виникне необхідність видалити файл, робіть це тільки при повній впевненості, що в ньому міститься зловмисний код. Наприклад, не видаляйте з системних папок старі бібліотеки DLL.

Що працює в системі?

Тепер пора з`ясувати, які програми і служби діють на комп`ютері прямо зараз. У вікні Task Manager (Диспетчер завдань) відображаються не всі працюючі додатки. Тому для вирішення цього завдання краще скористатися безкоштовною утилітою Sysinternals Process Explorer (sysinternals.com). Розпакувавши файл procexpnt.zip і запустивши procexp.exe, ви зрозумієте, що в порівнянні з Диспетчером завдань Windows Process Explorer - все одно що Шерлок Холмс в порівнянні з інспектором Лестрейдом: можливо, не так блискуче виглядає, але діє набагато надійніше і ефективніше. І, до речі, на відміну від приватних детективів, працює безкоштовно.

За замовчуванням деякі з найбільш корисних даних, що витягають Process Explorer з системи, приховані. Для того щоб їх переглянути, клацніть правою кнопкою миші на імені стовпчика і скористайтеся командою Select Columns (Вибрати стовпці). У вікні, будуть обрані тільки стовпці Process Name (Процес) і Description (Опис). Виберіть також Company Name (Компанія) і Command Line (Командний рядок). Перейдіть на вкладку DLL, виберіть стовпець Path (Шлях) і клацніть на кнопці OK. Потім виберіть команду View (Вид) і включіть режим Show Lower Pane (Відображати нижню панель). На завершення виберіть команду View - Lower Pane View - DLLs (Вид - Нижня панель - DLL).

Налаштувавши Process Explorer таким чином, можна виділити будь-який активний процес і побачити на нижній панелі список використовуваних їм DLL-бібліотек. У стовпці Command Line (Командний рядок) повідомляється, в якій папці знаходяться працюючі програми, а в разі сервісів (які іноді працюють під управлінням svchost.exe) - який екземпляр svchost.exe запускає цей сервіс.

В першу чергу під підозру потрапляють процеси, що запускаються з папки Temp. Шпигунські програми люблять встановлюватися в подібних затишних куточках. Те ж саме відноситься до процесів, які посилаються на DLL-бібліотеки, розташовані в папці Temp. "Доброчесні" програми запускаються з папки Temp в єдиному випадку: при інсталяції програми за допомогою InstallShield або інший утиліти установки. Крім Explorer.exe, в Windows XP, швидше за все, виявляться і інші активні процеси, в тому числі smss.exe, winlogon.exe, services.exe, alg.exe і lsass.exe. Всі вони необхідні для роботи Windows. Не чіпайте їх.




Кілька більш пильної уваги заслуговує інший "законний" Windows - rundll32.exe, якщо він виявиться серед діючих процесів. За цією програмою іноді ховаються шкідливі програми, поширювані у вигляді DLL-файлів, - вони використовують її як плацдарм для завантаження. У вікні Task Manager (Диспетчер завдань) значиться тільки rundll32, але в Process Explorer, в стовпці Command Line (Командний рядок), відображаються всі DLL-бібліотеки, асоційовані з rundll32. Тим не менш, перш ніж видалити цей процес, переконайтеся, що це дійсно необхідно: адже rundll32 "законно" використовується драйверами деяких пристроїв. У прийнятті цього рішення вам допоможе шлях до файлу DLL.

Пошук непроханих гостей

Крім перерахованих системних файлів, ви, швидше за все, виявите серед активних процесів ще кілька програм Windows - додатків і сервісів, що працюють у фоновому режимі, а також драйверів різних пристроїв. Зазвичай ці програми запускаються одночасно з Windows. Перегляньте вміст стовпців Description (Опис), Company Name (Компанія) і Command Line (Командний рядок) для кожного з них. За цими даними ви, швидше за все, зрозумієте, які процеси відносяться до якої з програм, встановлених на комп`ютері.

Якщо поля Description (Опис) або Company Name (Компанія) пустують або містять незнайомі назви, ймовірно, варто копнути глибше. Клацніть правою кнопкою миші на імені процесу в списку Process Explorer і виберіть команду Properties (Властивості). Якщо вміст вкладки Image (Образ) не проясниться ситуації, перейдіть на вкладку Services (Служби). На цій вкладці перераховуються деякі "легальні" сервіси, які в головному вікні Process Explorer входять в групу services.exe (і не мають описів в поле Description).

Припустимо, наприклад, що ми виявили в Process Explorer два процеси з вільними полями Description (Опис) і Company Name (Компанія): slee81.exe і WLTRYSVC.EXE. При найближчому розгляді на вкладці Services (Служби) з`ясовується, що slee81.exe - це файл Steganos Live Encryption Engine. Користувач, сам встановлював програми Steganos на свій комп`ютер, не здивується, що вони працюють у фоновому режимі. Це не порушення системи захисту, але привід задуматися: якщо ви не використовуєте цю програму, можливо, варто її відключити і звільнити ресурси процесора?

Розпізнати другий файл, WLTRYSVC.EXE, ще простіше - по вмісту поля Services (Служби). Оскільки ім`я процесу (WLTRYSVC service) мало інформативно, знаходимо файл WLTRYSVC, розташований рівнем нижче, і виявляємо, що процес WLTRYSVC запускається іншим додатком - BCMWLTRY.EXE. Цей файл ідентифікується як Broadcom Wireless Network Tray Applet - ще один додаток, встановлений на комп`ютері.

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

Онлайн-досьє

Де шукати інформацію про непроханих прибульців з Мережі? Підозрілі DLL в першу чергу варто перевірити в базі даних Microsoft DLL Help Database, де є можливість пошуку DLL на ім`я. При підозрі, що файл має відношення до шпигунським програмам, можна відвідати сайт Computer Associates Spyware Information Center (https://www3.ca.com/securityadvisor/pest/). Ще один хороший ресурс - Pest Encyclopedia (https://research.pestpatrol.com/), де є інформація про більш ніж 27000 формах шкідливих програм.




Якщо з приводу програми все ще залишаються підозри, її можна повірити за списком Task List Programs на сайті AnswersThatWork.com, де є список звичайних програм, шпигунських утиліт і вірусів. Можна також скористатися постійно діючими локальними засобами, такими як WinPatrol (winpatrol.com) і WinTasks 5 Professional (liutilities.com/products/wintaskspro/). Обидві ці програми підключаються до розміщеної в інтернеті бази даних, де є інформація про тисячі DLL-бібліотек і додатків. Крім того, WinTasks веде ще "чорний список" небажаних процесів, не допускаючи їх повторного запуску.

Ті, для кого пошук шкідливих програм - постійне заняття, можуть скористатися програмою Security Task Manager (neuber.com/taskmanager), яка перевіряє всі виконувані файли, драйвери і DLL незалежно від того, активні вони чи ні.

І останнє. Пошук інформації про фото в інтернеті не повинен бути поверхневим. Чим більше відомостей ви отримаєте, тим вище ймовірність того, що ви не видалите помилково корисну програму або DLL-бібліотеку.

Увага: rootkit

Порівняно недавно з`явилася нова порода шкідливих програм - rootkit-файли, що працюють на рівні ядра операційної системи. Ці засоби дозволяють хакерам приховувати сліди своїх файлів (і самі файли) на інфікованому комп`ютері. На щастя, існують програми, що дозволяють виявити і видалити цю інфекцію.

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

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

Однак rootkit-програми, що діють на рівні ядра операційної системи, змінюють саме ядро або компоненти ОС. Крім того, їх набагато важче виявити.

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

Вперше rootkit-програми з`явилися і набули поширення в Linux і UNIX. Як випливає з їх назви, вони дозволяють хакеру отримати доступ на рівні root - вищий рівень адміністративних привілеїв. Найнебезпечніший вид rootkit - кошти перехоплення натискань клавіш, що дозволяють дізнаватися реєстраційні дані і паролі користувачів.

Засоби боротьби з rootkit

Більшість програмних детекторів, в тому числі антивіруси, антишпигуни і IDS (Intrusion Detection Sensors - датчики вторгнень) здатне виявити rootkit-програми ядра.

Стратегій розпізнавання rootkit ядра на інфікованому комп`ютері мало, так як кожен rootkit поводиться по-своєму і по-своєму замітає сліди.

Іноді вдається виявити rootkit ядра, перевіряючи інфіковану систему з іншого комп`ютера по мережі. Ще один метод - перезавантажити комп`ютер з Windows PE, скороченою версією Windows XP, що запускається з компакт-диска, і порівняти профілі чистої і інфікованої операційних систем.

У Windows з rootkit-файлами добре справляється безкоштовна утиліта RootkitRevealer (sysinternals.com), яка шукає файли і ключі системного реєстру, які можуть мати відношення до rootkit. Однак програма RootkitRevealer не захищена "від дурня": далеко не всі знайдені нею об`єкти є шкідливими. Для того щоб ефективно використовувати RootkitRevealer, необхідно правильно трактувати надається нею інформацію.

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

RootkitRevealer повинна працювати в повній самоті: користувачеві рекомендується відключити всі інші програми, в тому числі фонові і ті, що включаються автоматично, такі як зберігач екрану, відкласти мишку, відійти від комп`ютера і дозволити RootkitRevealer зробити свою справу.

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

Результатом роботи RootkitRevealer є список файлів, в число яких потрапляють метадані NTFS для кожного розділу диска. Ці файли створюються при нормальній роботі Windows, і не завжди є ознакою наявності rootkit. Деякі розбіжності цілком припустимі. Наприклад, перші 10-20 результатів можуть мати вигляд звичайних ключів системного реєстру, але навпаки них має стояти Access denied. Це звичайні результати для нормальної системи, незалежно від наявності в ній rootkit.

Але файли з позначкою Hidden from Windows API, - це привід для занепокоєння. Такі файли можуть перебувати в тимчасових теках, папці Windows або ще де-небудь на диску. Якщо вам зустрінуться такі файли, спробуйте перейти до них за допомогою Windows Explorer (Провідника) і перевірити: видимі чи вони там? Втім, і це не можна вважати прямим доказом. Наприклад, технології приховування файлів використовують такі корисні програми, як антивірус Касперського.

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

Менш досвідчені користувачі можуть вдатися до допомоги антивірусного сканера F-Secure BlackLight (f-secure.com/blacklight), який виявляє та знешкоджує rootkit-файли. Незважаючи на спартанський дизайн, це досить серйозна програма.

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

На закінчення відзначимо, що, хоча вперше rootkit з`явилися в Linux і UNIX, сьогодні їх найулюбленіша п`ятниця - Windows. Такої популярності вона зобов`язана не тільки широкому поширенню, а й наявності в ній потужних API (Application Programming Interfaces - програмних інтерфейсів додатка), завдяки яким легко замаскувати справжнє поведінка системи. Популярний Web-браузер Internet Explorer тільки спрощує завдання проникнення в систему хакерів, вірусів і електронних черв`яків, які часто є носіями rootkit-коду.


Поділися в соц. мережах:

По темі: