近来发觉自己的软件被人破,心中甚是恼火,恼火当初没花时间在反破解上。
反正鄙人尽量琢磨了点驱动东东,心想加上点RING0的看你小样去破去。
这样吧,弄点狠的,如果有看官,也帮我琢磨下可行性。
1、启动方式上面,采用牺牲程序的方式,由加载(牺牲)程序做好初始化,包括:驱动加载,调试器检测,一旦通过立即和驱动通讯,由驱动解密牺牲程序中封装的资源,然后由驱动执行程序。
2、驱动内部采用投APC到EXPLORER的方式执行程序。真正的程序代码已经VMP化,嵌套深度达3层
3、通讯认证内部采用TDI或者NDIS,和认证主机通讯。通讯数据加密方式VMP化,嵌套深度达9层,并且分3阶段加密
4、到这一步,本地认证的破解几乎不大可能,但面对DUMP代码,只得做一些方面的内部HOOK,防止DUMP
初步估算了下,按照目前的技术水平,不是不可能做出来,不过得花大量的时间。