# 检测内存中的 Soft-Ice

**URL:** <https://perak.org/t/%E6%A3%80%E6%B5%8B%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84-soft-ice/60156>\
**Category:** 程序设计\
**Created:** [2006 年8 月 18 日 02:34 UTC](https://perak.org/t/%E6%A3%80%E6%B5%8B%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84-soft-ice/60156 "2006-08-18T02:34:14Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

作者： ![microsys](https://perak.org/letter_avatar_proxy/v4/letter/m/d26b3c/32.png) [@microsys](https://perak.org/u/microsys)\
发布日期： [2006 年8 月 18 日 02:34 UTC](https://perak.org/t/%E6%A3%80%E6%B5%8B%E5%86%85%E5%AD%98%E4%B8%AD%E7%9A%84-soft-ice/60156/1 "2006-08-18T02:34:14Z")

</div>

概述：

有 Soft-ICE 在内存中可不大好玩，以下指令是检测 Soft-ICE 的，不要问为什么，这些都是 Soft-ICE 自己检测自己用的。

汇编编程示例：

code segment  
assume cs:code,ds:code  
org 100h  
start:  
mov ax,0911h ;exit command  
mov dx,offset d\_exit  
mov si,4647h  
mov di,4a4dh  
int 3

xor ax,ax ;check s-ice  
mov si,4746h  
mov di,4a4dh  
int 3  
cmp si,4647h  
jz found\_sice

xor ax,ax ;check s-ice  
mov si,4647h  
mov di,4a4dh  
int 3  
cmp si,4647h  
jnz found\_sice

mov ah,9  
mov dx,offset d\_ok  
int 21h  
int 20h  
found\_sice:  
mov ah,9  
mov dx,offset d\_sice  
int 21h  
int 20h

d\_ok db ‘OK, passed…’,0dh,0ah,24h  
d\_sice db ‘I found S-ICE in memory, so Bye-bye !’,0dh,0ah,24h  
d\_exit db ‘exit’,0dh,0

code ends  
end start
