Що таке процес svchost.exe?

Відео: Як видалити процес svchost.exe (netsvcs)



Практично, кожен користувач Windows, неодноразово спостерігав в списку відображаються диспетчером задач, кілька процесів з ім`ям svchost.exe. Для різних версій Windows і різної кількості використовуваних компонентів, кількість таких процесів може становити від декількох штук до декількох десятків. При чому, це цілком нормальне явище, оскільки svchost.exe - це головний процес (Host process) для системних служб (сервісів), що завантажуються з динамічних бібліотек (.dll). Для запуску таких служб використовується один і той же виконуваний файл svchost.exe з каталогу Windows system32 , але йому передаються різні параметри командного рядка, для кожної конкретної служби - свої. Наприклад, для запуску служби Віддалений виклик процедур (RPC) використовується командний рядок:

C: Windows system32 svchost.exe -k RPCSS

Використання єдиного процесу для роботи декількох сервісів дозволяє істотно зменшити витрати оперативної пам`яті і ресурсів процесора. Всі копії svchost.exe запускаються системним процесом services.exe (батьківським процесом) в ході завантаження і ініціалізації системи. Виклики svchost.exe для системних служб вказані в ключі реєстру

HKEY_LOCAL_MACHINE System CurrentControlSet Services ім`я служби



Запис для служби, яку запускає svchost.exe в реєстрі Windows.


параметр ImagePath задає командний рядок для даної служби або групи служб. Ім`я бібліотеки, яка використовується для даної служби, визначається параметром ServiceDll підрозділу Parameters

Запис параметрів служби в реєстрі Windows.


Перелік всіх служб, що запускаються з використанням svchost.exe і їх об`єднання в групи визначається вмістом ключа реєстру

HKEY_LOCAL_MACHINE Software Microsoft WindowsNT CurrentVersion Svchost



Перелік служб, що запускаються svchost.exe.


Так, наприклад, в групу DcomLaunch входять 3 служби:

Power - живлення

PlugPlay - Plug-and-Play

DcomLaunch - Модуль запуску процесів DCOM-сервера

Кожен ключ відповідає імені групи, а значення ключа - списку (через пробіл) імен сервісів, що відносяться до групи.

Деякі комп`ютерні віруси і трояни маскуються під ім`я svchost.exe, поміщаючи виконуваний файл в відмінний від Windows system32 каталог, наприклад, віруси Net-Worm.Win32.Welchia.a, Virus.Win32.Hidrag.d, Trojan-Clicker.Win32.Delf.cn. Вірною ознакою наявності такого вірусу є запущений від імені користувача процес з ім`ям svchost.exe. справжній процес svchost.exe завжди виконується в контексті облікових записів SYSTEM, LOCAL SERVICE або NETWORK SERVICE. Крім того, svchost.exe запускається тільки як системна служба, і ніколи не запускається з розділу Run реєстру або з папки Автозавантаження. Однак, існує можливість створення шкідливою програмою послуги, що застосовує для запуску справжній svchost.exe, але виконує шкідливі дії з використанням власної бібліотеки .dll, наприклад, так це робить вірус Conficker (Kido). Подібний прийом зустрічається значно рідше, ніж за часів Windows XP / 2000, у зв`язку з тим, що в сучасних версіях Windows реалізувати даний спосіб зараження системи стає все складніше і складніше. Як правило, ознакою такого вірусного зараження є використання файлу .dll, розташованого не в каталозі Widows System32 , відсутність цифрового підпису розробника, а також адекватного опису підробленої служби.



Як визначити системну службу, пов`язану з конкретним процесом svchost.exe



Іноді, потрібно визначити, яка саме служба відповідає конкретному процесу scvhost.exe, наприклад, коли цей процес споживає значні ресурси центрального процесора:

Процес svchost.exe споживає 50% ресурсів CPU.


В даному прикладі, процес svchost.exe споживає 50% ресурсів процесора. Це ненормально, і зовні може виявлятися у вигляді зниження продуктивності, підвисань (лагов), стрибкоподібного переміщення покажчика миші і т.п. Для вирішення даної проблеми, в першу чергу необхідно визначити, чи дійсно цей процес є системним, і з якою саме службою він пов`язаний. Існує кілька способів, застосування яких залежить від версії Windows.

Використання утиліти командного рядка
tasklist.exe

Для отримання списку виконуються служб в будь-якої версії Windows можна використовувати команду:

tasklist / svc

tasklist / svc gt; % TEMP% svclist.txt - то ж, що і в попередньому прикладі, але з видачею результатів в текстовий файл. Результат буде представлений в DOS-кодуванні, і для перегляду його кириличної складової стандартними засобами Windows, потрібно перекодування, або редактор з підтримкою кодової сторінки CP866 (DOS), як наприклад, Notepad ++ або вбудований редактор Far Manager.

notepad ++% TEMP% svclist.txt - відкрити створений файл зі списком сервісів.

Приклад відображається:

Ім`я образу PID Служби ========================= ======== ============= =============================== System Idle Process 0 Н / ДSystem 4 Н / Дsmss.exe 492 Н / Дcsrss.exe 668 Н / Дwininit.exe748 Н / Дcsrss.exe 764 Н / Дservices.exe 816 Н / Дlsass.exe 832 KeyIso, SamSslsm.exe840 Н / Дwinlogon.exe 892 Н / Дsvchost.exe984 DcomLaunch, PlugPlay, Powersvchost.exe600 RpcEptMapper, RpcSscmdagent .exe 744 CmdAgentsvchost.exe 1040 CryptSvc, Dnscache, LanmanWorkstation, NlaSvc, TermServiceatiesrxx.exe 1096 AMD External Events Utilitysvchost.exe 1132 AudioSrv, Dhcp, eventlog, HomeGroupProvider, lmhosts, wscsvcsvchost.exe 1 176 AudioEndpointBuilder, CscService, HomeGroupListener, Netman, PcaSvc, TrkWks, UmRdpService, UxSms, Wlansvc, wudfsvcsvchost.exe 1236 EventSystem, fdPHost, FontCache, netprofm, nsi, WdiServiceHostsvchost.exe 1288 AeLookupSvc, BITS, Browser, CertPropSvc, EapHost, gpsvc, IKEEXT, iphlpsvc, LanmanServer, ProfSvc, Schedule, SENS, SessionEnv, ShellHWDetection, Themes, Winmgmt. . .
Відображення назви образу (виконуваного файлу), унікальний ідентифікатор процесу PID і коротка назва служби. Так, наприклад, процес svchost.exe з ідентифікатором 984 має відношення до служб з короткими іменами DcomLaunch, PlugPlay, Power. Для отримання докладної інформації про службу, в тому числі і її виведене ім`я можна використовувати команду управління службами SC:

sc qc power - відобразити конфігурацію служби Power

Приклад відображається:







Ім`я_служби: powerТіп: 20 WIN32_SHARE_PROCESSТіп_запуска: 2 AUTO_STARTУправленіе_ошібкамі: 1 NORMALІмя_двоічного_файла: C: Windows system32 svchost.exe -k DcomLaunchГруппа_запуска: PlugplayТег: 0Виводімое_імя: ПітаніеЗавісімості: Начальное_імя_служби: LocalSystem


При необхідності, відомості про службу можна отримати з використанням оснастки "Служби" консолі управління Microsoft (комбінація клавіш Win + R і виконати services.msc), Або через меню Панель управління - Адміністрування - Служби

Властивості служби, виконуваної через svchost.exe


Використання Диспетчера завдань Windows (
taskmgr.exe)

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



Список процесів і контекстне меню диспетчера задач Windows 10.


При виборі пункту Перейти до служб відкриється вікно зі списком служб, в якому будуть підсвічені служби, пов`язані з обраним процесом svchost.exe


Список служб, пов`язаних з процесом svchost.exe Windows 10.


При необхідності, можна натиснути на посилання відкрити службив нижній частині екрана, і, безпосередньо з диспетчера задач, відкрити список системних служб (оснастку консолі управління Windows services.msc). Диспетчери завдань Windows Vista - Windows 8.1 менш інформативні і володіють меншою функціональністю, але також дозволяють виконувати перехід від обраного процесу до пов`язаних з ним службам.

Використання Process Explorer (
procexp.exe) З пакету Sysinternals Suite

утиліта Process Explorer не входить до складу стандартних дистрибутивів Windows і може бути завантажена з сайту Microsoft або в складі пакету Sysinternals Suite, або як окремий програмний продукт - Сторінка завантаження Process Explorer

Програма не вимагає установки, досить розпакувати файли з пакету і запустити виконуваний файл procexp.exe. Можливості Process Explorer настільки великі, що навіть для їх перерахування буде потрібно окрема немаленька стаття. А для отримання відомостей про процес досить просто підсвітити його покажчиком мишки:

Список процесів і контекстне меню диспетчера задач.


Більш детальну інформацію можна отримати, відкривши властивості процесу подвійним клацанням, або через контекстне меню, яке викликається правою кнопкою мишки - Properties. на вкладці Services відображається повний перелік всіх служб, пов`язаних з обраним процесом.

Перегляд властивостей процесу в Process Explorer.
Для кожної служби виводиться короткий і ім`я, шлях і ім`я використовуваної бібліотеки dll, а також, при виборі конкретної служби, - її короткий опис в нижній частині вікна.

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

Коренем дерева процесів є рівень System Idle Process . Фактично, це не реальний процес, а індикатор стану простою системи, коли центральний процесор не виконує будь-яких програм. Наступним елементом дерева представлений рівень System. Цей рівень так само, не є реальним процесом і призначений для відображення активності системи, пов`язаної з обробкою переривань, роботою системних драйверів, диспетчера сеансів Windows (Session Manager) smss.exe, і csrss.exe (Client - Server Runtime). елемент Interrupts є рівнем для індикації обробки апаратних переривань, елемент DPCs - для індикації обробки відкладених викликів процедур (Deferred Procedure Calls). Механізм обробки апаратних переривань в Windows передбачає як би дворівневу обробку. При виникненні запиту на переривання, перш за все, отримує управління програма-обробник апаратного переривання, що виконує лише найнеобхідніші критичні операції, а решта дії відкладаються до тих пір, поки не з`явиться відносно вільне процесорний час. Тоді ці дії будуть виконані в рамках виклику відкладеної процедури. У багатопроцесорних системах кожен процесор має свою окрему чергу відкладених викликів. Порядок обробки черги запитів на переривання і черги відкладених процедур визначається їх пріоритетами. Для визначення пріоритетів використовується рівень запиту на переривання IRQL - програмно-апаратний механізм, застосовуваний для синхронізації виконання окремих процесів в операційних системах сімейства Windows. рівні IRQL апаратних переривань задаються програмуванням регістрів контролера переривань, а рівні IRQL програмного коду операційної системи - реалізуються програмно.

Ступінь використання ресурсів рівнем System дерева процесів, що відображається програмою Process Explorer, характеризує зайнятість операційної системи диспетчеризацией і обробкою переривань. Високий ступінь використання процесора для обробки переривань може вказувати на наявність проблем з обладнанням або некоректно працюючий драйвер пристрою. Зазвичай, це супроводжується ефектом помітного зниження загальної "корисною" продуктивності системи і зовні проявляється у вигляді "гальм" і "підвисань» на призначених для користувача завдання.

Інша частина дерева відображає ієрархію реально виконуються в Windows процесів. Так, наприклад, додаток служб і контролерів SERVICES.EXE забезпечує створення, видалення, запуск і зупинку служб (сервісів) операційної системи, що і відображається в списку породжуваних їм процесів.

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

CPU - рівень використання центрального процесора.

Private Bytes - обсяг оперативної пам`яті, виділеної даному процесу і не розділяється з іншими процесами.

Working Set - робочий набір процесу, що представляє собою суммарнийоб`ем всіх сторінок використовуваної їм пам`яті, в даний момент часу. Розмір цього набору може змінюватися, в залежності від запитів процесу. Практично всі процеси використовують пам`ять, що розділяється.

Description - опис процесу

Company Name - ім`я компанії-розробника.

Path - шлях і ім`я файлу, що виконується.

Verified Signer - ознака достовірності цифрового підпису виконуваного файлу. Наявність рядка "Not verified" говорить про те, що цифровий підпис відсутній або її не вдалося перевірити. Для перевірки цифрового підпису потрібен доступ в Інтернет.

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

При виборі рівня System дерева процесів в нижній панелі можна отримати інформацію про всі завантажених драйверах системи, їх опис, версію, шлях виконуваного файлу, адреса в оперативній пам`яті, розмір, Крім того, можна перевірити цифровий підпис, а також переглянути строкові значення в самому виконуваному файлі або в оперативній пам`яті.

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

Process Explorer - властивості процесу.


Використання Process Explorer дозволяє легко визначити додаткові ознаки, які можуть належати шкідливій програмі, замаскованої під легальний процес:

- в дорозі виконуваного файлу присутній папка для зберігання тимчасових файлів (TEMP), або у випадку з svchost.exe , шлях відрізняється від Windows System32

- відсутня інформація про виробника програмного забезпечення.

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

- відсутні поля опису завантажувального образу Version і Time

- ім`я виконуваного файлу відповідає імені реально існуючого системного файлу Windows, але шлях відрізняється від WINDOWS, WINDOWS SYSTEM32 або WINDOWS SysWOW64 (для 64-розрядних систем). Це характерно для вірусів, що маскуються під найчастіші програмні модулі - svchost.exe, smss.exe, csrss.exe, winlogon.exe і т.п.

- шлях виконуваного файлу збігається c WINDOWS або WINDOWS SYSTEM32, але ім`я трохи відрізняється від поширених імен системних файлів - swchoct.exe замість svchost.exe і т.п.

- виконуваний файл знаходиться в WINDOWS або WINDOWS SYSTEM32, але дата його створення значно відрізняється від дати створення інших системних файлів і приблизно відповідає передбачувану дату зараження.

Крім відображення інформації, утиліта дозволяє вбити обраний процес або дерево процесів. В ОС Windows XP і більш ранніх, знищення деяких системних процесів, як наприклад winlogon.exe, може призводити до синього екрану смерті (BSoD), а в більш пізніх версія Windows - до аварійного завершення сеансу користувача.

На додаток до цього матеріалу:

Короткий опис і інструкція по використанню утиліти Process Explorer

Короткий опис і інструкція по використанню утиліти Process Monitor

Список команд командного рядка з описом і прикладами.


Якщо ви бажаєте поділитися посиланням на цю сторінку в своїй соціальній мережі, користуйтеся кнопкою "Поділитися"



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

Схожі
Svchost.exe (generic host process for win32 services)Svchost.exe (generic host process for win32 services)
Утиліти sysinternals suiteУтиліти sysinternals suite
Процес svchost.exe вантажить систему windows 7Процес svchost.exe вантажить систему windows 7
Команда sc - управління службами.Команда sc - управління службами.
Новий диспетчер задач windows 8Новий диспетчер задач windows 8
Команда taskkill - завершити процес.Команда taskkill - завершити процес.
Служби в windows xp. Відключаємо невикористовувані службиСлужби в windows xp. Відключаємо невикористовувані служби
Усуваємо "глюки" в windows xpУсуваємо "глюки" в windows xp
Команда query - відображення інформації про сеанси користувачів.Команда query - відображення інформації про сеанси користувачів.
Процес svchost.exe є вірусом, як це виявити?Процес svchost.exe є вірусом, як це виявити?
» » Що таке процес svchost.exe?