“病毒免疫器”用于給可執(zhí)行文件增加一個(gè)病毒免疫頭,當(dāng)文件被非法修改后,允許自動(dòng)進(jìn)行文件修復(fù)。
軟件支持大量的自定義動(dòng)作和提示信息,支持注冊(cè)表查詢功能,可供軟件開(kāi)發(fā)人員使用,也可供一般用戶使用。
工作原理
1) 使用病毒免疫器在可執(zhí)行文件中增加一個(gè)新的代碼節(jié)(Section),新節(jié)中除了文件檢驗(yàn)代碼,還保存了原始文件的CRC32校驗(yàn)值、原代碼入口、原文件長(zhǎng)度及附加參數(shù)等數(shù)據(jù)。
2) 通過(guò)修改程序PE頭,使程序在執(zhí)行時(shí)先執(zhí)行免疫頭代碼,如果免疫時(shí)設(shè)置了檢查注冊(cè)表功能,免疫頭先查詢注冊(cè)表確定是否進(jìn)行文件校驗(yàn)。如果允許檢驗(yàn),打開(kāi)程序文件,先比較長(zhǎng)度,再計(jì)算文件CRC32值,使用CRC32校驗(yàn)可以保
證,如果運(yùn)行的程序和免疫時(shí)的程序有任何一bit不同,校驗(yàn)結(jié)果都不相同。
3) 如果檢驗(yàn)通過(guò),且免疫時(shí)選擇了允許自動(dòng)修復(fù),免疫頭自動(dòng)根據(jù)用戶免疫時(shí)指定的路徑和文件名產(chǎn)生程序備份文件,備份文件內(nèi)也帶有CRC32校驗(yàn)數(shù)據(jù)。
4) 如果檢驗(yàn)失敗,根據(jù)設(shè)置進(jìn)行自動(dòng)修復(fù)或提示錯(cuò)誤退出。在對(duì)備份文件進(jìn)行CRC32校驗(yàn)通過(guò)后,自動(dòng)修復(fù)功能首先在系統(tǒng)臨時(shí)目錄中產(chǎn)生一個(gè)僅3K的自動(dòng)修復(fù)程序,以程序名和備份文件名做參數(shù),運(yùn)行該修復(fù)程序,修復(fù)程序自動(dòng)
用備份文件中的數(shù)據(jù)恢復(fù)應(yīng)用程序,實(shí)現(xiàn)自修復(fù)。修復(fù)工具在下一次運(yùn)行程序時(shí)自動(dòng)刪除。
5) 如果校驗(yàn)正常或不能修復(fù)或用戶選擇了繼續(xù)執(zhí)行,則跳到原程序啟動(dòng)代碼運(yùn)行。
軟件說(shuō)明
1) 在理論上,使用本工具可以檢測(cè)任何對(duì)應(yīng)用程序的非法修改,可以發(fā)現(xiàn)未知病毒。但如果新的病毒針對(duì)這個(gè)工具寫了特別的代碼,免疫頭可能會(huì)失效。
2) 用戶在免疫設(shè)置時(shí)輸入的信息經(jīng)過(guò)xor加密保存在應(yīng)用程序中,這些信息也是受CRC32校驗(yàn)保護(hù)的(文件中每一個(gè)字節(jié)除了原始校驗(yàn)值都受CRC32保護(hù))。
3) 作者不建議軟件開(kāi)發(fā)人員使用這個(gè)工具來(lái)防止軟件被破解,在有經(jīng)驗(yàn)的Cracker眼里,這個(gè)免疫頭的防護(hù)力是脆弱的。
4) 這個(gè)工具是免費(fèi)開(kāi)放源碼的,感興趣的朋友可以到作者的主頁(yè)下載或向作者索取它的源碼,編寫自己的保護(hù)程序。
5) 軟件不支持自解壓文件、安裝程序文件、Flash動(dòng)畫程序等特殊程序,請(qǐng)?jiān)诿庖吆髮?duì)軟件測(cè)試以避免異常錯(cuò)誤。
6) 程序暫不提供取消免疫功能,有經(jīng)驗(yàn)的程序員在看完源碼后可自行編寫功能代碼。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版