修改SoftIce使其在2000/xp 修改SoftIce使其在2000/xp下躲過檢測 方法來自這裡http://www.woodmann.com/upload/showthread.php?s=&threadid=1806 在這裡我想說說自己的一點修改經驗,其實基本上和上面的帖子所說的內容相同。只是附加一點自己的解釋為了在2000/xp下躲 過對SoftIce的檢測,我們需要修改三個文件。其中NTICE.SYS和SIWVID.SYS位於%windir%/system32/drivers目錄 下。NMTRANS.DLL位於SI的安裝目錄首先,我們要明白在2000/xp下有哪些手法來檢測SoftIce,最見的方法就是用CreateFileA的 方式來檢測NTICE和SIWVIDSTART的存在,這是2000/xp下開啟設備驅動的方法。還有就是利用INT 1和INT 3的方式和GF....MJ 檢查。在這,我們只說怎麼躲過這些方法的監測。至於反單步跟蹤,那需要你自己的調試技巧,不在本文範圍之類。 以下是如何修改那三個文件,讓我們的SoftIce具有anti detect功能。 提醒!! 兩個驅動文件NTICE.SYS和SIWVID.SYS被修改後一定要修正其效驗和checksum,這個可以使用lordpe完成。否則系統啟動將失敗! NTICE.SYS的修改 1.搜尋GFu*f串,修改為XFu*f,其後的MJ修改為XJ <其實隨便修改成什麼都可以> 2.搜尋所有的Unicode字元串\NTICE,修改為\XTICE <躲過NTICE檢測,注意前後一致> 3.搜尋Unicode字元串Bchkd,修改為Xchkd <躲過SoftIce的Boundscheck後門檢測> 4.搜尋字元串\Driver\NTice,修改為\Driver\XTice 5.搜尋Kernel32!UnhandledExceptionFilter,修改為user32!MessageBoxExW <這個是我的 修改方法,必須注意的是這樣做了後,SoftIce的Faults On將失效。可以躲過一些INT 3檢測,自己選擇要不要修改吧> SIWVID.SYS的修改 1.搜尋所有的Unicode字元串\SiwvidSTART,修改為\XiwvidSTART <嗯嗯,躲過SIWVIDSTART檢測> NMTRANS.DLL的修改 1.搜尋字元串\\.\NTICE,修改為\\.\XTICE至此我們所作的都已經做完。再次提醒一定要修正NTICE.SYS和SIWVID.SYS的效驗和! 經過上面的處理後,你的SoftIce的anti detect將大大加強。但是仍然躲不過INT 1的檢測方法。 躲過INT 1檢測SoftIce的方法如下: 在SoftICE裡鍵入IDT指令,我們將獲得IDTBase的值。在我的XP下總是8003F400。 然後d IDTBase,可以看到偏移為0DH處的字符是EE,我們將其修改為8E即可躲過INT 1的檢測 。 XP下的可以在SoftIce的啟動執行的指令裡加上eb 8003F40D 8E,這樣每次SI啟動就自動具有了anti INT 1檢測的功能。別的系統的 話請多起啟動確認一下是否是固定的位。 如果不是,你只有每次手動修改了。 |