Систему грузит svhost: Svchost.exe грузит процессор, что делать?
Содержание
Svchost.exe грузит систему (решено)
Некоторое время назад меня прямо таки врасплох застала следующая ситуация: свежий Windows 7 (неделю назад поставлен) и тут начинаются какие-то непонятные тормоза, да ещё и с системным процессом svchost.exe.
Прогнал на вирусы, в том числе на рекламные — чисто!
Оказывается, виной всему была служба Центр обновления Windows.
Да, к сожалению, компания Microsoft не гнушается никакими способами агрессивного продвижения Windows 10, вот и выдумывает новые способы, как усложнить жизнь пользователям предыдущих версий. То обновления перестают вставать, то Центр обновления систему грузит…
Решается очень просто.
В этом месте позволю себе маленькое лирическое отступление — эдакий тест на внимательность. Бывает такое, что вирусные процессы маскируются под системные. Таким образом, у вас в памяти могут крутиться всякие svchots.exe, svschost.exe и т.п. Если вы такие увидите — это вирусы. Так что очень внимательно!
Идём в Пуск и щёлкаем правой кнопкой по пункту Компьютер, и нажимаем Управление
В открывшемся окне выбираем Службы > Центр обновления Windows и нажимаем на кнопку Стоп на панели инструментов.
После этого дважды щёлкаем по пункту Центр обновления Windows и в открывшемся окне выставляем всё, как на рисунке.
Нажимаем ОК.
Я бы не рекомендовал совсем отказываться от Центра обновления Windows, т.к. иногда по нему прилетают действительно важные обновления, связанные с безопасностью системы, поэтому его можно включать время от времени, обновиться и снова выключать.
Вот так просто мы освободили около 1Гб оперативной памяти и не менее 50% загруженности процессора.
Теги:
как починить,
лечим прожорливый svchost.exe
Внимание! Все вопросы по статье прошу писать в комментариях, расположенных ниже, чтобы получить бесплатный ответ.
На вопросы, написанные «в личку», отвечаю только за деньги.
Мат и оскорбления — удаляются, а их автор отправляется в бан навсегда.
Другие статьи в разделе:
Узел службы svchost.
exe: локальная система (ограничение сети)
Одной из самых дурацких служб в нашей любимой операционной системе Windows, является служба svchost.exe, которая очень круто грузит систему. Часто бывает, что взбунтовавшийся процесс svchost.exe буквально начинает дурить голову и проверять на прочность пользователя, если вдруг система решила что что-то не так. Процесс бунта происходит примерно следующим образом: у пользователя начинает все глючить, жутко тормозить и система буквально сходит с ума.
Давайте постараемся без лишней воды понять почему система начинает бунтовать и вообще из себя представляет процесс svchost.exe?
Служба svchost.exe является службой локальной сети вашей операционной системы Windows.
Первым делом, вы должны понять, что процесс svchost.exe — представляет собой комплексную службу и в случае проблем с ней, какого-нибудь конкретного оружия против попросту нет, необходимо пробовать разные пути решения проблемы.
Согласно официальной формулировки от Майкрософт, процесс svchost. exe является комплексной службой с несколькими разделами, которая обеспечивает операционной системе Windows нормальную работу.
Данный процесс очень сильно похож на начальника, который вроде как один, но от его действий зависит многое: от подписания договоров, до непосредственно раздачи заданий другим работникам предприятия.
Практически все службы и программное обеспечение обращается к DLL библиотекам, для корректной работы и вот в результате такого обращения, они все ссылаются на процесс svchost.exe.
Если ваш компьютер стал глючить и в диспетчере задач вы видите кучу запущенных процессов svchost.exe, то вам необходимо найти именно тот, который больше всего грузит систему. В диспетчере задач все это хорошо видно, поэтому спокойно завершайте процесс.
В принципе, можно попросту завершить все запущенные приложения, а для еще пущей уверенности перезагрузить компьютер.
Не забывайте также о том, что процесс svchost.exe именно тот процесс, под который чаще всего маскируются вирусы. Используйте антивирусное программное приложение для сканирования всей системы.
Впрочем, если хотите почистить компьютер от подобного вируса вручную, то необходимо обратить внимание на содержание следующих папок:
C:\WINDOWS\svchost.exe
C:\WINDOWS\system\svchost.exe
C:\WINDOWS\config\svchost.exe
C:\WINDOWS\inet20000\svchost.exe
C:\WINDOWS\inetsponsor\svchost.exe
C:\WINDOWS\sistem\svchost.exe
C:\WINDOWS\drivers \svchost.exe
Динамические сенсорные такты могут также быть источником загруженности процесса svchost.exe, поэтому в том случае если после сканирования системы на вирусы проблема не устранилась, динамические сенсорные такты можно попробовать отключить. Для этого необходимо запустить командную строку, написав в строке ввода приложения Выполнить три буквы, cmd.
Далее пишите следующее bcdedit /set disabledynamictick yes. Дальше необходимо перезагрузить компьютер.
Если в вашем любимом браузере установлено дополнение Superfish, то его также можно попробовать отключить, так как это дополнение часто подгружает процесс svchost. exe.
Ну и на последок, стоит попробовать запустить вашу операционную систему Windows в безопасном режиме и проверить, будет ли она нормально работать в таком варианте. Если нет, то скорее всего дело в вирусе или порче системных файлов. А если система будет работать как надо, то дело в каком-то дурацком приложении или программе.
Помните, что следить за чистотой компьютера — это не просто протирать его тряпочкой, это следить за мусорам во временных папках, периодическое обновление антивирусного программного обеспечения. Если соблюдать данные меры предосторожности, то компьютер не будет капризничать. И конечно, не устанавливайте всякие дурацкие программы, которые вам особо то и не нужны.
СВЧОСТЬ
СВЧОСТЬ
Службы, являющиеся важным уровнем низкоуровневого кода пользовательского режима, уже давно
задокументировано Microsoft, хотя относительно небольшое количество программистов когда-либо писали сервис.
В простейшем случае каждая служба представляет собой собственный исполняемый файл, который запускается как отдельный процесс.
В более общем случае службы могут быть упакованы вместе, чтобы они выполнялись в одном процессе.
и может извлечь выгоду из обмена кодом. Обратите внимание, что нет требования, чтобы услуги
в одном процессе должен быть закодирован в одном исполняемом файле. Особенно, если каждая услуга
является существенным, или просто если вы заботитесь о модуляризации, вы можете кодировать каждую службу
в собственной DLL.
Это действительно то, что Microsoft делает для многих служб, поставляемых с Windows.
Вместо того, чтобы каждая была отдельной сервисной программой, каждая
вместо этого является служебной DLL, которая выполняется в сервисном хостинге
процесс. Первоначальным хостом был Service Control
самого менеджера, только для набора сервисов, имена которых были жестко закодированы в
Программа SERVICES.EXE. Windows 2000 обобщила механизм, представив программу
с именем SVCHOST.EXE, который существует только для размещения служб. В любой момент времени может
быть несколькими экземплярами SVCHOST, каждый из которых запускает свою собственную группу служб. Действительно,
в последующих версиях Windows таких экземпляров становится все больше.
Поскольку большая часть фоновой деятельности, которая озадачивает пользователей и создает проблемы
администраторы выполняются службами в этих экземплярах SVCHOST, это может удивить
что Microsoft очень мало публикует информацию о SVCHOST. Справка и поддержка в Windows
2000 не упоминает SVCHOST, но Microsoft явно спрашивали о
SVCHOST достаточно (и нужными людьми), чтобы подсказать статью Базы Знаний,
Описание Svchost.exe
в Windows 2000, и в настоящее время есть страница
Что такое svchost.exe? в справке и поддержке Windows. Большая часть соответствующего реестра
параметры, о которых обычно хотели бы знать системные администраторы (если только
для уверенности), по-видимому, до сих пор не задокументированы. Что касается интерфейсов между SVCHOST
и его служебные библиотеки DLL, например, которые могут быть полезны программисту, не работающему в Microsoft, пишущему
services, документация почти ничего не говорит и, возможно, только тогда по недосмотру.
Синтаксис командной строки
Как и любая служебная программа, SVCHOST должен запускаться из командной строки в
реестра, в частности, из значения ImagePath
подраздел какой-либо службы HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services.
Предполагаемый синтаксис для командной строки SVCHOST выглядит как
.
[путь\]svchost.exe -k группа
Простые варианты:
- -k может использовать либо дефис, либо косую черту
и нечувствителен к регистру; - пробелов или табуляции для отделения -k от
группа необязательна; - группа может быть заключена в двойные кавычки,
else завершается первым пробелом или табуляцией.
Другие вариации — действительно, причуды — могут быть непреднамеренными и в любом случае казаться не имеющими значения.
следствие в реальной практике.
Экземпляров
Пункт группового аргумента должен указывать
косвенно, какие службы будут работать как службы DLL в этом экземпляре SVCHOST.
Список услуг, входящих в указанную группу
находится через реестр:
Ключ | HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Svchost |
Значение | группа |
Тип | REG_MULTI_SZ |
Каждая строка в многострочных данных называет службу, которая реализована как
служебная DLL. Наверняка предполагается, но не проверено, что каждая такая служба должна
установите его ImagePath в SVCHOST для того же
группа.
С (похожими) службами, выполняющимися в одном и том же процессе, инициализация каждой
сервис мог бы в противном случае делать сам, каждый воспроизводя один и тот же код, вместо этого
делается один раз за весь процесс. Несколько моментов этого
Инициализация процесса SVCHOST настраивается отдельно
для каждого экземпляра SVCHOST. Соответствующие параметры, которые являются необязательными,
находится в реестре, рассматривая группу как подраздел.
Служебные библиотеки DLL
Когда необходимо запустить размещенную службу, SVCHOST загружает соответствующую службу
DLL. Детали этой DLL настраиваются через ключ реестра службы, либо
в подразделе с именем Параметры, если он существует, иначе в
сам ключ. (Этот резерв не поддерживается до версии 6.0. Более ранние версии
SVCHOST распознает эти настройки в параметрах
только подраздел.)
Обратите внимание, что хотя каждая служба соответствует одной служебной DLL,
не требуется, хотя это выглядит предполагаемым (или, по крайней мере, предпочтительным) дизайном.
В конце концов, если вы кодируете несколько служб в одной служебной DLL, то, возможно, вы
не слишком много выиграете от кодирования их в одной сервисной программе. Тем не менее,
инфраструктура, которую SVCHOST предоставляет для служебных библиотек DLL, не является несущественной, особенно
для безопасности COM, и существуют примеры одной служебной DLL, реализующей несколько
услуги. См., например, SHSVCS.DLL, который обрабатывает как ShellHWDetection, так и Themes,
и IISW3ADM. DLL, который обрабатывает как W3SVC, так и WAS. (Теперь некоторые могут задаться вопросом,
совершенно справедливо, что IIS вообще что-то знает о работе под SVCHOST. После
В общем, IIS — это всего лишь один из многих потенциально конкурирующих веб-серверов, которые могут понадобиться
работать на монопольном продукте Windows. Является ли это незаконным преимуществом, зная
технология Windows, которую Windows SDK не документирует?)
Имя и местонахождение
Важным моментом является то, где найти служебную DLL для данной службы:
Ключ | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service\Parameters HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service |
Значение | ServiceDll |
Тип | REG_EXPAND_SZ |
Требуется настройка ServiceDll. Здесь нет
по умолчанию, например, если предположить, что DLL имеет то же имя, что и ее служба, с «. dll»
добавлено. Также нет никаких поправок на подразумеваемое местоположение. Действительно, эта конфигурация
довольно суетлив: имя пути должно быть задано в виде строковых данных того типа, который позволяет
для расширения переменных окружения. Когда строковые данные расширяются до имени пути,
как обычно, загрузка связанных исполняемых файлов зависит от того, что
Документация LoadLibraryEx описывает как альтернативный
порядок поиска.
Относительно недавняя разработка заключается в том, чтобы обеспечить загрузку служебной DLL.
в контексте активации, созданном из манифеста:
Ключ | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service\Parameters HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service |
Значение | ServiceManifest |
Тип | REG_EXPAND_SZ |
По умолчанию | пустая строка |
Наличие | версия 5. 2 и выше |
Хотя это значение является необязательным, его наличие с неправильным типом данных или с
пустая строка в качестве данных является ошибкой, так что служебная DLL не будет загружена.
Если ServiceManifest присутствует и действителен, путь
компонент из ServiceDll игнорируется, так что
Вместо этого DLL загружается из любого места, куда перенаправляется манифест.
Экспортированные функции
Так же, как каждая услуга, реализованная в сервисной программе, имеет
Функция ServiceMain,
то же самое делает каждая служебная DLL. Важным отличием является то, что служебные библиотеки DLL не указывают
эту функцию, вызвав StartServiceCtrlDispatcher
из их кода инициализации. Вместо этого они экспортируют ServiceMain
так что SVCHOST может его найти. Имя сменное, но из реестра, чтобы
SVCHOST может это знать:
Ключ | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service\Parameters HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service |
Значение | ServiceMain |
Тип | РЕГ_СЗ |
По умолчанию | ServiceMain |
За исключением экспорта (и примечания ниже о регистрации стоп-обратного вызова),
ServiceMain в служебной DLL должен быть закодирован так, чтобы следовать
Задокументированные требования Microsoft для этой же функции в сервисной программе.
В частности, он вызывает RegisterServiceCtrlHandlerEx
настроить обработку управляющих запросов для сервиса. SVCHOST не участвует
с управляющими запросами для запущенной службы.
В версии 5.1 и выше SVCHOST позволяет каждой служебной DLL экспортировать
другая функция, обязательно названная
SvchostPushServiceGlobals,
для вызова SVCHOST перед ServiceMain, чтобы сообщить
служебная DLL общих данных и общих функций.
Разгрузка
В последних версиях SVCHOST предусмотрено, что служебная DLL может повторно задействовать SVCHOST, когда
служба остановлена. Где функция ServiceMain
иначе вызовет RegisterWaitForSingleObject,
следуя документации Microsoft, он должен вместо этого вызывать SVCHOST
РегистрацияОстановитьОбратный Звонок
функция, адрес которой будет известен, когда SVCHOST вызовет экспортированную DLL.
Функция SvchostPushServiceGlobals. Обратный вызов как
зарегистрированный с помощью SVCHOST, может быть точно таким же, как зарегистрированный через
Регистерваитфорсинглеобжект. При получении запроса
чтобы остановить службу, обработка может быть точно такой же, как и раньше, что касается
служебная DLL. Разница в том, что обратный вызов возвращает SVCHOST, который затем может
выгрузить DLL. Чтобы SVCHOST выгрузил служебную DLL, все службы которой остановлены,
следующее значение реестра должно быть установлено на 1:
Ключ | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service\Parameters HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\service |
Значение | Сервисдллунлоадонстоп |
Тип | REG_DWORD |
По умолчанию | 0 |
Наличие | версия 5.1 из Windows XP SP2, версия 5.2 из Windows Server 2003 SP1, и выше |
Параметр ServiceDllUnloadOnStop также поддерживает
старый метод, который документация Microsoft по ServiceMain
отмечает, что это было «общепринятой практикой» до того, как Windows 2000 представила
Функция RegisterWaitForSingleObject. После настройки
статус службы как SERVICE_RUNNING,
Вместо этого функция ServiceMain может ожидать события.
возвращения. Элементы управления получены в другом потоке. Когда служба должна
stop, это сигнализирует о событии, которое ожидает ServiceMain
на. Когда ServiceMain возвращается, SVCHOST может выгрузить
DLL. Хотя этот метод хуже, хотя бы для того, чтобы заставить систему поддерживать
потока без необходимости, на него полагаются многие сервисные библиотеки Microsoft, даже если
поздно, как Windows Vista. Примеры такие же разнообразные, как BROWSER.DLL, CSCSVC.DLL, IISW3ADM.DLL.
и SHSVCS.DLL.
Обратите внимание, что если ServiceDllUnloadOnStop равно 1, то
предполагается, что сервисная DLL использует тот или иной из этих методов для каждого из своих
услуги. Если он возвращается из ServiceMain без
зарегистрировал стоп-обратный вызов, то он может быть выгружен.
Обратите внимание, что настройка активна. SVCHOST ведет счетчик ссылок для каждого
услуга. Этот счетчик увеличивается перед вызовом ServiceMain.
и при регистрации стоп-обратного вызова. Он уменьшается, когда
ServiceMain возвращается, и после того, как обратный вызов остановки
казнен. При каждом декременте (и, что любопытно, не только при последнем декременте) SVCHOST
заново считывает значение реестра.
Параметр ServiceDllUnloadOnStop необычен для
упоминается в Windows SDK. Видеть
Методические рекомендации
для служб (Windows) в разделе о диспетчере перезапуска. Это должно быть
недосмотр. Microsoft пишет большую часть (если не всю) своей документации для Microsoft.
собственные программисты в первую очередь, а потом выбирает, что публиковать для остальных
мира. Вещи иногда выскальзывают. Вот, например, у нас есть «Сервисы, которые
запускаемый в контексте svchost.exe, должен зарегистрироваться для выгрузки библиотек DLL, когда служба
закрыт», а следующая документация даже точна, но нигде
есть ли в Windows SDK какая-либо информация о том, как кто-либо за пределами Microsoft может
написать такой сервис, не говоря уже о том, чтобы знать, что подразумевается под SvchostPushServiceGlobals
или РегистрСтопКоллбэк.
Поиск — Энциклопедия угроз
Ключевое слово: svchost
4812 Общий поиск |
Отображение результатов : 621 — 640
Предыдущий
Далее
следующие копии самого себя в уязвимой системе: %System%\regsvr.exe %Windows%\regsvr.exe %System%\ svchost .exe (Примечание: %System% — это системная папка Windows, обычно C :\Windows\System32..
\ Services\raswmi\Security Он изменяет следующие записи реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\ SvcHost netsvcs = «{Значения по умолчанию} raswmi» (Примечание. Значение по умолчанию
\CurrentControlSet\ Services\raswmi\Security Он изменяет следующие записи реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\ SvcHost netsvcs = «{значения по умолчанию} raswmi» (Примечание: по умолчанию
копирует себя в уязвимую систему : %System%\regsvr. exe %Windows%\regsvr.exe %System%\ svchost .exe (Примечание: %System% — это системная папка Windows, обычно это C:\Windows\System32..
записи реестра, позволяющие автоматически запускать ее при каждом запуске системы: HKEY_CURRENT_USER\Software\Microsoft\ Windows\ CurrentVersion\Run svchost = «%User Startup%\13523885.lnk» Other System Modifications
\CurrentControlSet\ Services\{случайный ключ 2}\Parameters Он изменяет следующие ключи/записи реестра как часть процедуры установки: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\ SvcHost
%System%\wuauclt.exe» Он изменяет следующие записи реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\ SvcHost netsvcs = «{случайные символы}» (Примечание: данные значения по умолчанию
«usp10.dll» (Примечание. Значение по умолчанию для указанной записи реестра: {случайные значения} .) :
«usp10.dll» (Примечание. Значение по умолчанию для указанной записи реестра — {случайные значения}. ) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows NT\CurrentVersion\ SvcHost netsvcs = «{случайные символы}» (Примечание: записи реестра
: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ SvcHost Quejozj = «Emygw» HKEY_LOCAL_MACHINE\SYS TEM\ControlSet001\Сервисы\Emygw\Параметры ServiceDll = «%System%
\regsvr.exe %System%\ svchost .exe (Примечание: %Windows% — это папка Windows, обычно это C:\Windows.. %System% — это системная папка Windows, обычно это C:\Windows\System32.) Техника автозапуска Эта
\CurrentVersion\ SvcHost lssvcs = «WmdmPMM» HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\ Services\WmdmPMM Start = «2» HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\ Services\WmdmPMM\Parameters ServiceMain = » ESEntry
злонамеренный пользователь: idl|Сон / Idle run|Загрузить и выполнить произвольный файл rem|Удалить себя rdl|Обновить копию внедренного кода в svchost и добавить зашифрованный код в реестр upd|Обновить копию основной вредоносной программы red
следующими копиями себя в уязвимой системе: % Система%\regsvr.