网吧破解还原卡的方法总结Word文档下载推荐.docx
《网吧破解还原卡的方法总结Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《网吧破解还原卡的方法总结Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。
个箱子把机箱锁起来。
学生:
最近,网吧机箱不光上了螺丝,而且还贴了封条,加了锁,装了箱。
我的“物理”破解法只有告一段落了。
其实很多种类的还原卡,跟BIOS设置存在某种关联,如果在BIOS设置界面的“BIOSFeaturesSetup”中存在“BootFromLANFirst”项目,就要求将其设置为“Enable”(将引导顺序设为网络最优先),如图1-13-5假设我们将这个选项设置为“Disable”,那么这块还原卡将不再工作。
这是真的,我就在几个网吧不同牌子的还原卡上测试成功过。
如果还原卡的版本比较老,更是绝对没有问题的。
那么这里禁止还原卡就等同于破解BIOS密码了。
破解BIOS密码我们可以使用操作系统自带的DEBUG程序来清除密码。
因为BIOS设置程序存在厂商、版本的不同,所以就有如下表所示的多种破解方法:
方法一方法二方法三方法四方法五-O7011-O7023-O7010-O7010-O7016-O71FF-O7134-O71FF-O7100-O7116-Q-Q-Q-Q-Q看一下具体的破解步骤吧:
在DOS下输入“DEBUG”并回车,
DOS提示符显示为“--”表示现在进入了DEBUG状态,然后依次输入“O7010”回车,
“O71FF”回车,最后输入“Q”并再次回车。
如图1-13-6重启计算机以后,BIOS提示出错,按BIOS的热键(一般是“DEL”按键,注意屏幕上一般有提示)进入BIOS设置界面的时候并不要求我们输入密码,说明我们已经破解成功了。
上述方法的含义就是向BIOS中写入代码,迫使BIOS自身校验出错,这样再重启计算机时,会要求进入BIOS重新配置参数,而此过程是不需要密码的。
看来删除DEBUG程序是势在必行了。
如果DEBUG程序被删除怎么办呢?
我们先想办法进入DOS环境(双击运行“c:
\”文件就可以进入DOS状态)。
在DOS状态下,没有DEBUG程序不要紧,还可以自己现场制作个破解BIOS的.com文件,实现对BIOS密码的清除工作。
这听起来是不是很神奇呢?
在DOS环境下输入:
“COPYCONCMOS.COM”(引号不输入,以下同)
后回车,如图1-13-7系统会自动另起一行,我们继续输入以下内容:
“ALT+176ALT+17ALT+230pALT+176ALT+20ALT+230qALT+205<
空格>
”,然后按键盘上的“F6”键,再按回车键保存。
如图1-13-8【注意:
输入以上数据时候先按键盘的ALT按键,再按下数字小键盘区的数字按键,这里不能使用主键盘区的数字按键,输完一段数字松开ALT按键,然后再按下ALT按键输入下一段】最后运行得到的文件如图1-13-9,重新启动计算机BIOS提示出错,就可以不需要密码进入BIOS设置界面啦。
不过有些还原卡在BIOS修改以后,会提示“发现CMOS有修改,是否存储CMOS资料?
”这样
的信息,如图1-13-10那么这块还原卡就不能通过这种方式进行破解了。
看了一些还原卡说明书,也找了一些还原卡资料,我还知道了还原卡一般是有初始化的管理员口令的,部分还原卡的默认密码如下:
小哨兵:
manager,远志:
12345678,三茗:
12345678。
如果网管没有另外设定密码的话,我们就可以输入这些默认密码来控制还原卡了。
如图1-13-11其实很多还原卡还有我们所不知道的超级管理员密码或者是管理员密码清除程序。
这个密码或者程序从生产还原卡的公司宣传材料或者网站上是找不到的。
你要是对某款还原卡发生了兴趣,不妨冒充还原卡的最终用户向此还原卡代理商索取破解办法,相信代理商会有可靠的办法让你满意的。
(这又叫做社会工程学入侵)我
在使用U盘(USB闪存盘)如图1-13-12的时候发现了另外一个绕过还原卡保护功能的方法。
当U盘接在计算机上时,被识别成“移动硬盘”,如图1-13-13还原卡是不保护这上面的数据的,我们可以任意的修改U盘中的数据。
【小知识:
使用USB接口的活动硬盘如图1-13-14也可以突破还原卡保护,我们把QQ聊天记录存放在活动硬盘上,以后到哪家网吧都不会忘记和MM说过的每一句话了;
我们把收集的黑客工具拷贝到活动硬盘,网吧的计算机可能没有软驱、光驱,但主板一般是有USB接口的,这些工具就可以照旧使用!
】还原卡提供保护功能的是卡上面的那块硬件芯片中保存的小程序,它和硬盘的主引导记录MBR协同工作,将系统中断Int13H【小知识:
进制:
H代表16进制,以十六为基数,有十六个符号0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F表示,逢十六进一。
Q代表8进制,以八为基数,有八个符号0,1,2,3,4,5,6,7表示,逢八进
一。
B以二为基数,有两个符号0,1表示,逢二进一。
中断:
程序运行过程中出现了某种紧急事件,必须中指现行程序而去转去执行一个处理该事件的程序,处理完成该事件后再恢复并继续运行原有的程序,这个过程称作中断。
中断向量表:
中断服务程序的起
始地址称为中断入口,将中断程序的入口地址放在一起就组成中断向量表。
】进行底层拦截,这样WIN98引导后使用的就是由还原卡修改过的中断了。
想破解还原卡的保护功能,只要恢复Int13H的BIOS中断向量就可以了,简单过程就是:
找到Int13H的原始BIOS
中断向量值,填入中断向量表【补充知识:
DEBUG命令简单解释:
】命令用途格式汇编语句A[address]显示内存D[address]修改内存Eaddress[lise]执行用任选断点执行G[=address][address…]传送内存块内容Mrangeaddress终止退出DEBUGQ输出发送输出的字节Oportaddressbyte寄存器显示寄存器/标示R[registername]检索检索字符Sranglist跟踪执行并显示T[=address][value]在DOS下运行DEBUG程序:
Debug-a100-xorax,ax-int13-int3然后输入T回车,并不断的重复,直到显示的地址如F000:
xxxx。
记下这个地址,按Q键回车退出。
这里假设出现的第一个F000:
1234就是要使用的。
实际可能是在第2、3、4个才出现,通常认为就是第一个,在(0:
13H*4)=0:
4cH处填入这个地址,运行Debug,输入如下命令-e0:
4c341200f0-q如果在跟踪过程中发现了如下代码:
CMPDL,80(判断是否操作硬盘),可以修改成不存在的硬盘号如:
CMPDL,FF,然后试试硬盘可写吗?
可写的话就OK了。
现在有些较新的还原卡经过上述操作,还是不能写盘,出现操作死机的情况。
一般是因为Int8H、Int1CH、Int15H等中断对Int13H进行了向量保护。
想办法将这些中断修改为原始中断入口地址就可以了。
如果想获得还原卡管理员密码的话,因为有些还原卡的密码是存放在硬盘上某个空闲磁盘空间中的,与还原卡无关,我考虑了以下几个步骤:
1.恢复系统中断向量并读取磁盘的MBR记录信息2.分析MBR,这里建议结合磁盘在安装还原卡前后各扇区数据变化情况3.找到密码存放扇区并破解其加密算法不过我感觉这实在是太深奥了,不是我这种笨脑瓜想明白的,就此作罢了。
网管:
要注意还原卡的安全问题,使用了还原卡固然可以减轻计算机系统维护的工作量,但是使用还原卡的计算机并不是安全得像进了保险箱,针对还原卡的保护和破解,就像矛与盾之争一样。
一方面不断有新的破解技术出现,另一方面也不断的有抵御破解手段的新的还原卡生产出来。
想更好的保护好计算机,那就只有不断的更新手中还原卡的版本,同时,禁止用户进入DOS模式或者干脆删除DEBUG命令也是一个折中的办法。
学生:
还原精灵的破解我今天到另外的一家网吧上网,发现他们的硬盘也是受“还原卡”保护的,重启计算机一切修改都还原了,破解它这还不好办!
我的眼睛就不住地往桌下没扣盖的主机上打量。
却看见这些计算机并没有安装什么插卡,真让我大吃一惊,莫非是用什么软保护措施?
还真让我猜中了。
看就是这个叫“还原精灵”的软件在捣鬼。
我想删除“还原精灵”,在“添加删除程序”中找不到这款软件,在硬盘上也查找不到这款软件的安装文件。
右击任务栏右下角的图标,却被要求输入操作密码。
看来想办法破解此软件的密码,是控制这台计算机的关键。
如果仅仅是因为安装了一个新程序,提示要求重启计算机,那就不要点击“确定”(,选择“以后重启”。
在“开始>
关闭系统”选择“重新启动计算机”注意此时一定要按住键盘shift按键不放,这样计算机将跳过初始化等操作,直接重新加载系统程序,从而绕过了还原精灵的保护。
【以下为cy07添加】如果想长期保存自己的文件,就必须卸掉还原精灵或者取得还原精灵的管理员密码,要卸掉还原精灵其实不难,网上有专门清除还原精灵的程序,可以到它的老家下载,运行以后直接清除,就可以清除还原精灵了,不过需要注意,由于还原精灵是在硬盘最重要的主引导记录MBR(来自网络!
)关于破解还原卡(通用)请大家先看看后面的(可以穿透还原卡和还原软件的代码)
方法一:
开机时(也就是在你曾经进入cmos的时刻),同时按住ctrl+home,这样你就进入了还原卡的密码输入窗口,只要输入正确的密码即可获得admin,以后随你怎样设置.关于是密码的问题:
一般还原卡都有默认密码的,默认密码怎么找,很简单,到网上搜索QQ:
9750406关键词"
还原卡"
就行了,找到你用的那个牌子的还原卡,进入站点,在一个比较偏僻的角落一般可以找到默认密码的.而一般机房管理员是不会修改其默认密码的,比如俺学校的台湾远志牌的还原卡的默认密码是12345678,小哨兵的是manager,机房管理员一个也没改,好爽!
!
不过我可没破坏任何东东,一旦惹怒了俺,嘿嘿....俺也不会破坏的,恶意破坏计算机就是对自己的不尊重!
如果管理员把密码改了呢?
那就拿出宝刀---
方法二:
此法实施过程看起来挺麻烦,不过熟悉了*作起来超不过15秒的-
高手sinister曰:
其实所谓硬盘保护卡就是在ROM中写了一段HOOKINT13的程序,屏蔽了一些功能调用如AH=3,5等,在中断向量表中INT13的SEG,OFFSET描述为[13h*4+2],[13h*4],将此中的程序先保存后,再替换为自己的代码,当你AH=2的时,它便会call原始INT13地址来完成*作.只要找到原始INT13入口便可以为所欲为.不知看了这段感觉如何?
慢慢消化吧.
主要矛盾:
关键是要找到原始的int13入口.
测试*作系统:
win98
测试对象:
台湾远志还原卡
测试地点:
学校机房
测试目的:
控制还原卡,但不破坏.
注:
本篇文章不对其实施过程中出现的任何不可预料的情况负责!
具体过程如下:
开机过程按住F8键,进入纯dos环境,注"
;
"
后为注释.
出现提示符c:
键入c:
\debug,
-a100
-xorax,ax
-int13
-int3
寻找原始的int13入口.
然后输入t回车,不断的重复,直到显示的地址形如F000:
xxxx,后面的指令为:
movdl,80(练练眼力-。
按q退出.记下这一地址,在(0:
4cH处填入这个地址。
例如俺的得到的地址是F000:
9A95
再次运行debug,键入:
-e0:
4c959A00F0;
e的作用将数据表"
959A00f0"
写入地址0:
4c开始的字节中.
-q注:
填的时候要仔细,填错的话会死机。
ok,破解完成.这时在提示符c:
\键入
c:
\win进入win98系统即可,那么这次你在win98系统中的一切*作,随着下一次的启动都会被还原卡存储起来。
不过下一次进入系统的的时候,你还是需要重写地址0:
4c,才可以让还原卡存储你的东东。
这时只需要在纯dos下进入debug,键入
4c959A00F0
-q即可。
哈哈。
。
这样也挺好,只有你才是这台computer的真正的主人-。
别人还是受还原卡的限制的except--you。
下面是找Int13入口的方法,我常用的几种:
1。
手工运行Debug,最好在纯DOS下:
Debug
-xorax,ax注意:
前面要加上功能号以选择Int13H内部的流程,避免进入其他不经过原始入口的流程
记下这一地址,按q回车退出。
这里假设了第一个F000:
xxxx就是要找的入口,实际上可以在第2,3,4,。
出现,要自己判断一下,通常认为就是第一个。
在(0:
例如得到的地址是F000:
1234
运行debug
4c341200F0=======>
把得到的原始入口填入Int13H的中断向量表
-q
填的时候要仔细,填错的话会死机。
有些经过针对性处理的机器,要进一步鉴别。
如在Int13内部调用Int1ch.如果在trace过程中发现如下代码CMPDL,80[意思是判断是否针对硬盘操作],可以尝试修改成不存在的硬盘号,比如改成CMPDL,FF。
其他的都不要修改.
试试 硬盘可写吗?
如果可以的话就万事大吉了。
另外,不能在Windows的虚拟DOS窗口中使用这种方法。
如果在Windows的虚拟DOS窗口运行的话,请使用下一种方法。
2。
Debug-sF000:
0ffff80fa80强行搜索BIOS区,通过比较入口代码找到原始入口点你可能会发现有好几处。
根据我的多次破解经验,通常这个地址在F000:
8000以后。
试验一下:
如果UF000:
xxxx地址后发现代码类似-uF000:
xxxx
PUSHF
CMPDL,80
JZ....
我曾经发现经过以上中断还原后,仍不能写盘,或者死机的情况。
经跟踪发现Int8H,Int1CH,Int15H等向量对Int13H进行了向量保护。
解决办法:
把Int8H,Int1cH,Int15H也改会原始中断点(也是BIOS中断)。
尝试写盘成功
如果想获得保护卡密码的话,可以参考以下步骤:
找到Int13h原始点设回中断向量表。
读出MBR
3,分析读出的MBR,找到密码算区和加密算法
4,推算出密码
可以穿透还原卡和还原软件的代码
一、虚拟还原技术的原理
本文所说的是一种普遍运用于还原卡或还原软件上的技术,当然,不同品牌不同厂商生产的可能不尽相同,但原理却是相通的。
首先,还原卡和还原软件会抢先夺取引导权,将原来的0头0道1扇保存在一个其他的扇区,(具体备份到那个扇区是不一定的),将自己的代码写入0头0道1扇,从而能在操作系统之前得到执行权,这一点类似于一个引导型病毒;
然后,我们来看看虚拟还原技术在操作系统之前都做了些什么:
1.将中断向量表中的INT13H的入口地址保存;
2.把自己用于代替INT13H的代码写入内存,并记住入口地址,当然这种“写入内存”并不是普通的“写”,而是一种我们称为“常驻”的方法,有关“常驻程序”的实现方法我们不另外花篇幅来描述了,如果你还不了解的话请自己找有关资料,也可以找风般的男人交流;
3.将中断向量表中INT13H的入口地址改为这段常驻程序的入口地址。
补充一点,虚拟还原程序在修改INT13H的入口后往往都会修改一些其他中断入口,当然也是通过常驻程序来实现的,这些中断用来实现对中断向量表中INT13H入口地址监控,一旦发现被修改,就马上把它改回,这样做同样是用来防止被有心人破解。
好了,你已经看出来了,这段用来替代BIOS提供的INT13H的代码才是虚拟还原技术的关键,那么这段代码到底实现了些什么了,以下是本人对此拙浅的理解:
1.拦截所有INT13H中对硬盘0头0道1扇的操作
这些包括读写操作,把所有的对0头0道1扇的操作改为对虚拟还原程序备份的那个扇区的操作,这样做的目的是保护虚拟还原代码不被破坏,并且不能被有心人读出进行破解,即使你用扇区编辑工具查看主引导区,实际上你看到的是这个备份的主引导区。
2.拦截所有INT13H中的写硬盘操作
这里包括对8G以下的硬盘的普通通过磁头、磁道、扇区定位的INT13H中的写操作,和扩展INT13H中基于扇区地址方式的对大硬盘的写操作,甚至包括扩展INT13H中对一些非IDE接口的硬盘的写操作。
至于拦截后做什么是虚拟还原技术实现的关键,在早期的DOS系统当中完全可以“什么都不做”,也就是说当用户写硬盘时实际上是什么都没做,但现在的操作系统都要对硬盘进行一些必要的写操作,比如对虚拟内存的写操作。
众所周知,虚拟内存实际上就是硬盘,而如果禁止操作系统写硬盘的话显然后果是不堪设想的。
所以,大多数虚拟还原厂商用的方法是占用一些硬盘空间,把硬盘所进行的写操作做一个记录,等系统重新启动后还原这一记录,但是怎样科学记录硬盘的写操作,是我一直没想通的问题,这种“科学”应该体现在时间上和硬盘空间的占用量上的,也就是说怎么样用最少的时间和最少的硬盘空间来记录硬盘的写操作是实现关键,如果有这方面想法的朋友欢迎和我交流;
3.备份端口70H,71H中的内容,并把最后一次执行时端口70H,71H的内容和备份的内容做比较,不一样就提示BIOS被修改,是否还原,并通过密码验证修改BIOS是否合法。
二、PC机的中断机制
中断提供了最基本的硬件和软件的接口,它使得程序员不必了解硬件系统的细节,只要直接调用系统提供的中断服务子程序,就可以完成相应功能,这样能使得程序设计更为方便。
其实现机制如下:
当某一中断源发出中断请求时,CPU能够决定是否响应这一中断请求(当CPU在执行更为重要的工作时,可以暂不响应),如果允许响应该中断,CPU会在现行的指令执行完后,把断点处的下一条指令地址和各寄存器的内容和标志位的状态,推入堆栈进行保护,然后转到中断源服务程序的入口,进行中断处理,当中断处理完成后,再恢复被保留的各寄存器、标志位状态和指令指针,使CPU返回断点,继续执行下一条指令。
为了区别各个中断,CPC系统给每个中断都分配了一个中断号N,比如INT3H是断点中断,INT10H是显示中断,我们今天要讨论的主要是INT13H磁盘读写中断。
要说清楚PC机上的中断机制,用这一点篇幅是完全不够的,这里我所说的只是一个大概,如果你不清楚的话,请查阅一些资料或和我交流,我们今天重要要说的就是以INT13H为例看看BIOS提供给我们的中断到底都是在做什么?
所谓BIOS中断简单说就是你机器上的BIOS提供的中断,那么在BIOS中断的后面,到底是些什么呢?
实际上是一些对端口的输入输出操作,PC的每个端口都实现特定的功能,我们完全可以不调用BIOS提供的中断而直接用输入输出指令对这些端口进行操作,从而可以实现象调用BIOS中断一样的功能,但是一个前提是你必须对这些端口有详细的了解。
反过来说,PC的中断系统的一大好处就是能够让程序员无须了解系统底层的硬件知识的而能够编程,从这点看,中断有点象我们平时所说的“封装”,我不知道这样说对不对,但的确中断为我们“封装”了许多系统底层的细节。
三、硬盘读写端口的具体含义
对硬盘进行操作的常用端口是1f0h~1f7h号端口,各端口含义如下:
端口号读还是写具体含义
1F0H读/写用来传送读/写的数据(其内容是正在传输的一个字节的数据)
1F1H读用来读取错误码
1F2H读/写用来放入要读写的扇区数量
1F3H读/写用来放入要读写的扇区号码
1F4H读/写用来存放读写柱面的低8位字节
1F5H读/写用来存放读写柱面的高2位字节(其高6位恒为0)
1F6H读/写用来存放要读/写的磁盘号及磁头号
第7位恒为1
第6位恒为0
第5位恒为1
第4位为0代表第一块硬盘、为1代表第二块硬盘
第3~0位用来存放要读/写的磁头号
1f7H读用来存放读操作后的状态
第7位控制器忙碌
第6位磁盘驱动器准备好了
第5位写入错误
第4位搜索完成
第3位为1时扇区缓冲区没有准备好
第2位是否正确读取磁盘数据
第1位磁盘每转一周将此位设为1,
第0位之前的命令因发生错误而结束
写该位端口为命令端口,用来发出指定命令
为50h格式化磁道
为20h尝试读取扇区
为21h无须验证扇区是否准备好而直接读扇区
为22h尝试读取长扇区(用于早期的硬盘,每扇可能不是512字节,而是128字节到1024之间的值)
为23h无须验证扇区是否准备好而直接读长扇区
为30h尝试写扇区
为3