廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 4443 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
upside 手機 葫蘆墩家族
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎 社區建設獎 優秀管理員勳章
頭銜:反病毒 反詐騙 反虐犬   反病毒 反詐騙 反虐犬  
版主
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 x0
[asm][範例] HDVIRUS 防爆牆防護程式 V1.00
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 ..

訪客只能看到部份內容,免費 加入會員 或由臉書 Google 可以看到全部內容




爸爸 你一路好走
獻花 x0 回到頂端 [樓 主] From:臺灣 | Posted:2006-12-09 18:23 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.021707 second(s),query:15 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言