Demystifying the “SVCHOST.EXE” Process and Its Command Line Options
![]()
The Service Host process or “svchost.exe” is one the most notorious processes out there. It got a bad reputation for being “malicious” due to mostly two factors, one is malware impersonating it and the other is good old “Task Manager”.
Because of the way task manager was designed in the old days (and to some extent today), it never gave much details into processes on the system and especially “special” processes like “svchost.exe”. So by using the task manager to see what processes are opened, you’ll get a bunch of “svchost.exe” processes with the description “Host Process for Windows Services”. Without any information about the services that are hosted in it. So it only took malware two additional steps to make itself look legitimate.
First, name the malware “svchost.exe” and second, give it the description “Host Process for Windows Services” and you’ll be indistinguishable from the legitimate “svchost.exe” process as far as the old task manager is concerned.
You could of course use the “Tasklist” command with the “/SVC” flag or tools like “Process Explorer” or even the new task manager in windows 10 to view the list of services hosted inside the “svchost.exe” process . But this is not the purpose of this blog post.
Instead, let’s take a deeper look and try to answer how services get launched, what is the relationship between “services.exe” and “svchost.exe”, what type of services are hosted inside an “svchost.exe” process and what is the meaning behind the flags in an “svchost.exe” command line.
The Service Control Manager (SERVICES.EXE)
The service control manager or SCM for short is a system process that runs the image “services.exe” from the “System32” folder on disk. In short it is the one process responsible for running and managing services on the system.
It keeps track of all the services that are installed via a key in the registry called the SCM database, which is located in the following path.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
When the SCM starts at system boot, it launches all the services that are marked with “auto-start” and all other dependencies needed to run the services.
All those services and others will be spawned as children of the “services.exe” process and when looking at the “services.exe” process we’ll see two kinds of processes.
Processes that are hosting their own services and multiple “svchost.exe” instances.
The Service Host (SVCHOST.EXE)
From the Microsoft documentation, here a small description of the “svchost.exe” process.
The Service Host (svchost.exe) is a shared-service process that serves as a shell for loading services from DLL files — Microsoft Docs
If we take a look at a running “svchost.exe” instance and check its command line, we’ll see something similar to the following:
As previously discussed the command line doesn't give much insight on what service is hosted inside this process.
Inspecting the process with a tool like process explorer reveals that this instance is actually hosting four services.
So the question to answer is how does this simple command line arguments reference multiple services. To explain this let us take a look at the arguments and what they mean.
The “K” Flag
When “svchost.exe” uses the “-k” flag, a request will be made to the following registry key.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Svchost
Where it will try to locate the value corresponding to the one sent via the “-k” flag.
This registry key defines values for Service Host Groups. Each value will contain a string that contains references to the services to launch once the “-k” flag is used.
In our example when the “svchost.exe” process used the “-k UnistackSvcGroup”, it’ll look inside the registry and find the corresponding value (on my machine).
Once its reads these values and no other flag was specified, it will go and load each service referenced inside form its corresponding registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\[Service Name]
And that’s how you get multiple services on a single “svchost.exe” process.
The “S” Flag
The “svchost.exe” process in addition of being launched with the –“k” flag, can sometimes uses the “-s” flag, like the example below.
When the “-s” flag is used, this will tell the “svchost.exe” process to load only the service specified by the flag from the selected group.
In our example its only requesting the “CDPUserSvc” service inside the “UnistackSvcGroup” registry key and loading that.
The “P” Flag
For me, the “-p” flag was one of those mysterious flags in the service host process. Fortunately, I’ve recently read a blog post by @redmed666 which shed some light on this. I’ll share with you the TL;DR.
The “P” flag enforces different policies: DynamicCodePolicy, BinarySignaturePolicy and ExtensionPolicy
I highly suggest you go read the full blog post to get a better understanding on how he reached this conclusion.
Что такое хост-процесс для служб Windows svchost.exe и почему он грузит процессор

У многих пользователей возникают вопросы, связанные с процессом «Хост-процесс для служб Windows» svchost.exe в диспетчере задач Windows 10, 8 и Windows 7. Некоторых смущает, что процессов с таким именем большое число, другие сталкиваются с проблемой, выраженной в том, что svchost.exe грузит процессор на 100% (особенно актуально для Windows 7), вызывая тем самым невозможность нормальной работы с компьютером или ноутбуком.
В этой подробно о том, что это за процесс, для чего он нужен и как решать возможные проблемы с ним, в частности выяснить — какая именно служба, запущенная через svchost.exe грузит процессор, и не является ли данный файл вирусом.
Svchost.exe — что это за процесс (программа)
Svchost.exe в Windows 10, 8 и Windows 7 является основным процессом для загрузки служб операционной системы Windows, хранящихся в динамических библиотеках DLL. То есть службы Windows, которые вы можете увидеть в списке служб (Win+R, ввести services.msc) загружаются «через» svchost.exe и для многих из них запускается отдельный процесс, которые вы и наблюдаете в диспетчере задач.
Службы Windows, а особенно те, за запуск которых отвечает svchost, являются необходимыми компонентами для полноценной работы операционной системы и загружаются при ее запуске (не все, но большинство из них). В частности, таким образом запускаются такие нужные вещи, как:
- Диспетчеры различных видов сетевых подключений, благодаря которым Вы имеете доступ в Интернет, в том числе и по Wi-Fi
- Службы для работы с устройствами Plug and Play и HID, позволяющие Вам пользоваться мышками, веб-камерами, USB-клавиатурой
- Службы центра обновления, защитник Windows 10 и 8 другие.
Соответственно, ответ на то, почему пунктов «Хост-процесс для служб Windows svchost.exe» много в диспетчере задач заключается в том, что системе необходимо запускать много служб, работа которых выглядит как отдельный процесс svchost.exe.

При этом, если каких-либо проблем данный процесс не вызывает, вам, вероятнее всего, не стоит каким-либо образом что-то настраивать, переживать о том, что это вирус или тем более пробовать удалить svchost.exe (при условии, что нахождение файла в C:\Windows\System32 или C:\Windows\SysWOW64, иначе, в теории, может оказаться, что это вирус, о чем будет упомянуто далее).
Что делать, если svchost.exe грузит процессор на 100%
Одна из самых распространенных проблем, связанных с svchost.exe — то, что этот процесс грузит систему на 100%. Наиболее частые причины такого поведения:
- Выполняется какая-либо стандартная процедура (если такая нагрузка не всегда) — индексация содержимого дисков (особенно сразу после установки ОС), выполнение обновления или его загрузки и подобные. В этом случае (если это проходит «само») делать обычно ничего не требуется.
- Какая-то из служб по какой-то причине работает неправильно (тут попробуем выяснить, что это за служба, см. далее). Причины неправильной работы могут быть разными — повреждения системных файлов (может помочь проверка целостности системных файлов), проблемы с драйверами (например, сетевыми) и другие.
- Проблемы с жестким диском компьютера (стоит выполнить проверку жесткого диска на ошибки).
- Реже — результат работы вредоносного ПО. Причем не обязательно сам файл svchost.exe является вирусом, могут быть варианты, когда посторонняя вредоносная программа обращается к Хост-процессу служб Windows таким образом, что вызывает нагрузку на процессор. Тут рекомендуется проверить компьютер на вирусы и использовать отдельные средства удаления вредоносных программ. Также, если проблема исчезает при чистой загрузке Windows (запуск с минимальным набором системных служб), то стоит обратить внимание на то, какие программы есть у вас в автозагрузке, возможно, влияние оказывают они.
Наиболее распространенный из указанных вариантов — неправильная работа какой-либо службы Windows 10, 8 и Windows 7. Для того, чтобы выяснить, какая именно служба вызывает такую нагрузку на процессор, удобно использовать программу Microsoft Sysinternals Process Explorer, скачать которую можно бесплатно с официального сайта https://technet.microsoft.com/en-us/sysinternals/processexplorer.aspx (представляет собой архив, который нужно распаковать и запустить из него исполняемый файл).
После запуска программы вы увидите список запущенных процессов, в том числе проблемный svchost.exe, нагружающий процессор. Если навести на процесс указатель мыши, во всплывающей подсказке появится информация о том, какие конкретно службы запущенны данным экземпляром svchost.exe.

Если это одна служба — можно попробовать отключить её (см. Какие службы можно отключить в Windows 10 и как это сделать). Если несколько — можно экспериментировать с отключением, а можно по типу служб (например, если всё это — сетевые службы) предположить возможную причину проблемы (в указанном случае это могут быть неправильно работающие сетевые драйвера, конфликты антивирусов, или же вирус, использующий ваше сетевое подключение, задействуя при этом системные службы).
Как узнать, svchost.exe — это вирус или нет
Существует некоторое количество вирусов, которые либо маскируются, либо загружаются с помощью настоящего svchost.exe. Хотя, в настоящее время они встречаются не очень часто.
Симптомы заражения могут быть различными:
- Основной и почти гарантированно говорящий о вредоносности svchost.exe — расположение этого файла вне папок system32 и SysWOW64 (чтобы узнать расположение, вы можете кликнуть правой кнопкой мыши по процессу в диспетчере задач и выбрать пункт «Открыть расположение файла». В Process Explorer посмотреть расположение можно схожим образом — правый клик и пункт меню Properties). Важно: в Windows файл svchost.exe можно обнаружить также в папках Prefetch, WinSxS, ServicePackFiles — это не вредоносный файл, но, одновременно, среди запущенных процессов файла из этих расположений быть не должно.
- Среди прочих признаков отмечают, что процесс svchost.exe никогда не запускается от имени пользователя (только от имени «Система», «LOCAL SERVICE» и «Network Service»). В Windows 10 это точно не так (Shell Experience Host, sihost.exe, запускается именно от пользователя и через svchost.exe).
- Интернет работает только после включения компьютера, потом перестает работать и страницы не открываются (причем иногда можно наблюдать активный обмен трафиком).
- Другие обычные для вирусов проявления (реклама на всех сайтах, открывается не то, что нужно, изменяются системные настройки, компьютер тормозит и т.д.)
В случае, если у Вас возникли подозрения на то, что на компьютере какой-либо вирус, имеющий к svchost.exe, рекомендую:

- С помощью ранее упоминавшейся программы Process Explorer кликнуть правой кнопкой мыши по проблемному экземпляру svchost.exe и выбрать пункт меню «Check VirusTotal» для проверки этого файла на вирусы.
- В Process Explorer посмотреть, какой процесс запускает проблемный svchost.exe (т.е. в отображаемом в программе «дереве» находится «выше» в иерархии). Проверить его на вирусы тем же способом, что был описан в предыдущем пункте, если он вызывает подозрения.
- Воспользоваться антивирусной программой для полной проверки компьютера (так как вирус может быть не в самом файле svchost, а просто использовать его).
- Посмотреть описания вирусов здесь https://threats.kaspersky.com/ru/ . Просто введите в поисковую строку «svchost.exe» и получите список вирусов, использующих этот файл в своей работе, а также описание, как именно они работают и каким образом скрываются. Хотя, наверное, это излишне.
- Если по имени файлов и задач вы способны определить их подозрительность, можно посмотреть, что именно запускается с помощью svchost с помощью командной строки, введя команду Tasklist /SVC
Svchost.exe – что это такое, и почему он грузит процессор?
Пользователи операционной системы Windows начинают искать информацию о процессе «svchost.exe» в том случае, когда тот грузит процессор на 100%. Особенно ярко выраженные случаи нагрузки наблюдается в операционной системе Window 7 и 10 – чем дестабилизируют нормальную работу ноутбука или компьютера. Советую дочитать статью до конца, так как я буду приводить инструкции по решению проблем с загрузкой процессора и оперативной памяти.
ПОМОЩЬ СПЕЦИАЛИСТА! Если у вас будут какие-то вопросы, дополнения или вы увидите ошибку, то вы смело можете писать в комментариях – буду рад вам помочь.
О процессе
Что за процесс svchost.exe – это главный процесс, отвечающий за загрузку служб Windows, хранящиеся в динамических библиотеках «dll». По сути, он является ответственным за выгрузку всех служб ОС, которые можно найти в «Службах». Открывается он в разделе «Панель управления» – «Администрирование» – «Службы». Или с помощью клавиш «Win+R» и команды: «services.msc».

Каждая из этих служб проходит через «svchost.exe» и в дальнейшем запускает собственный процесс, который также отображается в диспетчере задач. Многие службы вытягиваются при запуске системы, из-за чего svchost.exe грузит процессор Windows 7 на сто процентов, не давая адекватно начать работать при старте системы. К сожалению, некоторые службы – это часть «основного состава» Виндовс и исключение их загрузки дестабилизирует ОС. Но есть и те, которые смело можно отключить – об этом я расскажу чуть позже.
Среди запускаемых служб можно увидеть:
- Отвечающие за различные сопряжения по сети (например, Wi-Fi, Ethernet).
- Отвечающие за периферию (вебки, USB-микрофоны и прочие USB-устройства).
- Отвечающие за интегрированное программное обеспечение (Windows Defender, Центр обновления, средства диагностики).
Почему процессов много?

Полистав диспетчер задач, действительно можно обнаружить множество процессов «svchost.exe». Самое забавное, выбрав любой из них, нажав ПКМ, и кликнув «Расположение файла», попадаешь на исполняемый файл «exe», находящийся в папке «system32».

Проблема часто состоит в том, что один или несколько таких процессов грузит память и процессор до предела, и это продолжается продолжительное время.
Почему ЦП грузится до 100%
Всегда можно сказать: «Система грузит на 100% железо, потому что оно слабое». С этим, конечно, не поспоришь, но файл «svhost» может нагружать даже мощные процессоры, хотя и в краткосрочной перспективе. Обычно это связано с тем, что:
- Исполняется временно стандартная процедура (если нагрузка появляется и исчезает) – сканирование содержимого накопителя (в том числе системный раздел, который подгружает кроме ЦП еще и память), обновление системы (грузит ЦП и память) и прочее. Если лаги компьютера наблюдаются временные, следует переждать, пока система доделает начатые дела. Дополнительных действий не требуется.
- Одна из служб дала сбой и работает не в штатном режиме, при этом нагружая систему попеременно или постоянно. Причин может быть уйма. Наиболее частые – конфликтные драйвера. В данном случае можно постараться узнать, что это за служба. Как это сделать? – читайте ниже!
- Жесткий диск посыпался или же словил много бэдов. В этом случае поможет проверка винчестера программой «Victoria» на битые сектора и бэд треки.
- Вирусное программное обеспечение замаскировало свою деятельность под процесс local Это бывает редко, но все же бывает. Таким способом обращается вирус к svchost.exe и нагружает ЦП. Обнаружить вредоносный код позволяет хороший антивирус. Если под рукой нет такого – выручит запуск Windows в безопасном режиме. Благодаря минимальному набору загружаемых в ОС компонентов можно проверить, есть ли такая сильная нагрузка на ЦП или нет. Если отсутствует – ищите «зловреда» среди установленного ПО, с подозрительной активностью.
Поскольку самым распространенным вариантом полноценной нагрузки на ядра ЦП является неверная работа какой-либо службы файла «svchost», нужно выяснить, что это за process, за что он отвечает и реально ли его перезапустить.
Способ определения процессов
Хотя командная строка, это наше все, и с помощью команды:
tasklist /svc /fi “imagename eq svchost.exe
- Узнать краткое имя процесса.
- Определить его ID и сопоставить с тем, что показывает 100% загрузку в диспетчере задач.
- Определить исполняемую службу путем прокликивания команд в «Службах».
- Пустить в «reload» или остановить его, сняв колоссальную загрузку ЦП.
Но можно пойти более кратким путем и загрузить утилиту, в которой уже содержится вся нужная информация. Называется утилита «Process Explorer», а загрузить ее можно с сайта Майкрософт .

Скачав и запустив программное обеспечение (для x64 операционных систем из архива лучше запускать версию procexp64) можно увидеть список всех процессов системы, например: smssvhost, sihost и развернутое дерево svchost и другие.
Наведя курсор мыши на тот процесс, который сильно грузит систему, можно выудить необходимые сведения.

Нажав правой кнопкой на него в программе, можно:
- KillProcess – отключить процесс (может отключиться или перезапуститься).
- KillProcessTree – завершить дерево процессов (поможет, если тот связан с другими и не может быть отключен в одиночку / или работать без остальных).
- Restart – перезапуск (иногда срабатывает и больше не нагружает систему).
- Suspend – поставить на паузу, не выключая (редко срабатывает).

Поэкспериментируйте с выключением (kill). Хуже синего экрана, который устраняется перезагрузкой системы словить ничего не сможете (система не разрешит).
Решение и ускорение
Для чистоты эксперимента, можете сравнить загружаемые в безопасном режиме процессы (с минимальным количеством подтягиваемых драйверов) и их влияние на процессор. Если же и в безопасном режиме проблема будет наблюдаться, останется несколько вариантов:
- Смотрим инструкцию по устранению нагрузки именно из-за этого файла – по этой ссылке.
- Комплексные меры по очистке и ускорению системы. Читаем инструкции: Windows 7 и Windows 10.
- Переустановите Windows (можете поставить версию попроще) – самый крайний случай.
- Меняйте компоненты системы (характерно для компьютеров с устаревшим и слабым по сегодняшним меркам железом).
Как определить, вирус ли этот процесс?
Если «зловред» снова начал маскироваться под основной системный процесс, определить вирус svchost.exe или нет помогут такие сведения:
- Исполняемый файл размещен вне системных каталогов «system32» или «SysWOW64». Расположение легко проверить в диспетчере задач, нажатием ПКМ и выбором опции «Открыть расположение файла».

- Если исполняемый файл был обнаружен в конечных каталогах: Prefetch, WinSxS, ServicePackFiles – это не зловред, однако одновременно запущенных из этих каталогов процессов не должно быть.
- В Windows 7 такие системные процессы никогда не запускаются от пользовательской учетной записи. В Windows 10 «sihost.exe» и некоторые другие, являющиеся частью этого каскада процессов, запускается от профиля пользователя.

- Сетевое подключение доступно при загрузке ОС, но потом резко пропадает, браузер не может открыть любые страницы в интернете, а кроме загруженности ЦП, диска, еще наблюдается активное перекачивание сетевого трафика в графе «Ethernet» или «Wi-Fi».

- На компьютере со всех уголков полезла реклама (обычно в браузерах, на всех сайтах), перекидывает на те ресурсы, которые не открывал нарочно, компьютер периодически подтормаживает.
Если такое происходит, с помощью выше установленной программы на выявленном процессе используйте опцию «Check Virus Total».

Если на уровень выше процесса находится еще один процесс, его тоже следует просканировать на вредоносный код. При обнаружении проблем, программа сообщит об этом и даст совет, что делать далее.
Совет в целом прост – если это вирус, установите антивирусное ПО, позволяющее убрать его. Берите на вооружение «Kaspersky» или более «тяжеловесный» Avast. Хотя не факт, что загруженная система разрешит поставить его, сохранив вашу нервную систему в целости и сохранности. Вероятно, что вредоносное ПО может использовать в своих корыстных целях загружаемый систему файл, а сам находиться в совершенно другом месте.
Процесс svchost.exe как вычислить вирус?
Какое количество процессов «svchost.exe» должно быть запущенно? На этот вопрос ответить невозможно, так как, в каждом случаи количество запущенных процессов «svchost.exe» разное. Это зависит не только от версии вашей операционной системы, но и от её сборки!
Так как, точного количества процессов узнать невозможно, то этим моментом ни могли воспользоваться создатели вредоносного ПО!
Огромное количество вирусов, троянских программ и прочие вредоносные программы облюбовали процесс «svchost.exe» и, чтобы замаскировать себя в системе, маскируются под этот процесс.
То есть, вредоносные программы запускаются с именем «svchost.exe» и теряются на фоне множества системных процессах с таким же именем. Это приводит к тому, что шансы остаться не замеченным в системе возрастают в несколько раз.
Как вычислить вредоносный процесс svchost.exe
Естественно, если у пользователя возникают подозрения на то, что процесс «svchost.exe» является вредоносным, то первым делом, пользователем будет проскандирован компьютер на наличие вирусов и прочего.
Но, если после проверки антивирусная программа сообщает, что система чистая и вредоносных программ не обнаружено – это может быть не совсем так!
В этом случаи стоит проверить процесс «svchost.exe» вручную. Делается это довольно просто, все что нужно – это знать некоторые моменты о процессе svchost.exe.
1) Процесс всегда запускается из системной папки «System32» Если это ни так, то скорей всего файл с именем svchost.exe является вредоносным.
2) Процесс svchost.exe никогда не запустится от имени пользователя – это нужно помнить. Процесс всегда запускается от «Local Service, Система, Network Service».
Как вы понимаете, если процесс svchost.exe был, запущен от текущего имени пользователя или не из системной папки, то стоит принять меры по проверки подозрительного файла.
Чтобы убедится в том, что запущен оригинальный файл, запустите диспетчер задач и найдите на вкладке «Подробности» список процессов «svchost.exe».

На этом скриншоте все процессы запущены самой же системой, это говорит о том, что, скорее всего среди данного списка вредоносного файла с именем «svchost.exe» нет. Обратите внимание на скриншот ниже…

На этом скриншоте мы видим процесс svchost.exe запущенный от пользователя с именем «SuperUser» Это говорит о том, что данный процесс является с большей степенью вредоносным.
Нужно нажать «ПКМ» где из контекстного меню выбрать «Открыть расположение» откроется проводник Windowsи Вы узнаете полный путь до подозрительного файла! Что делать с ним дальше, думаю это ясно, как день!
Важно знать: Некоторые вирусы непросто используют имя «svchost.exe» для того чтобы скрыть своё присутствие в системе, но и также могут использовать оригинальный файл svchost.exe в своих корыстных целях.
В связи с этим ручная проверка тут результат не даст! Так же выше уже было сказано, что и антивирус может ни дать результата в поиске вируса! Возникает логичный вопрос, что же делать?
Как вариант использовать бесплатный «firewall» среди которых лично я выделяю «comodo firewall» как он может нам помочь? Все просто! Если вирус использующий процесс svchost.exe вдруг задумает проявить сетевую активность, то пользователь будет об этом осведомлён!

Со скриншота хорошо видно, что файл svchost пытается подключиться к серверу по 80-тому порту, оригинальный файл этого никогда делать не будет, соответственно svchost заражён!
Вы можете оперативно заблокировать доступ в сеть для файла svchost, что будет вполне разумно! Так как в данном случае, есть вероятность передачи конфиденциальных данных, например паролей из браузера на «Gate»
Утечка такой информации сами понимаете, чем может закончиться для Вас!
Что делать с заражённым файлом svchost.exe? Так как, от текущего антивируса и ручной проверки толку ровно нуль, то, откройте сайт «virustotal.com» и проверти файл. Кстати, сделайте это, прямя сейчас!
Мой результат такой. Все чистенько! Если бы какой-нибудь антивирус среагировал бы, например «Avast» то, я бы удалил текущий антивирус и установил бы Avast и вылечил бы svchost.exe.
Instabot — модуль для Python, который реализует обертку над API Instagram
Python-Cptchnet — Модуль для работы с API сервиса Cptch.net
pyTelegramBotAPI Библиотека для создание Ботов Telegram
ip2geotools модуль для определения местоположение по IP
VK-API Библиотека для создания скриптов для социальной сети Вконтакте- ТОПовый генератор паролей на Python 3
Если есть возможность — поддержать нас: будем очень признательны. Денежные средства пойдут на дальнейшее развитие проекта!