现在流行的网吧配置组合是windows98操作系统+硬盘还原卡,开机加载计费软件并屏蔽掉各种热键。大意的网管也许认为这样对网络各主机的计费监控是万无一失的,因为用户无法通过对启动项或者注册表进行修改从而阻止计费软件的启动,重新启动的时候还原卡会恢复一切。但是很显然,大多数人都忽略了DOS系统的强大功能,不要以为只有windows环境下才可以修改注册表,DOS实模式下,同样有regedit命令。假如计费软件的程序是calculate.exe,下面我们就通过实例来看看这个进入系统就被加载的程序是如何被屏蔽掉的。
1.开机闪过还原卡的界面之后,立即按F8进入选择菜单,选择只有命令行的DOS模式。
2.导出注册表分支:
在DOS下导出注册表分支的命令格式是:Regedit[/L:system] [/R:user] /E filename [regpath1]。/L:system是指定system.dat的路径,/R:user是指定user.dat的路径,如果不说明,系统就会在默认的路径下找;/E:是导出注册表分支的文件名,regpath1是要导出的注册表分支。比如,我们要导出默认注册表关于控制系统启动的分支到crack.reg里,命令如下:regedit /e crack.reg HKEY-LOCAL-MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
3.对导出的分支进行分析,修改:
使用DOS下的编辑命令edit ,输入edit crack.reg 然后出现编辑界面,删除含有calculate.exe的启动信息即可。然后保存退出。
4.把修改好的注册表分支重新导入
命令的格式为:regedit /L:system /R:user file1.reg file2.reg。我们一般都要修改默认的注册表文件,所以在实际使用中只需键入:regedit crack..reg就行了。
5.DOS下进入windows,这个不用我多说了吧。
这样修改过的注册表会在不通过还原卡过滤的情况下被重新加载,屏蔽
了calculate.exe程序。
我尝试了很多网吧,都存在这样的安全漏洞,网管应该加强对DOS强大功能的认识。
当然,DOS模式下的regedit命令是一把双面刀锋,普通的个人机器还可用它来解决病毒引起的无法启动windows故障,不过,要正确找出引起错误的地方并修改,需要我们平时对注册表积累的经验。下面,我们看一下它的基本结构,以使我们在对它的修改时可以有的放矢。
我们知道,注册表里面有6个主分支,其中容易引起致命错误而使windows不能正常启动的分支有: [HKEY_LOCAL_MACHINE],记录着本地机器的硬件配置以及安装的相应软件,特别是[HKEY-LOCAL-MACHINE\Enum\PCI]这个分支下面的主键值,一旦出错,WINDOWS往往不能启动。如[HKEY-LOCAL-MACHINE\Enum\PCI\VEN_8086&DEV-7111&SUBSYS_00000000&REV-01\BUS_00&DEV_07&FUNC-01]记录的是硬盘控制器的详细信息,下面的Logconfig记录着它的各种参数;[HKEY_LOCAL-MACHINE\Enum\PCI\VEN-1002&DEV-4C42&SUBSYS_4C421071&REV-DC\000800]记录的则是显示卡的重要资料和参数,一旦这里出错,往往会导致WINDOWS在启动时黑屏,然后死掉。另外还有[HKEY-LOCAL-M ACHINE\Software\Microsoft\Windows\CurrentVersion]里记录着WINDOWS当前版本的信息以及启动时执行的程序等,这是病毒最爱攻击和修改的地方。至于还有[HKEY-CLASS-ROOT]是记录文件种类及其关联信息的,[HKEY-CURRENT-USER]里记录着当前用户的各种信息,包括登陆的密码和各方面的设置等,这些一般不会引起WINDOWS的致命错误,这里也不再详细分析了。