论文部分内容阅读
我是一个比较恋旧的人,2003年的《电脑爱好者》都经常拿出来翻翻。所以尽管Vista出来了N久,本人对它并不“来电”。最近,我在虚拟机中Vista系统下,与木马打了一场大仗,最后全胜而归:许多在XP下的木马并不能在Vista中运行!原来,Vista已经为我们建好了一条最佳战壕——Session(会话)隔离。
挖掘最佳战壕,木马难以跨越的鸿沟
XP中的会话机制,“会话0”里允许同时存在服务程序和一般应用程序,这种情况下,如果一个恶意软件成功地在一个计算机里面创建了一个交互式服务,那么它可以向Windows应用程序窗口发送消息,来达到控制应用程序的目的。
Vista系统则吸取了前辈的教训,挖掘了一条绝佳的战壕:将服务运行在“会话0”(服务方式运行)中,而账户登录后运行的程序则在“会话1”(用户环境)下,应用程序和服务被这条最佳战壕隔开,分配在不同的会话中,彼此不能通信,提高了安全性。查看Vista进程,会发现存在两个甚至多个csrss.exe,它是Windows子系统的用户模式部分,在XP中只能看到一个。正是因为会话隔离机制的存在,需要两个csrss.exe,服务不同会话。
跨越最佳战壕,永远不死的下载
将应用程序安装为服务可以达到两重效果:一是随系统启动(非用户账户也可),二是无法结束进程。比如常用的BT软件比特彗星(BitComet),新版本的不断更新可能会带来运行中的偶尔崩溃,变成服务的话就不会出错;对于多用户的电脑来说,不用担心别人关掉下载来碍事(因为是系统服务)。如果你是个下载狂人,那就试试吧!XP下基本上是小case,使用FireDaemon即可实现。Vista中的最佳战壕可不是随意能跨越的,但外星人“比特彗星”就偏不信这个邪。
第一步:下载安装Windows Server 2003 Resource Kit Tools(下载地址:http://www.newhua.com/soft/38502.htm)。以管理员权限打开命令提示符窗口,并输入以下命令图1框中的命令。
第二步:打开注册表编辑器,定位到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services],新增一个MSPAINT子项,双击该项,在右侧的窗格里新建一个字符串键值,命名为Application,并将其数值数据设置为:C:\Program Files\BitComet\BitComet.exe。
第三步:在“开始→运行”中输入services.msc回车打开服务面板,找到Interactive Service Detection服务,双击后点击“启用”(见图2)。然后启动BitComet.exe服务,系统会弹出一个对话框,单击check request(检查请求)按钮就切入到“会话0”中,这时可以看到画图程序了,单击Interactive Services Dialog detection对话框上的My desktop(我的桌面)按钮,即可回到原来的桌面。
小提示
借助于Interactive Service Detection可以创建很多服务,如果不常使用的话,它倒成了一个危险服务,为木马大开后门。平常建议关闭这个服务,当安装应用程序的时候再开启就可以了。
Just Do It:System权限在Vista的开启该如何启用
Cfan以前的文章中介绍过如何开启系统的System权限,使用工具psexec也可以做到。我可以提供Vista下system权限提升的条件,剩下的就交给你了:
1.程序不能在session 0中运行,可以在“会话1”中。
2.system进程必须运行在WinSta0窗口站中。
挖掘最佳战壕,木马难以跨越的鸿沟
XP中的会话机制,“会话0”里允许同时存在服务程序和一般应用程序,这种情况下,如果一个恶意软件成功地在一个计算机里面创建了一个交互式服务,那么它可以向Windows应用程序窗口发送消息,来达到控制应用程序的目的。
Vista系统则吸取了前辈的教训,挖掘了一条绝佳的战壕:将服务运行在“会话0”(服务方式运行)中,而账户登录后运行的程序则在“会话1”(用户环境)下,应用程序和服务被这条最佳战壕隔开,分配在不同的会话中,彼此不能通信,提高了安全性。查看Vista进程,会发现存在两个甚至多个csrss.exe,它是Windows子系统的用户模式部分,在XP中只能看到一个。正是因为会话隔离机制的存在,需要两个csrss.exe,服务不同会话。
跨越最佳战壕,永远不死的下载
将应用程序安装为服务可以达到两重效果:一是随系统启动(非用户账户也可),二是无法结束进程。比如常用的BT软件比特彗星(BitComet),新版本的不断更新可能会带来运行中的偶尔崩溃,变成服务的话就不会出错;对于多用户的电脑来说,不用担心别人关掉下载来碍事(因为是系统服务)。如果你是个下载狂人,那就试试吧!XP下基本上是小case,使用FireDaemon即可实现。Vista中的最佳战壕可不是随意能跨越的,但外星人“比特彗星”就偏不信这个邪。
第一步:下载安装Windows Server 2003 Resource Kit Tools(下载地址:http://www.newhua.com/soft/38502.htm)。以管理员权限打开命令提示符窗口,并输入以下命令图1框中的命令。
第二步:打开注册表编辑器,定位到[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services],新增一个MSPAINT子项,双击该项,在右侧的窗格里新建一个字符串键值,命名为Application,并将其数值数据设置为:C:\Program Files\BitComet\BitComet.exe。
第三步:在“开始→运行”中输入services.msc回车打开服务面板,找到Interactive Service Detection服务,双击后点击“启用”(见图2)。然后启动BitComet.exe服务,系统会弹出一个对话框,单击check request(检查请求)按钮就切入到“会话0”中,这时可以看到画图程序了,单击Interactive Services Dialog detection对话框上的My desktop(我的桌面)按钮,即可回到原来的桌面。
小提示
借助于Interactive Service Detection可以创建很多服务,如果不常使用的话,它倒成了一个危险服务,为木马大开后门。平常建议关闭这个服务,当安装应用程序的时候再开启就可以了。
Just Do It:System权限在Vista的开启该如何启用
Cfan以前的文章中介绍过如何开启系统的System权限,使用工具psexec也可以做到。我可以提供Vista下system权限提升的条件,剩下的就交给你了:
1.程序不能在session 0中运行,可以在“会话1”中。
2.system进程必须运行在WinSta0窗口站中。