Что такое сеанс windows

Общее представление о сеансах входа в систему

Когда пользователь, сервис или устройство регистрируются (authenticates) в Windows, Windows создает специальную структуру данных, которая называ­ется сеансом входа (logon session). Сеанс (session) — это уникальный иденти­фикатор отдельной учетной записи (account), только что осуществившей вход

в систему. Чтобы Windows могла отслеживать, какой сеанс входа принадлежит, какой учетной записи, она назначает каждому сеансу локально уникальный идентификатор (locally unique identifier, LUID).

Просмотр текущих сеансов Windows

LogonSessions.exe является программой, работающей в командной строке и перечисляющей все активные сеансы входа в Windows, зарегистрированные на компьютере. Она делает это, опрашивая текущие маркеры; если, как мини­мум, один маркер ссылается на LUID сеанса, то данный сеанс входа существует.

Свойства определяют­ся следующим образом:

  • Logon session — цифры после «Logon session’* представляют собой LUID данного сеанса;
  • User name — имя пользователя, используемое при входе в компьютер;
  • Auth package (пакет аутентификации) — динамические библиотеки (DLL), выполняющие аутентификацию полномочий, предъявляемых при входе учетной записи в систему;
  • Logon type — запрашиваемый тип входа;
  • Session — номер сеанса для пользователя, подключенного к компьютеру через Terminal Services. Если пользователь подключен не через Terminal Services, этот номер будет равен нулю.
  • SID — уникальное значение, переменной длины, которое используется для обозначения отдельных групп или объектов защиты в Windows, SID разбивается на отдельные части и каждая имеет особое назначение, неко­торые хорошо известные SID являются постоянными во всех инсталляци­ях Windows и используются для представления групп или объектов за­щиты общего характера;
  • Logon time — время входа пользователя в систему и создания сеанса;
  • Logon server — сервер, который был использован для аутентификации пользователя;
  • DNS Domain — домен DNS, который использовался в процессе аутенти­фикации;
  • UPN — имя в интернет-стиле, которое использовалось в процессе входа в систему

smss.exe — Что это за процесс в Windows 10

В этой статье вы узнаете о процессе smss.exe, и как он работает в Windows 10. Когда ваш компьютер сталкивается с высокой нагрузкой использования ресурсов, у вас может возникнуть сомнение в том, что этот файл не является виновником, или является ли это исполняемый файл вредоносным ПО. В некоторых форумах говорится, что на некоторых компьютерах он может потреблять более 50% памяти. Если вы столкнулись с этой же проблемой, то разберемся, является ли этот процесс вирусом и как его определить, как он работает и что это такое.

Что такое Smss.exe в Windows 10 и для чего он на вашем ПК?

Smss.exe означает подсистему Session Manager, где «.exe» — это расширение исполняемого файла. Вы можете найти этот процесс в «Диспетчере задач» под названием «Диспетчер сеанса Windows» и исходным именем smss.exe. Этот файл был представлен в Windows NT и теперь занимает место в основных файлах Windows 10 с уникальными функциями. В то время, smss.exe использовался только для обработки процесса запуска, однако в последних обновлениях Windows 10, его работа была улучшена. Теперь он контролирует десятки работ, таких как управление средой, запускает winlogon.exe , создает виртуальную память и т. д.

Основная функция smss.exe в Windows 10 — обрабатывать работы инициализации операционной системы. Например, он контролирует работу winlogon.exe и cross.exe. Программа также создает виртуальную память, где выполняются работы одного процесса, а другая выполняется. Это делает вашу систему гладкой, эффективно обрабатывая исполняемую часть. Если несколько задач одновременно запускаются в вашу систему, ваш компьютер может перестать отвечать, зависать, давать сбой. Здесь smss.exe используется для одновременной работы без каких-либо проблем.

Можно ли отключить smss.exe?

smss.exe — это встроенный файл Windows 10, следовательно, его нельзя отключить. Корпорация Майкрософт сама позаботится о различных файлах .exe в системе. Тем не менее, если вы пытаетесь отключить этот файл, напомню, что это может вызвать ошибку.

Читайте также:  Windows delete all files from folder

Как определить является ли он вирусом?

1 признак. Smss.exe не является вирусом в Windows 10. Это встроенная и подлинная служба от Microsoft. Это крошечный файл потребляет очень небольшой системный ресурс, который вы можете проанализировать в Диспетчере задач. Найдите процесс «Диспетчер сеанса Windows» нажмите на нем правой кнопкой мыши и выберите свойства. Далее перейдите во вкладку «Подробно» и этот файл должен соответствовать ниже информации. Если он не соответствует, то вам нужно принять меры.

  1. Описание файла — Диспетчер сеанса Windows.
  2. Название продукта приложения — Операционная система Microsoft Windows.
  3. Авторское право — Microsoft Corporation. Все права защищены.
  4. Размер — 140 KB.
  5. Язык — Русский (Россия).
  6. Исходное имя файла — smss.exe

2 признак. Вирус smss.exe может появиться на вашем ПК с разных сайтов. Эти зловреды могут использовать этот исполняемый файл для различных целей в вашей системе. Его функциональность зависит от того, что веб-страница ищет у пользователей. Вы можете угадать, что ваш компьютер заражен этой вредоносной программой, если в вашей системе обнаружены следующие признаки:

  1. Программы продолжают закрываться, зависать после открытия.
  2. Система выглядит неаккуратной.
  3. Не удается открыть определенные файлы.
  4. Получение многочисленных ошибок на вашем ПК.

3 признак. Откройте «диспетчер задач«, перейдите во вкладку «Подробности«. Далее найдите в списке smss.exe и нажмите на нем правой кнопкой мыши, далее выберите из меню «Открыть местоположения«. Этот файл должен находится по пути C:\Windows\System32.

  • Если у вас открылся в проводнике путь не C:\Windows\System32, то это вредоносная программа. Удалите её вручную.

Диспетчер сеанса Windows

SMSS (аббр. от англ. Session Manager Subsystem Service ) — подсистема управления сессиями в Windows NT. Этот компонент не входит в ядро Windows NT, но его работа критически важна для системы. SMSS для своей работы использует NativeAPI. Ядро ожидает освобождение описателя процесса smss.exe в течение 5 секунд. Если это произойдёт раньше, то ядро сгенерирует крах с кодом SESSION_5_INITALIZATION_FAILED.

Процесс SMSS отвечает за:

  • инициализацию переменных окружения
  • запуск процессов CSRSS и 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.

Контакты • DVD Maker • Факсы и сканирование • Internet Explorer • Журнал • Экранная лупа • Media Center • Проигрыватель Windows Media • Программа совместной работы • Центр устройств Windows Mobile • Центр мобильности • Экранный диктор • Paint • Редактор личных символов • Удалённый помощник • Распознавание речи • WordPad • Блокнот • Боковая панель • Звукозапись • Календарь • Калькулятор • Ножницы • Почта • Таблица символов • Исторические: Movie Maker • NetMeeting • Outlook Express • Диспетчер программ • Диспетчер файлов • Фотоальбом

Chess Titans • Mahjong Titans • Purble Place • Пасьянсы (Косынка • Паук • Солитер) • Сапёр • Пинбол • Червы

Autorun.inf • Фоновая интеллектуальная служба передачи • Файловая система стандартного журналирования • Отчёты об ошибках • Планировщик классов мультимедиа • Теневая копия • Планировщик задач • Беспроводная настройка

Active Directory • Службы развёртывания • Служба репликации файлов • DNS • Домены • Перенаправление папок • Hyper-V • IIS • Media Services • MSMQ • Защита доступа к сети (NAP) • Службы печати для UNIX • Удалённое разностное сжатие • Службы удаленной установки • Служба управления правами • Перемещаемые профили пользователей • SharePoint • Диспетчер системных ресурсов • Удаленный рабочий стол • WSUS • Групповая политика • Координатор распределённых транзакций

NT • Диспетчер объектов • Пакеты запроса ввода/вывода • Диспетчер транзакций ядра • Диспетчер логических дисков • Диспетчер учетных записей безопасности • Защита ресурсов • lsass.exe • csrss.exe • smss.exe • spoolsv.exe • Запуск

Wikimedia Foundation . 2010 .

Смотреть что такое «Диспетчер сеанса Windows» в других словарях:

Task Scheduler — (англ. планировщик задач) компонент Microsoft Windows, который предоставляет возможность запланировать запуск программ или скриптов в определённые моменты времени или через заданные временные интервалы. Компонент впервые появился в Windows… … Википедия

Server Message Block — SMB (сокр. от англ. Server Message Block) сетевой протокол прикладного уровня для удалённого доступа к файлам, принтерам и другим сетевым ресурсам, а также для межпроцессного взаимодействия. Первая версия протокола была разработана… … Википедия

SMB — (сокр. от англ. Server Message Block) сетевой протокол прикладного уровня для удалённого доступа к файлам, принтерам и другим сетевым ресурсам, а также для межпроцессного взаимодействия. Первая версия протокола была разработана компаниями… … Википедия

Поток сознания Ала Эка про тайны сессий и сервисов Windows

Содержание статьи

Что мы знаем про сессии и сервисы в Windows? Да практически ничего, кроме того, что они существуют. Что это за сущности, с чем их едят заматерелые хакеры? Как можно оценить сессию с точки зрения обеспечения защищенности и безопасности в Windows? Сегодня мы об этом и поговорим, попытаемся, так сказать, пролить свет на эту загадку.

WARNING

Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи.

Что имеем?

Как я неоднократно говорил, отсутствие в свободном доступе достаточного/исчерпывающего количества информации относительно какой-либо технологии Windows — однозначный признак того, что архитекторы и разработчики системы хотят сохранить в тайне ее детали, поскольку их раскрытие может скомпрометировать всю систему безопасности. Так, например, обстоят дела с RPC или PatchGuard.

Аналогичная ситуация складывается с сессиями в Windows. Многие айтишники что-то там про них слышали, еще меньшей части компьютерного народа знакомо слова «Session 0».

Понятие «сессии» на самом деле не так сложно. Можно говорить о ней, как о некоем временном промежутке работы совокупности программ для одного пользователя. Но при этом сессии являются важной частью обеспечения безопасности системы и защиты пользовательских данных. Это словно оболочка, связывающая все действия пользователя, запущенные программы и сам десктоп.

Рассмотрим все это поподробнее.

Что такое «Сессия»?

Windows изначально проектировалась как многопользовательская система. И это было сделано путем реализации так называемых «терминальных сессий». Здесь надо помнить про то, что «терминальная сессия» и «сессия с момента захода в систему через winlogon.exe» — немного разные вещи. Терминальные сессии создаются и управляются сессионным менеджером smss.exe — процессом, который стартует в системе одним из первых. Winlogon-сессии и процессы как бы «живут внутри» терминальной сессии.

Для того, чтобы получить ID-номер терминальной сессии можно использовать функцию LsaGetLogonSessionData с последующим перечислением Winlogon-сессии посредством функции LsaEnumerateLogonSessions. Также можно получить ID сессии путем вызова GetTokenInformation с параметром TokenSessionId, после получения первичного токена процесса (функция OpenProcessToken). У сессии есть ряд своих приватных структур, которые используются для управления памятью.

У сессии есть свое адресное пространство, которое содержит копии данных, модифицированных драйвером графической подсистемы Win32k.sys, саму копию Win32k.sys, а также немодифицированные данные и различные драйвера, загруженные сессией. У сессии есть пространство вьюшек — виды десктопа.

И, разумеется, у сессии есть свой пул памяти. Между сессиями всех пользователей можно взаимодействовать на программном уровне. Это делается посредством пайпов, сокетов и глобальных эвентов. А вот посылать месседжи в другую сессию не выйдет.

Примечателен и любопытен с точки зрения системной безопасности тот факт, что до появления Windows Vista системные сервисы, winlogon.exe и клиент-серверная подсистема csrss.exe (о которой я уже не раз писал), стартовали как часть «нулевой сессии» («Session 0») вместе с первым залогиневшимся клиентом, а все последующие залогинившиеся пользователи нумеровались как «Session 1», «Session 2», и т.д. Кстати, сколько у нас там сейчас в интернете остается пользователей ХР? ;).

Так было до Windows Vista.

Хакер #170. Малварь для OS X

А теперь самое интересное — эта ситуация стала напоминать забавную историю «кто первый встал — того и тапки», т.е. первый же залогинившийся в систему юзер получал привилегии «Session 0», т.е. мог запросто получить системные права, ведь важнейшие системные сервисы оказывались по соседству с простыми пользовательскими приложениями, такими правами не наделенными. Чем это грозило? Например, злобными shatter-аттаками, когда окну посылается сообщение (да-да, с использованием функции SendMessage) с ядерной начинкой внутри в виде шеллкода, повышающего привилегии. Можно было получить доступ к расшаренным секциям системных процессов, если те были неправильно защищены. Можно было скомпрометировать объекты «\BaseNamedObjects» (кто не знает — в гугл). Одним словом, способов в очередной раз поиздеваться над системой было предостаточно.

Однако, с выпуском Windows Vista, данную лавочку прикрыли. «Session 0» была надежно изолирована от пользовательских приложений. Так думали в Microsoft :).

А так стало после.

По-другому думал неугомонный румын («цыган», хотел написать ;)) Алекс Ионеску, которого очень хорошо знают все, кто хоть как-то связан с системным программированием и разработкой ОС по типу Windows. Действительно талантливый чувак, один из разработчиков ReactOS, если мне не изменяет память. Пытливый Ионеску нарыл способ приаттачиться в «Session 0». Способ хоть и весьма условный, однако работающий. В Windows 7 эта проблема была окончательно устранена.

Интерактивные сервисы — казнь египетския на голову Microsoft

Windows для прикладных и системных тру-кодеров предоставляет возможность создания сервисов — программ, крутящихся на заднем фоне, особо не мешающих пользователям и что-то там потихоньку считающих. Кто не в теме — в качестве некоего аналога могу привести демоны в *nix-like операционных системах. Ничего сложного в создании Win сервисов нет, документации полно, примеров еще больше, и ими активно пользуются как честные программисты, так и малварщики.

Есть такая возможность создания интерактивного сервиса — с флагом SERVICE_INTERACTIVE_PROCESS при вызове функций CreateService() или ChangeServiceConfig().

Когда менеджер сервисов (services.exe) создает процесс для интерактивного сервиса (сорри за тавтологию :), он присоединяет его к «Winsta0» (начальной рабочей станции, о них — ниже), а не к рабочей станции самого процесса. Чтобы сделать этого, процесс сервиса должен иметь права SYSTEM, потому что потом ему придется взаимодействовать с интерактивным десктопом и самим пользователем. Это может привести к очень плачевным результатам — атакам на повышение привилегий, основываясь на том, что интерактивные процессы функционируют в системе с правами SYSTEM и привилегиями «trusted computing base» (TCB).

Изоляция «Session 0» может привести к проблеме с сервисами, которым необходимо отображение пользовательского интерфейса. Поскольку сервис теперь выполняется в другой сессии (по сравнению с десктопом), пользовательский интерфейс не будет виден конечным пользователям и интерактивный сервис может оказаться в «зависшем» состоянии.

«Пусть говорят!»

В Windows Vista решение этой проблемы состоит в том, что пользователям предоставляется возможность временного переключения в «Session 0» для взаимодействия с интерактивным сервисом.

В общем, намудрили товарищи из Microsoft, не смогли переплюнуть золотое правило: «Когда нельзя, но очень хочется, тогда можно».

Осторожно, двери закрываются! Следующая станция. «Windows»?

Да-да, системным кодерам должно быть знакомо понятие WindowStation (CreateWindowStation()). Зачем оно нужно? Ну хотя бы для того, чтобы всегда иметь ввиду, что если твой код должен быть внедрен в системный процесс или сервис (посредством подмены контекста потока), он выполняться не будет в силу несоответствия WindowStation, потому у как юзермодных приложений это будет «\Windows\WindowStations\WinSta0», а у сервиса — «\Windows\WindowStations\Service-0x0-3e7$». Это надо обязательно иметь в виду, например при создании кейлоггеров.

Станция Windows

Как можно получить полный доступ к интерактивной рабочей станции и десктопу «winsta0\default»? Смотрим код:

Полный вариант кода ты сможешь найти здесь — http://support.microsoft.com/kb/165194

Единственный способ что-то сделать вне своей терминальной сессии — это запустить отдельный процесс в этой сессии посредством CreateProcessAsUser с нужным токеном

Подытожим.

Тема сессий, рабочих станций и сервисов в Windows далеко не изучена. Уверен, что там если покопаться хорошенько — не одну химеру на свет божий можно будет вытащить.

Отношения между сессиями, Станциями Windows и Десктопами Windows

В погоне за безопасностью команда Windows хорошенько постаралась осложнить жизнь как простым программистам, так и мальварщикам. С выходом операционок Windows Vista+, начали успешно отваливаться многие коммерческие VNC-решения, перестали работать кейлоггеры. И все это — в силу попыток изолировать рабочие станции, десктопы и сессии друг от друга.

Засим закончу. Удачного компилирования и да пребудет с тобой Сила!

Читайте также:  Linux изменить кодировку консоли
Оцените статью
Компоненты Microsoft Windows
Основные