
【讨论】一个新的软件保护技术的思路的探讨!
本人有一个这方面的思路,发给各位研究研究。
我认为软件要破解,哪怕再简单,走的路无非是静态反汇编,或动态调试这两条路。
1. 静态反汇编:用StarForce里的方法,就是将要执行的函数代码加密,在执行时再进行解密。造成理论上的绝杀。
2. 动态调试:由于任何一个调试器程序要调试某个进程,必须先要附加到该进程,根据我的试验,一个进程只能有一个调试器附加,如果我用visual studio 2005附加到计算器calc.exe的进程,那么OllyDBG就无法附加到该进程了。根据这个事实,我可以制作一个保护程序,用这个保护程序以调试模式启动另一个进程,然后让另一个进程执行,由于这个进程是处于“被调试”状态的,那么任何调试器就无法附加到该进程,也就谈不上调试他了。
以上两种方法可以混合使用,甚至上保护进程和被保护进程两者相互牵制,相互保护,甚至可以使其中一个程序关闭的同时让另一个程序也关闭,达到杜绝被静态和动态破解的目的。
以上就是我有关软件保护技术的一个思路,发下来给大家看看,这种方法有没有理论上的破解思路,最重要的是,这第二条的理论有没有问题,请各路高手们不吝赐教。谢谢!