Процесс исполнения клиент-сервер: различия между версиями
[непроверенная версия] | [непроверенная версия] |
А.Минас (обсуждение | вклад) Нет описания правки |
Gromolyak (обсуждение | вклад) мНет описания правки |
||
(не показано 46 промежуточных версий 30 участников) | |||
Строка 1: | Строка 1: | ||
'''Подсистема клиент/сервер времени выполнения''' ({{lang-en|Client/Server Runtime Subsystem}}, ''CSRSS'') или csrss.exe |
'''Подсистема клиент/сервер времени выполнения''' ({{lang-en|Client/Server Runtime Subsystem}}, ''CSRSS'') или csrss.exe входит в состав операционной системы Microsoft Windows NT и представляет собой часть пользовательского режима подсистемы Win32. Включена в состав Windows 2000, Windows XP, Windows 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8 (8.1) и Windows 10. Поскольку большинство операций подсистемы Win32 было перенесено в режим ядра, а конкретнее — в драйверы режима ядра, в Windows NT 4 и выше CSRSS в основном отвечает за обработку консоли в Win32 и графический интерфейс выключения ОС. Подсистема имеет решающее значение для функционирования ОС; поэтому завершение этого процесса приведёт к отказу системы. При нормальных условиях CSRSS не может быть завершена применением команды Taskkill или с помощью диспетчера задач Windows, хотя это возможно с Windows Vista, если диспетчер задач запускается в режиме администратора. Начиная с Windows 7 диспетчер задач сообщит пользователю, что завершение процесса приведёт к отказу системы и покажет запрос, хочет ли пользователь продолжить. |
||
Завершение csrss.exe ведёт к BSOD и |
Завершение csrss.exe ведёт к [[Синий экран смерти|BSOD]] (синему экрану смерти) и аварийной перезагрузке ''Windows''. |
||
Исполняемый файл csrss.exe хранится в папке <code>[[Переменные среды|%SYSTEMROOT%]]\system32</code>. |
Исполняемый файл csrss.exe хранится в папке <code>[[Переменные среды|%SYSTEMROOT%]]\system32</code>. |
||
== Обзор == |
== Обзор == |
||
Процесс участвует в работе: |
Процесс участвует в работе: |
||
* [[Терминальные службы| |
* [[Терминальные службы|терминальных служб]]; |
||
* |
* служб [[Общий доступ к рабочему столу|удалённого доступа]] к рабочему столу; |
||
* |
* приложений с [[Интерфейс командной строки|интерфейсом командной строки]]; |
||
* [[Многопоточность| |
* [[Многопоточность|потоков]] в операционной системе (создание потоков в подсистеме Win32). |
||
==Работа подсистемы== |
== Работа подсистемы == |
||
CSRSS выполняется как системный сервис пользовательского режима. Когда процесс пользовательского режима вызывает функцию с участием консольных окон, создания процесса/потока |
CSRSS выполняется как системный сервис пользовательского режима. Когда процесс пользовательского режима вызывает функцию с участием консольных окон, создания процесса/потока или поддержки Side-by-Side, библиотеки Win32 (kernel32.dll, user32.dll, gdi32.dll) вместо запроса системного вызова обращаются к процессу CSRSS путём межпроцессного вызова (LPC вида Local Procedure Call), и CSRSS делает большую часть реальной работы, без того, чтобы подвергать опасности (компрометировать) ядро<ref>{{cite web |lang=en |author=Prasad Dabak, Sandeep Phadke and Milind Borate |url=http://www.gbv.de/dms/ilmenau/toc/306024276.PDF |title=Undocumented Windows NT |website=Gemeinsamen Bibliotheksverbundes |accessdate=2021-06-06 |archive-date=2021-06-06 |archive-url=https://web.archive.org/web/20210606174743/http://www.gbv.de/dms/ilmenau/toc/306024276.PDF |deadlink=no }}</ref>. Однако вызовы к оконному менеджеру и сервисам GDI обрабатываются драйверами режима ядра (win32k.sys)<ref>{{книга |заглавие=Windows Internals, 5th Edition |ссылка=https://archive.org/details/windowsinternals0000russ |год=2009 |издательство={{Нп3|Microsoft Press}} |страницы=[https://archive.org/details/windowsinternals0000russ/page/54 54] |ref=Russinovich |язык=en |автор=Russinovich, Mark}}</ref>. |
||
==История== |
== История == |
||
Серия выпусков Windows NT 3.x вмещала компонент GDI (интерфейс графических устройств) внутри CSRSS, но GDI был перенесен в режим ядра в версии Windows NT 4.0 для улучшения производительности графического отображения<ref>{{cite web |lang=en |url=https://technet.microsoft.com/en-us/library/cc750820.aspx#XSLTsection124121120120 |title=The Windows NT 4.0 Kernel mode change |accessdate=2009-01-19 |website=TechNet - Microsoft |archiveurl=https://www.webcitation.org/66AzBXou0?url=http://technet.microsoft.com/en-us/library/cc750820.aspx#XSLTsection124121120120 |archivedate=2012-03-15 |deadlink=no }}</ref>. Процесс запуска Windows был значительно изменен начиная с версии Vista. В версиях Windows Vista и 7 работает 2 экземпляра csrss.exe<ref>{{cite web |lang=en |title=Inside the Windows Vista Kernel - Startup Processes |url=https://technet.microsoft.com/en-us/magazine/2007.03.vistakernel.aspx |accessdate=2010-10-01 |website=TechNet - Microsoft |deadlink=no |archiveurl=https://www.webcitation.org/66AzCF2rA?url=http://technet.microsoft.com/en-us/magazine/2007.03.vistakernel.aspx |archivedate=2012-03-15 }}</ref>. |
|||
==Угрозы== |
== Угрозы == |
||
Известно, что вирусы, шпионские программы и трояны |
Известно, что вирусы, шпионские программы и трояны заражают или маскируются под этот процесс. Это делают по меньшей мере следующие зловредные программы: |
||
* Nimda.E |
* [[Nimda]].E |
||
* W32/Netsky.ab@MM |
* W32/[[Netsky (червь)|Netsky]].ab@MM |
||
* W32/VBMania@MM |
* W32/VBMania@MM |
||
⚫ | Множество [[Компьютерный вирус|вирусов]] использует для маскировки имя приложения, чтобы не вызвать подозрения у пользователя, особенно учитывая, что для каждой терминальной сессии создаётся отдельный экземпляр процесса, поэтому на [[сервер (аппаратное обеспечение)|серверных машинах]] их количество может доходить до нескольких десятков. Оригинальный файл хранится только в папке <code>%SYSTEMROOT%\system32</code>, а его подмена практически невозможна на компьютере с одной операционной системой. |
||
===Подверженность взломам=== |
|||
⚫ | Множество [[Компьютерный вирус|вирусов]] использует |
||
== Проблемы == |
== Проблемы == |
||
Данная программа является критическим системным компонентом, отвечающим за вызовы функций подсистемы Win32. При её завершении система завершит работу с отображением [[Синий экран смерти|синего экрана смерти]]. |
Данная программа является критическим системным компонентом, отвечающим за вызовы функций подсистемы Win32. При её завершении система завершит работу с отображением [[Синий экран смерти|синего экрана смерти]] с кодом CRITICAL_PROCESS_DIED. До Windows 8 синий экран отображал код 0x000000F4 и сообщение: |
||
{{начало цитаты}}A process or thread crucial to system operation has unexpectedly exited or been terminated.{{конец цитаты}} |
|||
== Примечания == |
|||
{{Windows-stub}} |
|||
{{примечания}} |
|||
⚫ | |||
⚫ | |||
{{Компоненты Microsoft Windows}} |
{{Компоненты Microsoft Windows}} |
||
⚫ | |||
[[Категория:Стандартные приложения Windows]] |
[[Категория:Стандартные приложения Windows]] |
||
⚫ | |||
[[en:Client/Server Runtime Subsystem]] |
|||
[[pl:CSRSS]] |
Текущая версия от 18:37, 11 октября 2023
Подсистема клиент/сервер времени выполнения (англ. Client/Server Runtime Subsystem, CSRSS) или csrss.exe входит в состав операционной системы Microsoft Windows NT и представляет собой часть пользовательского режима подсистемы Win32. Включена в состав Windows 2000, Windows XP, Windows 2003, Windows Vista, Windows Server 2008, Windows 7, Windows 8 (8.1) и Windows 10. Поскольку большинство операций подсистемы Win32 было перенесено в режим ядра, а конкретнее — в драйверы режима ядра, в Windows NT 4 и выше CSRSS в основном отвечает за обработку консоли в Win32 и графический интерфейс выключения ОС. Подсистема имеет решающее значение для функционирования ОС; поэтому завершение этого процесса приведёт к отказу системы. При нормальных условиях CSRSS не может быть завершена применением команды Taskkill или с помощью диспетчера задач Windows, хотя это возможно с Windows Vista, если диспетчер задач запускается в режиме администратора. Начиная с Windows 7 диспетчер задач сообщит пользователю, что завершение процесса приведёт к отказу системы и покажет запрос, хочет ли пользователь продолжить.
Завершение csrss.exe ведёт к BSOD (синему экрану смерти) и аварийной перезагрузке Windows.
Исполняемый файл csrss.exe хранится в папке %SYSTEMROOT%\system32
.
Обзор
[править | править код]Процесс участвует в работе:
- терминальных служб;
- служб удалённого доступа к рабочему столу;
- приложений с интерфейсом командной строки;
- потоков в операционной системе (создание потоков в подсистеме Win32).
Работа подсистемы
[править | править код]CSRSS выполняется как системный сервис пользовательского режима. Когда процесс пользовательского режима вызывает функцию с участием консольных окон, создания процесса/потока или поддержки Side-by-Side, библиотеки Win32 (kernel32.dll, user32.dll, gdi32.dll) вместо запроса системного вызова обращаются к процессу CSRSS путём межпроцессного вызова (LPC вида Local Procedure Call), и CSRSS делает большую часть реальной работы, без того, чтобы подвергать опасности (компрометировать) ядро[1]. Однако вызовы к оконному менеджеру и сервисам GDI обрабатываются драйверами режима ядра (win32k.sys)[2].
История
[править | править код]Серия выпусков Windows NT 3.x вмещала компонент GDI (интерфейс графических устройств) внутри CSRSS, но GDI был перенесен в режим ядра в версии Windows NT 4.0 для улучшения производительности графического отображения[3]. Процесс запуска Windows был значительно изменен начиная с версии Vista. В версиях Windows Vista и 7 работает 2 экземпляра csrss.exe[4].
Угрозы
[править | править код]Известно, что вирусы, шпионские программы и трояны заражают или маскируются под этот процесс. Это делают по меньшей мере следующие зловредные программы:
Множество вирусов использует для маскировки имя приложения, чтобы не вызвать подозрения у пользователя, особенно учитывая, что для каждой терминальной сессии создаётся отдельный экземпляр процесса, поэтому на серверных машинах их количество может доходить до нескольких десятков. Оригинальный файл хранится только в папке %SYSTEMROOT%\system32
, а его подмена практически невозможна на компьютере с одной операционной системой.
Проблемы
[править | править код]Данная программа является критическим системным компонентом, отвечающим за вызовы функций подсистемы Win32. При её завершении система завершит работу с отображением синего экрана смерти с кодом CRITICAL_PROCESS_DIED. До Windows 8 синий экран отображал код 0x000000F4 и сообщение:
A process or thread crucial to system operation has unexpectedly exited or been terminated.
Примечания
[править | править код]- ↑ Prasad Dabak, Sandeep Phadke and Milind Borate. Undocumented Windows NT (англ.). Gemeinsamen Bibliotheksverbundes. Дата обращения: 6 июня 2021. Архивировано 6 июня 2021 года.
- ↑ Russinovich, Mark. Windows Internals, 5th Edition (англ.). — Microsoft Press[англ.], 2009. — P. 54.
- ↑ The Windows NT 4.0 Kernel mode change (англ.). TechNet - Microsoft. Дата обращения: 19 января 2009. Архивировано 15 марта 2012 года.
- ↑ Inside the Windows Vista Kernel - Startup Processes (англ.). TechNet - Microsoft. Дата обращения: 1 октября 2010. Архивировано 15 марта 2012 года.
Для улучшения этой статьи по информационным технологиям желательно:
|