用时间差反跟踪
概述:
如果关掉中断,不仅仅是键盘不动了,时钟也不会走,所以可以利用时间差来反跟踪,具体方法是:先关掉中断, 再用当前时间作 key 加密,在执行一大堆指令后,偷偷地再用当前时间解密, 如果为了解密跳过关中断指令, 时间就会变化, 解密结果就会不对,然后...当然是死机啦 !
汇编编程示例:
code segment
assume cs:code,ds:code
org 100h
start:
jmp install
d1 db 'OK, passed ...',0dh,0ah,24h
install:
xor ax,ax
mov es,ax
mov ax,es:[046ch] ;系统时间计数
xor word ptr _code,ax ;把 _CODE 处的指令加密
mov ah,0ffh
in al,21h
xchg ah,al
out 21h,al ;关掉中断,并保存原中断开关情况到 AH
mov cx,100 ;这儿是延时语句,模拟其他程序的执行时间
lop1:
push cx
xor cx,cx
lop2:
loop lop2
pop cx
loop lop1
mov bx,es:[046ch] ;再把时间取回来解密
xor word ptr _code,bx
xchg ah,al ;记得把中断复原
out 21h,al
_code:
nop
nop
mov ah,9
mov dx,offset d1
int 21h
int 20h
code ends
end start
(出处:赢政天下整理收藏)
相关资讯:
相关软件:
→ 特别推荐
→ 热点TOP10
我为人人《《==》》人人为我
关于我们 |
帮助(?)
| 广告服务 |
版权声明 |
商业合作 |
发展历程 |
加盟我们 |
联系我们
Copyright © 1998-2003
winzheng.com All Rights Reserved.
繁体版:由华琦数码技术提供
Powered
by:MeSky.Net
当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。