Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров30K
В этой статье моей целью будет быстро и понятно внести памятку о легитимных процессах Windows. Немного расскажу, какой процесс за что отвечает, какие нормальные свойства имеют процессы, и приправлю это все небольшим количеством краткой, но полезной информации.
Я искренне приношу извинения за возможные неточности в изложении материала, информация в этой статье является «сборной солянкой» из моих слов и тысячи и тысячи источников!
По мере возможности я постараюсь обновлять материал, исправляя неточности, делая его более детализированным и актуальным.
System
Путь: Процесс не создается за счет исполняемого файла
Родительский процесс: Нет
Количество экземпляров: Один
Время запуска: Запуск системы
Здесь многословить не стоит: этот процесс отвечает за выполнение ядра операционной системы, других процессов и драйверов устройств, поэтому в основном под ним запускаются файлы .sys и некоторые важные для системы библиотеки. В обязанности System входит контроль за управлением оперативной и виртуальной памятью, объектами файловой системы.
smss.exe
Путь: %SystemRoot%\System32\smss.exe
Родительский процесс: System
Количество экземпляров: Один и дочерний, который запускается после создания сеанса
Время запуска: Через несколько секунд после запуска первого экземпляра
Session Manager Subsystem — диспетчер, отвечающий за создание новых сеансов, запуск процессов csrss.exe и winlogon.exe, отвечающих за графический интерфейс и вход в систему, а также за инициализацию переменных окружения. Первый экземпляр создает сеанс нуля и дочерний экземпляр, и как только дочерний экземпляр инициализирует новый сеанс, запуская csrss.exe и wininit.exe для сеанса 0 или winlogon.exe для сеанса 1, дочерний экземпляр завершается.
Если обнаружены проблемы с файловой системой, первостепенной функцией smss.exe является запуск системной утилиты для проверки диска — autochk.
После выполнения этих задач smss.exe переходит в пассивный режим.
Немного о сеансе 0 и сеансе 1
Сеанс 0 и сеанс 1 — это разные типы сеансов Windows, которые используются для запуска процессов.
Сеанс 0 создается при запуске системы, и в нем в фоновом режиме работают службы и процессы Windows.
Сеанс 1 создается для пользовательских процессов.Chkdsk и autochk — что это вообще, и зачем? А разница в чем?
На самом деле, autochk — это версия chkdsk, которая запускается автоматически smss.exe при обнаруженных проблемах с диском. А разница их в том, что chkdsk можно запустить в среде Windows напрямую из командной строки, а autochk — нет.
Да и autochk работает только с NTFS, что не скажешь про chkdsk — он, в дополнение к NTFS, поддерживает FAT и exFAT.Кстати!
По сути, chkdsk тоже может запускаться smss.exe, но это зависит от того, что указано в ключе реестраHKEY_LOCAL_MACHINE\SYSTEM \CurrentControlSet\Control\SessionManager
(здесь хранится информация, предназначенная для Диспетчеpa сеансов ) в параметреBootExecute
). При запуске chkdsk Диспетчер сеансов использует параметр/r
, что позволяет утилите производить поиск повреждённых секторов (наряду с ошибками файловой системы).
csrss.exe
Путь: %SystemRoot%\System32\csrss.exe
Родительский процесс: smss.exe, который, запустив csrss.exe, завершает работу
Количество экземпляров: Два или больше
Время запуска: Через несколько секунд после запуска первых двух экземпляров — для сеанса 0 и сеанса 1
Client/Server Run-Time Subsystem — подсистема выполнения «клиент/сервер» обеспечивает пользовательский режим подсистемы Windows. Csrss.exe отвечает за импорт многих DLL-библиотек, которые предоставляют WinAPI (kernel32.dll, user32.dll, ws_2_32.dll и другие), а также за обработку графического интерфейса завершения работы системы.
Процесс запускается для каждого сеанса, а именно 0 и 1, дополнительные сеансы создаются при помощи удаленного рабочего стола или за счет быстрого переключения между пользователями.
Что интересно для Windows Server
Можно проверить количество активных сеансов, введя
query SESSION
в командной строке. Так можно проверить, соответствует ли количество сеансов количеству запущенных csrss.exe.И еще..
До Windows 7 csrss.exe обеспечивал старт окна консоли, но теперь этим занимается conhost.exe.
wininit.exe
Путь: %SystemRoot%\System32\wininit.exe
Родительский процесс: smss.exe, который завершает работу перед запуском wininit.exe
Количество экземпляров: Один
Время запуска: Через несколько секунд после запуска системы
После получения управления от процесса smss.exe, wininit.exe помечает себя как критический, что позволяет ему избегать нежелательного отключения при аварийном завершении сеанса или входа систему в гибернацию. Целью Windows Initialisation (wininit.exe) является запуск ключевых фоновых процессов в рамках сеанса нуля. Он запускает:
-
services.exe — Диспетчер управления службами
-
lsass.exe — Сервер проверки подлинности локальной системы безопасности
-
lsaiso.exe — для систем с включенной Credential Guard.
Дополнительно на протяжении всего сеанса работы системы wininit.exe отвечает за создание и наполнение папки TEMP
. Перед выключением wininit.exe снова «активизируется» — теперь уже для корректного завершения запущенных процессов. .
Кстати!
До Windows 10 lsm.exe (Диспетчер локальных сеансов) также запускался с помощью wininit.exe. Начиная с Windows 10, эта функция перенесена в lsm.dll, которая размещена в svchost.exe.
services.exe
Путь: %SystemRoot%\System32\services.exe
Родительский процесс: wininit.exe
Количество экземпляров: Один
Время запуска: Через несколько секунд после запуска системы
В функции services.exe входит реализация Унифицированного диспетчера фоновых процессов (UBPM), который отвечает за фоновую работу таких компонентов, как Диспетчер управления службами (SCM) и Планировщик задач (Task Sheduler). Словом, services.exe отвечает за управление службами, а также за контроль за взаимодействием служб, обеспечивая их безопасную и эффективную работу.
UBPM: немного для тех, кто видит первый раз
Унифицированный диспетчер фоновых процессов (UBPM) — компонент системы, который автоматически управляет фоновыми процессами, такими как службы и запланированные задачи. Словом, он помогает оптимизировать запущенные в фоновом режиме службы, приостанавливать или завершать фоновые процессы, что позволяет экономить ресурсы системы.
Кстати!
До Windows 10, как только пользователь успешно вошел в систему в интерактивном режиме, services.exe считал загрузку успешной и устанавливал для последнего удачного набора элементов управления
HKLM\SYSTEM\Select\LastKnownGood
значениеCurrentControlSet
.А LastKnownGood — что это вообще?
LastKnownGood являлся опцией восстановления, благодаря которой можно запустить систему с последней рабочей конфигурацией, если система не может загрузиться из-за каких-либо причин. LastKnownGood сохранял резервную копию части реестра, в которой хранится информация о системе, драйверах и настройках.
Когда это могло пригодиться? Например, если загрузка нового ПО или изменение параметров системы не привело ни к чему хорошему. Тогда можно было бы использовать эту опцию, чтобы отменить изменения и откатиться к прошлому состоянию.
svchost.exe
Путь: %SystemRoot%\system32\svchost.exe
Родительский процесс: services.exe (чаще всего)
Количество экземпляров: Несколько (обычно не менее 10)
Время запуска: В течение нескольких секунд после загрузки, однако службы могут запускаться в течение работы системы, что приводит к появлению новых экземпляров svchost.exe.
svchost.exe (в Диспетчере задач прописывается как Служба узла) — универсальный хост-процесс для служб Windows, использующийся для запуска служебных DLL. В системе запускается несколько экземпляров svchost.exe, и каждая служба работает в своем собственном процессе svchost, что позволяет изолировать ошибки в работе одной службы от других, хотя в системах с ОЗУ менее 3,5 ГБ службы приходится группировать (см. ниже). Ну а в системах с оперативной памятью более 3,5 ГБ можно увидеть даже более 50 экземпляров svchost.exe.
Злоумышленники часто пользуются преимуществом наличия большого количества процессов svchost.exe, и могут воспользоваться этим, чтобы разместить какую-либо вредоносную DLL в качестве службы, либо запустить вредоносный процесс с именем svchost.exe или что-то типа scvhost.exe, svhost.exe и так далее.
Хотя, как известно, так можно сделать с любым процессом, но с svchost.exe это происходит почаще.
Кстати!
До Windows 10 версии 1703 экземпляры svchost.exe по умолчанию запускались в системе с уникальным параметром
-k
, благодаря которому была возможна группировка похожих служб. Типичные параметры-k
включают:
DcomLaunch — служба, которая запускает компоненты COM и DCOM, благодаря которым программы взаимодействуют между собой на удаленных компьютерах
RPCSS — служба RPC (удаленный вызов процедур), благодаря которой программы взаимодействуют между собой через сеть.
LocalServiceNetworkRestricted — локальная служба, которая работает в пределах компьютера и имеет доступ к сети только для определенных операций.
LocalServiceNoNetwork — локальная служба, идентичная LocalServiceNetworkRestricted, но не имеющая доступа к сети.
netsvcs — группа служб Windows, благодаря которым выполняются задачи, связанные с сетью.
NetworkService — служба, которая позволяет выполнять задачи на удаленных хостах, и имеет доступ к сети для обмена данными.
Здесь можно почитать о разделении служб SvcHost.
RuntimeBroker.exe
Путь: %SystemRoot%\System32\RuntimeBroker.exe
Родительский процесс: svchost.exe
Количество экземпляров: Один или больше
Время запуска: Может быть разным
Работающий в системах Windows, начиная с Windows 8, RuntimeBroker.exe действует как прокси между ограниченными приложениями универсальной платформы Windows (UWP) и набором функций и процедур Windows API. В целях безопасности приложения UWP должны иметь ограниченные возможности взаимодействия с оборудованием, файловой системой и другими процессами, поэтому процессы-брокеры а-ля RuntimeBroker.exe используются для обеспечения требуемого уровня доступа для таких приложений.
Обычно для каждого приложения UWP существует один файл RuntimeBroker.exe. Например, запуск сalculator.exe приведет к запуску соответствующего процесса RuntimeBroker.exe.
И такое было: об утечках памяти, связанных с RuntimeBroker
Когда процесс RuntimeBroker еще был в новинку, пользователи во время работы с системой начали замечать, что RuntimeBroker.exe нещадно занимает аж более 500 МБ памяти, что несвойственно для него.
Оказывается, ошибка заключалась в следующем: каждый вызов методаTileUpdater.GetScheduledTileNotifications
приводила к тому, что RuntimeBroker выделял память без ее дальнейшего высвобождения. Чаще всего с этим сталкивались пользователи, у которых было установлено приложение «The Time» для измерения времени — оно постоянно обновляло информацию на плитке.Об этом казусе в Windows 8 можно почитать тут.
Про метод TileUpdater.GetScheduledTileNotifications
Если кратко, это метод, позволяющий получать запланированные уведомления от плиток в универсальных приложениях Windows (UWP). Он позволяет приложениям отображать информацию на стартовом экране пользователя в виде динамически обновляемых плиток.
taskhostw.exe
Путь: %SystemRoot%\System32\taskhostw.exe
Родительский процесс: svchost.exe
Количество экземпляров: Один или больше
Время запуска: Может быть разным
Процесс Task Host Window отвечает за выполнение различных задач Windows.
С началом работы, taskhostw.exe начинает выполнять задачи, которые были назначены ему системой, а в течение работы системы выполняет непрерывный цикл прослушивания триггерных событий. Примеры триггерных событий, которые могут инициировать задачу, могут включать в себя:
-
Определенное расписание задач
-
Вход пользователя в систему
-
Запуск системы
-
Событие журнала Windows
-
Блокировка/ разблокировка рабочей станции и т.д.
Двое из ларца: В чем разница между Task Host Window и Task Scheduler?
Task Host Window отвечает за выполнение различных системных задач, например, запуск служб и выполнение запросов на исполнение программ. Taskhostw.exe может использоваться для запуска службы обновления Windows, перехода компьютера в режим сна или ожидания после определенного времени и так далее.
Task Sheduler, он же Планировщик задач, — инструмент, благодаря которому пользователь имеет возможность создавать задачи и запускать их по расписанию или при определенных событиях. Планировщик задач может быть использован для запуска программ, скриптов и автоматизации задач.
lsass.exe
Путь: %SystemRoot%\System32\lsass.exe
Родительский процесс: wininit.exe
Количество экземпляров: Один
Время запуска: В течение нескольких секунд после загрузки
Local Security Authentication Subsystem Service (Служба проверки подлинности локальной системы безопасности) отвечает за аутентификацию пользователей путем вызова соответствующего пакета аутентификации, указанного в HKLM\SYSTEM\CurrentControlSet\Control\Lsa
. Обычно это Kerberos для учетных записей домена или MSV1_0 для локальных учетных записей. Помимо аутентификации пользователей, lsass.exe также отвечает за реализацию локальной политики безопасности (например, политики паролей и политики аудита), а также за запись событий в журнал событий безопасности.
Что любят котята: Mimikatz и LSASS
Многим известно, что злоумышленники могут использовать Mimikatz, зачастую для перехвата учетных данных в операционной системе, и делают они это за счет перехвата данных процесса lsass.exe.
Все просто: работает Mimikatz на уровне ядра и внедряется в процесс LSASS или использует метод DLL-injection. Кража учетных данных происходит либо за счет получения доступа к памяти процесса, в котором лежат заветные креды, либо за счет перехвата вызова функций до шифрования учетных данных.
Также Mimikatz не пренебрегает использованием стандартных функций Win32 LsaProtectMemory и LsaUnprotectMemory, которые используются для шифрования и расшифровки некоторых участков памяти с чувствительной информацией.Чуть больше об lsass.exe можно прочитать тут.
И о любви котят к LSASS — тут.
winlogon.exe
Путь: %SystemRoot%\System32\winlogon.exe
Родительский процесс: smss.exe, который, запустив winlogon.exe, завершает работу
Количество экземпляров: Один или больше
Время запуска: В течение нескольких секунд после загрузки первого экземпляра, дополнительные экземпляры запускаются по мере создания новых сеансов (подключение с удаленного рабочего стола и быстрое переключение пользователей)
Winlogon обрабатывает интерактивный вход и выход пользователей из системы. Он запускает LogonUI.exe, который использует поставщика учетных данных для сбора учетных данных пользователя, а затем передает учетные данные lsass.exe для проверки.
После аутентификации пользователя Winlogon загружает NTUSER.DAT пользователя в HKCU, настраивает окружение пользователя, включая его рабочий стол, настройки реестра и т.д., и запускает оболочку пользователя explorer.exe через userinit.exe.
Совсем чуть-чуть об logonUI.exe
Да, название говорит само за себя: logonUI.exe отвечает за отображение экрана входа пользователя и за взаимодействие с пользователем при входе в систему. Если просто, то вывод того самого экрана входа и поля для ввода учетных данных — старания logonUI.exe.
..И об userinit.exe
Основная функция userinit.exe заключается в подготовке среды пользователя для работы в операционной системе.
Когда пользователь входит в систему, userinit.exe инициирует загрузку профиля пользователя, настройки оболочки (шаблоны рабочего стола, запуск программ и т.д.). После выполнения сих действий, userinit.exe запускает оболочку пользователя explorer.exe, которая отображает рабочий стол и другие элементы интерфейса, после чего завершает работу.Кстати!
Обработка команд из
CTRL+ALT+DEL
, между прочим, тоже входит в обязанности winlogon.exe.
А тут можно почитать о Winlogon еще и узнать чуть больше — и про его состояния, и про GINA, и про все-все.
explorer.exe
Путь: %SystemRoot%\explorer.exe
Родительский процесс: userinit.exe, который завершает работу
Количество экземпляров: Один или больше, если включена опция Запускать окна с папками в отдельном процессе
Время запуска: Интерактивный вход пользователя
По своей сути, explorer.exe предоставляет пользователям доступ к файлам, хотя одновременно это файловый браузер через проводник Windows (тот самый Диспетчер файлов) и пользовательский интерфейс, предоставляющий такие функции, как:
-
Рабочий стол пользователя
-
Меню «Пуск»
-
Панель задач
-
Панель управления
-
Запуск приложений через ассоциации расширений файлов и файлы ярлыков
Словом, процесс отвечает за отображение действий пользователя: открытие и закрытие окон, перемещение и копирование файлов и тому подобное.
Запуск приложений через ассоциации расширений файлов
По сути, это процесс, при котором система использует информацию о расширении имени файла (например,
.txt
) для определения программы, которая будет запущена, чтобы обработать этот файл. Например, файл расширения.txt
ассоциируется в системе с текстовым редактором, потому она запустит его при двойном щелчке мышью. Словом, ассоциации расширений файлов определяют, какие программы открываются по умолчанию для определенных типов файлов.Также и с ярлыками — при щелчке запускается связанные с ними ресурсы.
Explorer.exe — это пользовательский интерфейс по умолчанию, указанный в значении реестра HKLM\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\Shell
, хотя Windows может работать и с другим интерфейсом, например, с cmd.exe
.
Следует заметить, что легитимный explorer.exe находится в каталоге %SystemRoot%
, а не %SystemRoot%\System32
.
Explorer — это же браузер, нет?
В старые добрые времена, когда на системах еще стоял Internet Explorer, запуск этого браузера инициировал процесс iexplore.exe, и с каждой новой вкладкой создавался новый экземпляр этого процесса. Сейчас остался только explorer.exe, который ни в коем случае не связан с браузером.
Вместо Internet Explorer на наших системах стоит MS Edge, который имеет процесс msedge.exe, исполняемый файл которого лежит в\Program Files (x86)\Microsoft\Edge\Application\
.
ctfmon.exe
Путь: %SystemRoot%\System32\ctfmon.exe
Родительский процесс: Зависит от того, какой процесс запустил ctfmon.exe
Количество экземпляров: Один
Время запуска: При входе в систему
Процесс ctfmon.exe или, как привыкли его видеть, CTF-загрузчик, управляет функциями рукописного и сенсорного ввода, распознавания голоса и переключения языка на панели задач. Также процесс отслеживает активные программы и настраивает языковые параметры для обеспечения поддержки многоязычного ввода.
Ctfmon.exe может быть запущен разными процессами, и это напрямую зависит от того, какие функции ввода или языка используются в системе. Примеры родительских процессов и причины запуска:
-
svchost.exe — использование рукописного ввода или распознавания речи
-
winword.exe, excel.exe и т.д. — использование программ пакета Microsoft Office
-
searchUI.exe — использование поиска на панели задач или приложения из магазина Windows 10
Конечно, это не исчерпывающий список легитимных процессов, но, как минимум, основной. Хочется верить, что этот материал был полезен тем, кто пугается страшных букв в Диспетчере задач и тем, кто просто хочет узнать немного больше.
Спасибо за прочтение!
Here, in this article, we will talk all about smss.exe in Windows 10 as what exactly the .exe file is and how does it work. When your computer faces high resource usage issue you might have a doubt whether this file is not a culprit. Else, is this executable file a malware is the question of several users needs to be answered.
What is Smss.exe in Windows 10 and what it is doing on your PC?
Smss.exe stands for Session Manager Subsystem where .exe is the extension of an executable file. You might find this as a process in the Task Manager of your PC. This file was introduced in Windows NT and now occupies a place in core files of Windows 10 with unique features. At that time smss.exe used to handle startup up process only, however, in recent updates of Windows 10, its work has been enhanced. Now it controls dozens of works like environment control, starts winlogon.exe, creates virtual memory etc.
Is Smss.exe a Virus in Windows 10
No, Smss.exe is not a Virus in Windows 10 but built-in and genuine program from Microsoft. It is a tiny file and consumes very little system resource you can analyze on the Task Manager.
Working Process of smss.exe file
The main function of smss.exe in Windows 10 is to handle the works of operating system initialization, such as it controls when winlogon.exe and cross.exe works. The program also creates a virtual memory where works of one process reside and another executes. It makes your system smooth while handling the execution part effectively.
If multiple tasks run at the same time into your system, your PC might stop responding (i.e., hang, freeze, crash, corrupt). Here smss.exe comes into use to perform them simultaneously without any issue.
If smss.exe a malware with a similar name?
.exe file can mislead you to think it as some sort of malware. It may create nuisance while working on PC. Here is the easy way which can be used to distinguish between malware and core file:-
At first, hit CTRL+ALT+DEL simultaneously using the keyboard. Select Task manager from the interruption screen.
Here look out for smss.exe file in Details Tab.
Once found, right click on its name and then press “Open file location”.
If the path displayed is C:\Windows\System32 folder, then there is nothing to worry about. This is just a regular file of windows OS which keeps on running to make your system smooth.
If the path is different than the above-mentioned then it might be a malware residing there to corrupt your PC.
Some review says that in some computer, it may consume more than 50% memory. If you encounter the same issue too then find this file in Task Manager and check out the path of smss.exe. In such case, you can follow the below written steps to curb this file:
1. Keep your antivirus up-to-date and Windows Defender on.
2. Run chkdsk command into your system
3. Identify if certain device drivers are outdated and update them.
4. Check your hardware
5. Delete the smss.exe file
Disabling of smss.exe in Windows 10
smss.exe is a built-in file of Windows 10 and hence can’t be disabled. Microsoft itself takes care of various .exe files into the system. Still, you try to disable this file, let me remind you that it might cause an error.
Different Parasites which Support smss.exe Virus
Smss.exe virus can come into your PC from various websites. Some of the common webpages from where it would enter your PC easily are – DreamAd, KillSec, YahLog, Gammity, Sober.x, MDSA SentinelX, Employee Watcher, and Many more.
These parasites can use this executable file for various purposes on your System. Its functionality depends on what a web page is looking for from users. You can guess your PC to be infected with this malware if the below written signs are observed in your system:
a) Programs keep on crashing, freezing once opened.
b) The system appears sluggish
c) Can’t open particular files
d) Receive numerous error onto your PC.
We have told you at the starting of this article that this might be a legitimate file of windows 10. Hence you can’t just go and find this file and delete this file as this may hamper your PC. Making sure that it is harmful, run a good Antivirus to scan your system and remove all those related files which are malicious files and are just using excessive resource of CPU.
Malware enters your PC by different modes
Once you have come to know about this smss.exe in Windows 10, you might have noticed there are numerous other executable files which are an important part of Windows 10. Thus, various virus spreading companies try to reach out to you by various means and try to show that their files are, in fact, genuine. Therefore you need to be careful and avoid the following cyber threats:
While working on emails, always check the information about the sender and look out for other suspicious things which are attached along with a received.
Be careful while looking for a freeware download or software update as these are a big cause for infecting your computer.
Avoid visiting high-risk and dangerous webpages. You can always get the signal by looking at its https color. If this is green it is fine, otherwise just close the webpage.
Make habit of not clicking on lucrative offers.
And at last, try to avoid illegal content because this is the hub of potentially dangerous files.
smss.exe: Session Manager Subsystem
smss.exe
(Session Manager Subsystem) is a critical component of the Microsoft Windows operating system. It’s one of the very first user-mode processes started during the boot process and plays a pivotal role in setting up the user environment. Understanding its function is key to troubleshooting boot problems and understanding Windows internals.
Origin and Purpose
smss.exe
has been a part of the Windows NT family of operating systems since its inception (including Windows 2000, XP, Vista, 7, 8, 10, 11, and server counterparts). It’s a native NT application, meaning it uses the NT Native API directly, rather than going through the Win32 subsystem. Its primary responsibilities include:
- Creating User Sessions: The most important function of
smss.exe
is to launch the user-mode portions of the Win32 subsystem (win32k.sys
is the kernel-mode part), includingcsrss.exe
(Client/Server Runtime Subsystem) andwinlogon.exe
(Windows Logon). For each new user session, a new instance ofcsrss.exe
is created. - Environment Variable Setup:
smss.exe
reads and applies system-wide environment variables defined in the registry (e.g.,HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
). These variables are crucial for many applications to function correctly. - Loading Device Drivers:
smss.exe
is involved in the loading of certain device drivers specified in the registry (e.g.,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\BootExecute
). This often includes autocheck (autochk.exe
), the boot-time version ofchkdsk.exe
. - Memory Management Initialization:
smss.exe
performs some initial memory management setup, including creating the paging file (if configured). - Starting Subsystems: It starts required subsystems defined in the registry (e.g.,
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems
). - Waiting for Logon: The initial instance of
smss.exe
remains active throughout the system’s uptime. It waits for the user to log off. When a user logs off,smss.exe
is notified and handles the cleanup of that session, preparing for a new login. When the system shuts down, the activesmss.exe
receives a notification and initiates the shutdown process.
Process Hierarchy
The initial smss.exe
process is launched directly by the kernel. It then spawns child processes, most notably:
smss.exe
(initial instance): The parent process that persists throughout the system’s lifetime.csrss.exe
(for each session): The Client/Server Runtime Subsystem. Multiple instances exist, one for each active session.winlogon.exe
(for each session): Handles the logon and logoff process for each user session.- Other processes as defined in the Registry: As described in «Origin and Purpose», other required system processes may be spawned.
Security Implications — Virus or Not?
smss.exe
itself is not a virus. It is a legitimate and essential Windows system file. However, its name and location make it a potential target for malware.
- Location: The legitimate
smss.exe
resides in the%SystemRoot%\System32
directory (usuallyC:\Windows\System32
). If you find ansmss.exe
file anywhere else, it’s almost certainly malware. This is a critical point. - Impersonation: Malware often tries to disguise itself by using the same name as legitimate system files. A malicious
smss.exe
might be placed in a different directory (e.g., a temporary folder, the user’s profile directory, or a cleverly disguised subdirectory withinSystem32
). - Parent Process: The legitimate
smss.exe
is launched by the System process (PID 4) very early in the boot process. If you see ansmss.exe
with a different parent process (especially a user-mode process), it is highly suspect. Process Explorer (from Sysinternals, now part of Microsoft) is an excellent tool for verifying this. - Multiple Instances: While it’s normal to see multiple instances of
csrss.exe
andwinlogon.exe
, you should only see one persistentsmss.exe
instance (the initial one launched by the system) and possibly short-lived childsmss.exe
processes during session creation/destruction. More than one persistentsmss.exe
is highly suspicious.
Could smss.exe
become a virus? Technically, no. The file itself wouldn’t «become» a virus. However, it could be replaced by a malicious file with the same name. Modern Windows versions use Windows File Protection (WFP) / Windows Resource Protection (WRP) to prevent unauthorized modification or replacement of critical system files like smss.exe
. However, sophisticated malware might be able to bypass these protections, particularly if it has kernel-mode access.
Troubleshooting
If you suspect problems related to smss.exe
(e.g., boot failures, system instability), consider the following:
- System File Checker (SFC): Run
sfc /scannow
from an elevated command prompt (run as administrator). This will check the integrity of protected system files, includingsmss.exe
, and attempt to repair them if necessary. - Deployment Image Servicing and Management (DISM): If SFC cannot repair the files, use DISM. From an elevated command prompt:
DISM /Online /Cleanup-Image /CheckHealth
(checks for corruption)DISM /Online /Cleanup-Image /ScanHealth
(more thorough scan)DISM /Online /Cleanup-Image /RestoreHealth
(attempts to repair corruption, may require a source image)
- Process Explorer: Use Process Explorer (downloadable from Microsoft) to verify the parent process of
smss.exe
and its location. This is a crucial step in identifying malware impersonation. - Boot Log Analysis: Enable boot logging (through
msconfig
or by editing the registry) to see the sequence of events during startup. This can help pinpoint where the boot process is failing. Look for errors related tosmss.exe
or its child processes. - Safe Mode: Try booting into Safe Mode. If the system boots successfully in Safe Mode, it suggests a driver or startup program is interfering with
smss.exe
. - System Restore: If the problem started recently, use System Restore to revert to a previous working state.
- Windows Memory Diagnostic: Rule out RAM issues, although they are less likely to specifically target
smss.exe
. - Antivirus/Anti-malware Scan: Perform a full system scan with a reputable antivirus and anti-malware solution, both in normal mode and, if possible, from a bootable rescue environment.
- Check Disk: Although
smss.exe
handles startingautochk.exe
, file system errors are rarely the direct cause ofsmss.exe
itself failing. However, severe file system corruption could preventsmss.exe
from loading. Runchkdsk /f /r
from an elevated command prompt. - Last Known Good Configuration: If available, try booting to the Last Known Good Configuration (accessed through Advanced Boot Options).
In summary, smss.exe
is a fundamental part of Windows. While not a virus itself, its name and critical role make it a target for malware. Understanding its function and how to verify its legitimacy are crucial for maintaining a secure and stable Windows system. Always verify its location and parent process.
Launch the Task Manager on your Windows PC and you’ll find a bunch of system processes running in the background. Usually, there’s no reason to care about these files and processes, what they do, or question their safety unless they affect your PC’s performance.
Even when a strange background process that’s acting oddly piques your interest, determining its safety can be difficult. A system process like smss.exe is commonly associated with unreasonably high CPU and GPU usage. In this guide, we’ll explain what smss.exe does and how to check if you have a safe version of the file on your computer.
smss.exe is the executable file that’s responsible for running the Session Manager Subsystem (or Windows Session Manager). It’s an important component of the Windows operating system that starts running immediately when you click the power button. It’s responsible for creating user sessions and monitoring other crucial system processes to make sure they’re working correctly.
For example, smss.exe will crash your computer if csrss.exe or winlogon.exe malfunction or unexpectedly stop working, thereby causing a Blue Screen of Death (BSOD) error. Similarly, your computer may freeze if the smss.exe file gets damaged, corrupted, or missing. This goes to demonstrate the importance of the Session Manager Subsystem process.
Despite being a vital system file required by your computer to run properly after startup, there are times when the smss.exe file becomes detrimental to your PC’s health and performance. In the next section, you’ll learn how to find out if the Session Manager Subsystem executable file on your computer is safe—or not.
Is smss.exe Safe?
The Session Manager Subsystem is one of the many system processes that start up when you click your PC’s power button. It helps your computer boot correctly and sets things in order for other programs. Afterward, it stays in the background and monitors the status of important system processes.
smss.exe consumes a tiny and negligible portion of your PC’s resources. It’s a legitimate file that doesn’t cause any trouble or performance issues. Should you find that the process is hogging an insane amount of CPU resources or slows down your computer, a malicious program is probably camouflaging as smss.exe.
Cybercriminals sometimes name malware after legitimate system files to avoid detection by your PC’s security system and antivirus software. You can determine the legitimacy of the smss.exe file by checking its location on your local disk and verifying its digital signature.
How to Check smss.exe Location and Digital Signature
1. Launch the File Manager (Ctrl + Shift + Esc) and go to the Details tab. Right-click on smss.exe and select Properties.
Alternatively, go to the Processes tab, right-click on Windows Session Manager, and select Properties.
2. In the General tab, check the file’s location and make sure it says C:WindowsSystem32 or C:Windows or C:WindowsSystem32Event AgentBin.
3. Go to the Digital Signature tab, check the Signature list and make sure it reads Microsoft Windows Publisher.
Like many other system processes built-in the Windows 10, the smss.exe executable file is located in the C:WindowsSystem32 directory. For PC running older or outdated operating systems (Win 7 / Win 8 / Win 8.1), you may find smss.exe located in C:Windows or C:WindowsSystem32Event AgentBin.
If the Session Manager Subsystem executable file is located in some folder other than the ones mentioned above, it’s definitely a virus. Run it through a security tool or remove it from your computer immediately. You should do the same if the file isn’t digitally signed by Microsoft Windows Publisher.
How to Fix and Replace smss.exe
As mentioned earlier, your computer may malfunction, throw some random errors, and crash during usage if the Session Manager Subsystem file is missing or gets damaged. If the smss.exe file gets infected by malware, deleted by accident, or removed from your computer by your antivirus, you can fix (or replace) it using the tools and techniques below.
1. Fix smss.exe with the System File Checker (SFC)
The Windows System File Checker (SFC) is a nifty tool for repairing corrupted files. It scans your computer and replaces corrupted system files. For effective results, Microsoft recommends running the Deployment Image Servicing and Management (DISM) tool before running the System File Checker—particularly if your PC runs Windows 10, Windows 8, or Windows 8.1.
For older OS, you can run the SFC directly (see Step 3 below).
1. Right-click the Start button and select Command Prompt (Admin) on the Quick Access Menu.
2. Paste the command below in the console and press Enter.
DISM.exe /Online /Cleanup-image /Restorehealth
This command will prompt the DISM tool to provide the necessary files needed to fix and replace corrupt files. This process could take several minutes, so wait till you get a success message before you run the next command.
3. Paste the command below in the console and press Enter.
sfc /scannow
Windows will scan your system files and replace any corrupt file it finds. This process equally takes several minutes; do not close the Command Prompt window until the scan is 100% complete.
2. Run the Check Disk Utility
System files can get corrupted if there’s a bad sector on your hard drive. The Check Disk tool will scan your hard drive for these faulty sectors and automatically fix them. You should run this tool if SFC doesn’t find any system file corruption and smss.exe continues to consume excessive CPU resources.
Launch Command Prompt as an administrator, paste the command below in the console, and press Enter.
chkdsk C: /f /r
3. Reinstall Windows
If none of the methods above resolves the problem, you may have to perform a clean reinstallation of Windows as a last resort.
Understanding the Windows Session Manager
At this point, we hope you now understand the importance of the Session Manager Subsystem (or Windows Session Manager) on your Windows PC. If you have the legitimate version of the smss.exe file on your device, there’s nothing to worry about.
Don’t try to force-stop, disable, or remove the file from your device—even when it’s hogging CPU resources and causing other problems. Sometimes, a simple device restart may fix the issue. If the problem continues when your PC comes back on, check the file’s location, digital signature, and scan it with an antivirus before taking any action.
Related Posts
- How to Fix a “This file does not have an app associated with it” Error on Windows
- How to Fix an Update Error 0x800705b4 on Windows
- How to Resolve “A JavaScript error occured in the main process” Error on Windows
- How to Fix the Network Discovery Is Turned Off Error on Windows
- How to Change Folder Icons in Windows
SMSS (аббр. от Шаблон:Lang-en) — подсистема управления Шаблон:Не переведено 5 в Windows NT. Этот компонент не входит в ядро Windows NT, но его работа критически важна для системы. SMSS для своей работы использует NativeAPI. Ядро ожидает освобождение описателя процесса smss.exe в течение 5 секунд. Если это произойдёт раньше, то ядро сгенерирует крах с кодом SESSION_5_INITALIZATION_FAILED.
Процесс SMSS отвечает за:
- инициализацию переменных окружения
- запуск процессов csrss.exe и Winlogon
- контроль работы процесса Winlogon
- запуск программы CHKDSK (Autochk) и других программ, запускаемых из параметра реестра BootExecute
- выполнение «Pending rename operations» — операций по удалению, перемещению или копированию файлов до полной загрузки
- загрузку Known DLL — библиотек для работы windows-приложений (advapi32.dll, user32.dll, kernel32.dll и др.). Если хотя бы одна из этих библиотек не будет загружена, произойдёт экстренная перезагрузка или крах системы.
Windows XP может продолжать работу без запущенного smss.exe, но при этом компьютер будет работать нестабильно. Если этот процесс не может запуститься, Windows XP отображает синий экран смерти с кодом ошибки c000021a.
В Unix’подобных операционных системах роль smss.exe играет Init.
См. также[]
- Шаблон:Не переведено 3
Компоненты Microsoft Windows | |
---|---|
Основные |
Aero • |
Службы управления |
Архивация и восстановление • |
Приложения |
Контакты • |
Игры |
Chess Titans • |
Ядро ОС |
Ntoskrnl.exe • |
Службы |
Autorun.inf • |
Файловые системы |
ReFS • |
Сервер |
Active Directory • |
Архитектура |
NT • |
Безопасность |
BitLocker • |
Совместимость |
Подсистема UNIX (Interix) • |