有關今天的課程投影片
網頁上還是舊版的
新的可以從這邊下載
http://wyday.csie.ntu.edu.tw/Assignment_4_Introduction.pdf
另外今天同學問了兩個比較大的問題:
1. 為何執行helloworld後 前五個byte不會被改掉? (還是保留原來的mark)
這是因為跳到virus執行的時候所recover原來程式的部分
是recover到記憶體位置
也就是原先已經把程式load到記憶體 recover也是改記憶體上的東西
所以檔案不會改
但是感染別人的時候寫jmp跟mark是真的寫在檔案上
2. 有關中斷(int 21h)等function
我查了一下 大家可以參考 http://0rz.tw/2159s
可能會用到的有:
09h write string
4Eh 第一次讀到的.COM檔
3Fh 讀檔
40h 寫東西到檔案
42h 移到檔案的pointer
大概就是這樣
有任何問題歡迎寄信給我~~
大家加油囉
ASM TA