svchost.exe в семействе операционных систем Microsoft Windows (2000, XP, Vista, Windows 7, Windows 8, Windows 10) — главный процесс (англ. Host process) для служб, загружаемых из динамических библиотек.

Использование единого процесса для работы нескольких сервисов позволяет существенно уменьшить затраты оперативной памяти и процессорного времени.

Алгоритм работы

править

Все копии svchost.exe запускаются системным процессом services.exe. Вызовы svchost.exe для служб указаны в ключе реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\<Service> (где <Service> имя сервиса) в поле ImagePath; например, служба ComputerBrowser (имя службы Browser) вызывается как %SystemRoot%\system32\svchost.exe -k netsvcs. При этом группировка процессов осуществляется на основании данных ветви реестра HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\Svchost, где каждый ключ соответствует имени группы, а значение ключа — списку (через пробел) имён служб, относящихся к группе.

Вирусная активность

править

Некоторые компьютерные вирусы и трояны маскируются, используя имя svchost.exe и помещая исполняемый файл в отличный от system32 каталог, например, Net-Worm.Win32.Welchia.a, Virus.Win32.Hidrag.d, Trojan-Clicker.Win32.Delf.cn. Системный «svchost.exe» запускается только посредством механизма системных служб, никогда — из раздела Run реестра (таким образом, он не должен присутствовать на вкладке Автозагрузка msconfig). Также возможно создание службы, использующей настоящий Svchost, но выполняющей вредные действия, например, так делает вирус Kido.

Источники

править
  • Описание svchost в:
    • Windows XP Pro [1]
    • Windows 2000 [2]
  • Описание изменений в ядре Windows XP (по сравнению с windows 2000) [3]