• 标 题:关于在DOS下可执行文件中装入或执行一些程序 (2千字)
  • 作 者:asmboy[BCG]
  • 时 间:2001-10-25 10:18:21
  • 链 接:http://bbs.pediy.com

关于在DOS下可执行文件中装入或执行一些程序
--------------------------------------------------------
    今天给大家讲讲一些初级的DOS汇编吧,一些网友问我怎么在可执行文件
中再装入或执行一些程序,也就是怎么拦截DOS的下程序再装入或执行一些可
执行文件。
   

AsmBoy[BCG]
Mail:asmboy@263.net
QQ:384772

难度级别:初级:)


所需工具:

TR 2.52
汇编知识

其实在DOS下拦一些程序是否再次装入或执行一些文件,一般情况下都是用到
DOS 21中断的4B功能。下面我先讲讲21中断4B的一些用法。

中断21H
功能调用号4BH
AL=指出程序是否仅装入内存或程序装入后且执行,0为装入后并执行,1为装入后不执行

DS:DX 指向包括要装入或执行的驱动器、路径和程序文件名

ES:BX 指向程序执行的参数区

下面我们来看一个实列
启动TR 并装入要拦断的可执行文件
下断点bpint 21 AX=4B00 用G执行程序,被断下

MOV      [CS:0F35],BX        ;2A4B:1966  2E891E350F
MOV      BX,0F29            ;2A4B:196B  BB290F            ;BX为程序执行的参数区 
MOV      DX,158A            ;2A4B:196E  BA8A15            ;DX为要执行程序的路径和文件名
MOV      AX,4B00            ;2A4B:1971  B8004B            ;AH=4B00指装入程序后且执行
MOV      [CS:16DE],SP        ;2A4B:1974  2E8926DE16
MOV      [CS:16E0],SS        ;2A4B:1979  2E8C16E016
CLI                          ;2A4B:197E  FA
MOV      SP,CS              ;2A4B:197F  8CCC
MOV      SS,SP              ;2A4B:1981  8ED4
MOV      SP,18F2            ;2A4B:1983  BCF218
STI                          ;2A4B:1986  FB
INT      21                  ;2A4B:1987  CD21            ;开始装载和执行程序
MOV      [BYTE CS:15DC],00  ;2A4B:1989  2EC606DC1500
JAE      1995                ;2A4B:198F  7304            ; 看装载或执行是否成功
MOV      [CS:15DC],AL        ;2A4B:1991  2EA2DC15
CLI                          ;2A4B:1995  FA
MOV      SP,CS              ;2A4B:1996  8CCC
MOV      SS,SP              ;2A4B:1998  8ED4
MOV      SP,18F2            ;2A4B:199A  BCF218
STI                          ;2A4B:199D  FB
       
如果有什么不懂可以问我,帮助别人是我最大的快乐,所谓助人为快乐之本!:)

                                        Crack by AsmBoy[BCG]  Mail:asmboy@263.net QQ:384772