最近一直學(xué)習(xí)DotNet相關(guān)資料,sscli真是好東西啊:P。
一邊學(xué)習(xí)一邊把知識(shí)綜合了一下,做了這個(gè)小工具。
保護(hù)原理和國(guó)人的remotesoft,maxtocode差不多。加密后的程序發(fā)布時(shí)也需要附帶一個(gè)運(yùn)行庫(kù),
不過(guò)和那兩個(gè)不同,附帶的運(yùn)行庫(kù)不是純native的dll,而是C++/CLI的混合程序集。
工具已經(jīng)有了雛形,整體內(nèi)核框架完成了。用來(lái)加密了一個(gè)sample,運(yùn)行正常。
有些方面甚至超過(guò)了maxtocode。
1.不依賴微軟的ildasm和ilasm程序。
IL反匯編和IL匯編都程序?qū)崿F(xiàn)。
可以加密包含本地代碼的程序集。
2.Anti反編譯工具,maxtocode加密的程序集無(wú)法用reflector直接查看,但是程序運(yùn)行后用pedumper,dump后就可以用reflecotr查看結(jié)構(gòu)了,當(dāng)然還是看不到代碼的。
dnguard加密的程序集比我預(yù)期的效果還要好,加密后的程序集無(wú)法用reflector查看,dump后的也無(wú)法用reflector插件。
感覺(jué)reflector還是有些弱,同類軟件Disa#, Xenocode fox 就可以直接打開(kāi)查看maxtocode和dnguard加密的程序集。
為此我嘗試在dnguard加密的程序集里面增加了結(jié)構(gòu)混淆,有一點(diǎn)效果,就是在Disa#和 fox里面查看結(jié)構(gòu)是會(huì)出現(xiàn)一些張冠李戴的混亂,即類A的函數(shù)可能會(huì)顯示到類B中。效果還不是很好,會(huì)出現(xiàn)問(wèn)題的函數(shù)每個(gè)類只有很少的幾個(gè)。
3.Anti .Net 2.0的新特性,不是很強(qiáng),強(qiáng)度和maxtocode 3.13(內(nèi)部版)差不多,聽(tīng)說(shuō)maxtocode出了3.14了,不知道強(qiáng)度是否有增強(qiáng)(看Jason的blog里的回復(fù)似乎和3.13是一樣的)。max的3.12patch幾個(gè)字節(jié),反射就可以用了,3.13也差不太多,需要patch的字節(jié)數(shù)比3.12還要少。
關(guān)于這個(gè)方面現(xiàn)在有一個(gè)比較好的方案,能夠在不影響效率的前提下使強(qiáng)度提高很多。但也不能完全防dump。
還有一個(gè)比較完美的防dump的方案,需要配合另一項(xiàng)保護(hù)技術(shù)一起才能實(shí)現(xiàn)。
這個(gè)方面不打算再深入探討了,等DNGuard加密殼完成后,會(huì)著手另一項(xiàng)保護(hù)技術(shù),最后將兩項(xiàng)保護(hù)合在一起。
4. Anti dump后用ildasm,ilasm恢復(fù)程序集。DNGuard除了anti .net 2.0的新特性防dump外,還增加了anti,我早期做的dumper。另外還利用C++/CLI混合程序集的特性實(shí)現(xiàn)了,防dump后ildasm。不過(guò)這個(gè)強(qiáng)度不大,對(duì)小程序集能被很容易修復(fù)后實(shí)現(xiàn)il匯編。
現(xiàn)在需要做的工作還有很多,加密算法還沒(méi)有弄,運(yùn)行庫(kù)自身的保護(hù)也還沒(méi)有做。發(fā)現(xiàn)純native的dll可以找到現(xiàn)成的保護(hù)工具,就thmida很不錯(cuò),maxtocode的運(yùn)行庫(kù)就有用這個(gè)殼,C++/CLI的dll就一直找不到好的方法。看來(lái)只能手動(dòng)加一層保護(hù)了,已經(jīng)開(kāi)始著手試驗(yàn)了。現(xiàn)在準(zhǔn)備加一個(gè)簡(jiǎn)單的加密殼,等這個(gè)做完后就把DNGuard放一個(gè)demo上來(lái)。
DNGuard加密程序集后用reflector查看:
DNGuard加密程序集dump后用reflector查看:
Maxtocode加密后的程序集用Reflector查看:
Maxtocode加密程序集Dump后用Reflector查看:
http://www.survivalescaperooms.com/rick/archive/2006/11/20/566704.html
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注