Session 0隔离:
在Windows XP,Windows Server 2003以及更早的版本中,第一个登录的用户以及Windows的所有服务都运行在Session 0上。
这样做危险的地方是,用户使用的应用程序可能会利用Windows的服务程序提升自己的权限。
如下图所示,第一个登录的用户与Windows服务程序运行在同一个会话中,第二个以及后续的登录用户(在XP中为通过FUS登录的用户,在Server 2003中则为远程登录的用户)就运行在其他的会话中。
Windows Vista,Windows Server 2008及后续版本中,Windows服务运行于Session 0,第一个登录的用户则在Session 1中运行。
Session 0是一个非交互型的(noninteractive)Session,只能运行系统进程以及服务程序。
所以服务程序已经不能像之前一样工作,比如不能访问视频驱动程序。

Windows Vista及更高版本引入了Session 0隔离,将服务程序和系统进程移出用户交互Session,防止权限提升风险。这导致服务程序无法访问视频驱动,影响打印机驱动和UDMF驱动等。服务程序与用户界面交互受限,如窗口消息传递,本地命名对象被Session隔离。推荐使用RPC、命名管道等替代方案,以及在正确Session中处理显示属性和命名对象。测试时,可在XP的Fast User Switching环境下模拟Session 0隔离行为。

最低0.47元/天 解锁文章
547

被折叠的 条评论
为什么被折叠?



