影子系统 powershadow原理

影子系统
Wednesday, 3. January 2007, 05:26:11

Software

http://www.powershadow.com/
http://www.powershadow.com/ch/

PowerShadow,它并非虚拟系统,因为PowerShadow是执行在使用中的系统上,是在原来系统的基础上创建一个虚拟环境,任何对系统的读写只是在这种虚拟环境下的读写,当系统重启后一切将恢复到启用影子系统前的状态。PowerShadow只是原系统的影子!

它并不像VMWare或VirtualPC等虚拟机软件那样在原本的系统中模拟运行一个新的系统,因为PowerShadow是运行在使用中的系统上的,它只是原系统的影子!意思是说,原系统中安装了的任何软件,做了任何操作,保存了什么设置,在进入影子模式后,这些新软件、设置仍然存在,而虚拟机则是和原系统相对独立的两个系统。

Comments
影子系统会默认安装到"%windir%\system32\shadow"
创建服务"Shadow System Serviced",服务进程"%windir%\system32\shadow\ShadowService.exe"

使用影子系统启动后会自动启动两个进程
ShadowTip.exe
影子系统管理,在任务栏上的图标
ShadowService.exe
影子建立的服务"Shadow System Serviced"的进程

实验:
开机时进入影子模式
kill掉上述这两个进程
在系统盘新建一个文本文件 "新建 文本文档.txt"
删除影子系统的安装文件夹和其中的全部文件 "%windir%\system32\shadow"
重启
"新建 文本文档.txt"不见了
"%windir%\system32\shadow"又回来了
可见即使杀掉影子系统的那两个进程,影子系统依然对系统有保护作用

在网上查到%windir%\system32\drivers\SnpShot.sys才是真正对系统起到保护作用的驱动,用procexp.exe在System下可发现SnpShot.sys


影子启动单一保护模式后,C盘原有文件在硬盘上都不能动,即使删除也只是显示为删除,实际上这部分删除后多出来的空间是无法动用的,对后来写入的文件,如果能动用的硬盘

空间够用就写在硬盘里,否则就写在内存里,如果内存也不够用则系统假死,重启后恢复原状

1.影子的核心进程不是ShadowService.exe和ShadowTip.exe,这两个是摆摆噱头的,影子真正的进程是system,这是系统核心进程,无法中止,即使不开启影子保护模式,system

进程仍然加载SnpShot.sys,一旦加载即驻留内存,即使删除SnpShot.sys也没用

2.影子需要Windows系统支持,在DOS下影子是可以被干掉的,比如用软盘、光盘、U盘启动DOS,但这几乎不可能在远程操作,不知道有没有DOS上网软件?

3.影子启动保护后,如果能让system进程把SnpShot.sys从内存中卸下,则影子会被干掉,这可能是以后病毒的主攻方向

4.影子没有改写硬盘MBR(硬盘主引导记录),这一点大家可以放心

在进入影子系统之后,即使开启了Terminal Services服务,仍然不能切换用户,也就是说只能单用户进行互交,这样对3389也会有影响,没测试。
最后编辑2007-03-08 16:49:29