防止冰点还原被破解(详细完美版)

      计算机安全 2006-8-19 16:17
附5.7下载地址
cniis.com/UserFiles/2006-5/23/deep_freeze冰点5.7企业无限制网络版.rar

前几天的文章我说过冰点已经可以轻易破解了,但是网管和破解者似乎就是天生的死对头,另外破解冰点还原也可能导致网吧机器被安装木马导致其他上网用户的无辜损失,所以我们还是要想办法防止冰点还原被破解。.我看了网上的一些文章,写得还可以但都有这样那样缺陷,因此我把自己总结的一些方法提供给大家,也许还有疏忽的地方,但比其其他版本的防破解文章算是少了些漏洞了。

点企业版目录下有个dfc.exe,是冰点提供的命令行下查询冰点状态和控制的工具,这个程序配合上我们的批处理命令就可以有效防止冰点还原被破解了。(如果你对冰点企业版,也就是专业版不太了解,可以参考这篇文章:http://leavic.blog.hexun.com/1785069_d.html)



首先我们把上图中的DFc.exe复制到C:\windows\system32目录下面。

第二步,编辑Autoexec.bat,这个是隐藏的系统文件,要访问它,我们要现在文件夹选项中选上"显示所有文件",并取消"隐藏受保护的系统文件",如图


接下来我们就可以看到这个文件了



点右键,选择"编辑"

在里面加入以下命令:

@ECHO OFF
DFC.EXE get /isfrozen
IF Errorlevel 1 GOTO frozen
IF Errorlevel 0 GOTO thawed
:frozen @Echo 系统受冰点保护中!
Goto END
:thawed @Echo 悟空你又不听话了!
@Echo Warning!!%date%%time%冰点处于不保护状态! >>//Server/Warn$ /%ComputerName%.txt
@DFC yourpassword /BOOTFROZEN Goto END
:END

然后保存就可以了。

要注意这里的yourpassword是冰点还原客户端的CMD密码,所以在用专业版生成客户端时要记住加上个CMD密码。

">>//Server/Warn$ /%ComputerName%.txt" 里面的//Server/Warn$ /修改成与你的服务器的相对应的路径,例如你的服务器IP是10.234.1.35,你的共享目录是Share,你就应该写//10.234.1.35/Share$ /,这句话的作用是把遭到破解的机器的机器名写入你服务器的共享目录,这样你就可以知道哪台机器被破解了,所以这个共享目录要设置为完全共享,即允许读取允许写入,否则将无法正常写入信息。

其实这个批处理可以有另一个配置方法,其他的完全一样,就是把提醒方式改成消息提示,这时候要求客户机和服务器都打开Messenger服务,然后把上面"@Echo Warning!!%date%%time%冰点处于不保护状态! >>//Server/Warn$ /%ComputerName%.txt "改成"net send 10.235.1.35 我被破解了",这里的10.234.1.35改成服务器的IP,这样一旦冰点被破解,重启后就会发消息给服务器告诉自己被破解了,由于Messenger服务本身会显示发送消息方的IP,所以可以很快看到那台机器挂了。这个提示方式是比较好的,可以避免后面提到的一个漏洞,建议采用。

那么到底防破解是如何工作的呢?很简单,一旦发现冰点处于不保护状态,就重启,这样破解后就会不断重启。根本无法使用。

那不断重启我们要如何维护呢?很简单,进入MAX Dos,输入NTFSDOS,这样我们才可以访问NTFS格式的分区,然后直接把那个autoexec.bat给Delete(删除)了。所以事先也要装好矮人DOS系统,可以去他们的网站http://ar.cccip.com/下载,在百度里一搜就可以找到,这里我就不提供下载了。

重启后我们重新设置冰点为保护状态就是了。因为现在冰点的破解在更改保护状态后就要重启,否则不生效,这样破解者还来不及把冰点卸载就进入不断重启的噩梦了。我们只需要修改冰点保护状态而不需要重装冰点,原来的数据由于不断重启而无法被破坏。

我们也可以把这个批处理命令转换成exe文件,放在系统开始菜单的"启动"目录下面,这样就不需要原来那个autoexec.bat了,关于 bat转换成exe我们用一个工具就行了。

这个工具连同autoexec.bat(请根据自己的情况修改)的下载地址:

www.myfilehut.com/userfiles/38467/restore/profreeze.rar

当然另一种方法就是用Vb script来调用批处理,脚本如下

-------------------------

DIM objShell
set objShell=wscript.createObject("wscript.shell")
iReturn=objShell.Run("cmd.exe /C C:/1.bat", 0, TRUE)

-------------------------
把C:/1.bat 改成你的批处理的存放位置,记住,当你用Vb脚本调用批处理的时候,这个批处理就不是前面的autoexec.bat了,可以存放在任意位置,前面用autoexec.bat只是利用它的自启动特性。

然后我们把这个脚本保存为name.vbs(后缀是vbs,前面随便),然后把这个name.vbs像前面由bat转来的exe文件一样放到启动目录里面。

转成exe和脚本调用的目的就是避免批处理那个黑黑的命令提示符窗口。

下面我解释一下这个批处理的工作原理(不想看的可以跳到后面直接看漏洞解决),三条斜线之间是注解。

@ECHO OFF ///关掉回显

DFC.EXE get /isfrozen ///调用DFC.exe来获取冰点还原当前的保护状态,是保护还是不保护///

IF Errorlevel 1 GOTO frozen ///如果是Errorlevel 1(也就是获知当前为保护状态),就跳到frozen那里执行句柄:frozen后面的命令///

IF Errorlevel 0 GOTO thawed ///如果是Errorlevel 0(也就是冰点还原处于不保护状态,说白了就是被破解了),就跳到thawed那里执行句柄:thawed后的命令。///

:frozen @Echo 系统受冰点保护中!
Goto END ///句柄:frozen,回显提示"系统受冰点保护中! ",然后跳到END,结束批处理,系统正常启动。///

:thawed @Echo 悟空你又不听话了! ///句柄:thawed,回显"悟空你又不听话了! "///
@Echo 警告!!%date%%time%冰点处于不保护状 态! >>//Server/Warn$ /%ComputerName%.txt

///仍然属于句柄:thawed,把日期,时间以及被破解的机器的机器名写入服务器的共享目录下,这样网管就可以发现被破解的机器了。///
@DFC yourpassword /BOOTFROZEN Goto END

///调用DFC.exe重启系统,下次进入系统还会执行这个批处理,发现冰点处于不保护状态还会重启,这样就进入了不断重启的状态///
:END///结束批处理///

下面我来谈谈这个方法的漏洞,一个小漏洞是把被破解的机器的机器名写入服务器共享目录的问题,要写入就必须设置为完全共享,可一旦完全共享就可以有权限删除这个记录,别人在破解前先查看批处理文件就可以找到这个共享目录,破解后换台机器,把这个目录下的记录文件删掉,那网管可麻烦了。虽然他没破解成功,但网管也无法及时修复。解决方法很简单,用前面提到的开启Messenger服务发送消息的方法配置批处理文件,或者直接不用批处理和脚本调用,只用转换后的exe自启动的方式,因为从那个exe文件中是无法得到共享目录位置的。

另一个漏洞就比较严重了,可以让这个防破解方案彻底失效,我们知道,系统有一种模式叫安全模式,这种模式下,任何自启动项目,autoexec.bat中的命令,非系统必须服务,甚至非系统主题,都不会启动,这本来是对付木马自启动的好方法,但也可以用来对付我门的这个exe程序的自启动,一旦程序无法启动,防破解彻底失效。所以我们要屏蔽F8键,以屏蔽安全模式。不过我想现在没有几个网管连F8都不会屏蔽吧,如果不会,用下面的补丁就行了。

www.myfilehut.com/userfiles/38467/restore/f8.rar

到这里算是比较完美的对付了冰点的破解者,没做好防护的网管们赶紧动手吧,免得用户号被到了来找你们,万一他们说是你们在机器里装的木马,你们也没话说了。



当然,你也可以直接使用冰点保镖1.0来防止破解(看到这里是不是很想砍我啊),其实放到这里才说是因为我并没有试验过这个软件是否有效,不过人家敢发布也不会是太垃圾的。

下载地址:

www.myfilehut.com/userfiles/38467/restore/freezebb.rar
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commenttime}{commentauthor}

{CommentUrl}
{commentcontent}