HDVIRUS 防爆牆防護程式 V1.00

Home Home
引用 | 編輯 upside
2006-12-09 18:23
樓主
推文 x0
HDVIRUS 防爆牆防護程式 V1.00

此軟體 僅用於 DOS 之下
設計的理念是不可寫入任何程式到硬碟磁區 以達到保護的效果

.MODEL SMALL
.286
.STACK
.CODE
;───────────────────────────────────────
MyPSP dw ? ; 本程式在執行時的PSP節段值
IntSP dw ? ; 被中斷程式的SP值
IntSS dw ? ; 被中斷程式的SS值
Sys13hoff dw ? ; 原來的磁碟機中斷
Sys13hseg dw ?
Signature db 'PROTECTHD$' ; 這個字串被用來作為是識別字串
; 在檢查程式是否已經常駐時有意義
;───────────────────────────────────────
ActiveHDD PROC far ; 這段程式用來掛在13h中斷下
test dl,080h ; 是否想動硬碟機的主意
; 因為硬碟機的編號必然是
; 80H、81H,因此測試 DL
; 的最高位元 bit 7
jz TO13h ; bit 7 為零表示是軟碟機
; 所以將控制權交給 BIOS
IsHardDisk:
cmp ah,3 ; 是否想寫入磁區
je possible
cmp ah,5 ; 想格式化硬碟?
je say_error
jmp TO13h
possible:
cmp cx,1 ; 想修改分割表?
jne TO13h
cmp dh,0
jne TO13h
say_error:
mov ah,3 ; 設定「磁碟機防寫保護」
; 的錯誤碼
push bp ; 建立堆疊框架
mov bp,sp

or word ptr ,1 ; 使得中斷結束後
; 進位旗標 CF ..

訪客只能看到部份內容,免費 加入會員



獻花 x0