您的位置:首页 > 编程语言

外挂制作--------过NP技术渐渐

2011-07-29 09:54 246 查看
 想想你要对付的是什么。你自己连NP都绕不过,至少目前是这样,而做那个外挂的人,能绕过NP,能做自解压或者以你的描述来说,能做到PEID查不出的壳,等等,以他的技术做出来的东西,我觉得以你目前的水平没那么容易就搞定的。虽然历史上也有过小米加步枪打赢飞机大炮的例子。当然我不怀疑你的热情,但还要再努力才能开始你这个大工程,还要去学习和实践很多东西之后才行。

按你上面提供这些不是很详细的情况来说,也许我来研究这个可能比你要容易得多,不过我也不敢保证我一定能破解得了,并且我现在确实没时间研究这种东西,工作太忙了,而且现在我的机子上都好久没装MXD了。但如果你在研究的过程遇到什么需要技术上的帮助的,我还是很乐意帮你。

给你一点建议:
一,搞清楚人家是用什么编程语言写的。
二,用EXESCOPE看看DLL里面有哪些EXPORT函数
三,有可能的话,把所有你感兴趣的程序反汇编一下,并努力读懂它们,这样很有帮助
=============================================================================
具体对于NP来说,我从来都没有觉得它是破解不了的,理论上来说世界上不管什么程序,只要CPU能运行的,理论上就不可能是不可破解的,任何程序要让CPU能正确执行就要让CPU读懂,要让CPU读懂理论上就能让反汇编工具把它变成汇编代码,这样理论上就完全可以读懂它每一句都在做什么,理论上就能破解。但问题是,一方面,有时一个简单的小软件反汇编出来就几十万行,就算你不求理解地读一遍可能都要花你好几个月的时间,更何况要完全读懂每一句,要花费的时间就更长。而且反汇编的技术和对付反汇编的技术,其实就和病毒和杀毒软件一样都在发展,开发软件的人总在想新的方法来干扰当前市面上的反汇编工具,让它不能正确反汇编,于是反汇编工具不得不又再改进,然后对抗反汇编的技术又再改进,,,而动态跟踪和反动态跟踪的技术也一样,都在不断的改进以战胜对方,所以有时利用现有的技术和工具并要对一个手段高明的程序进行反汇编和解读确实就困难重重
===============================================================================
一,花三至五年熟悉汇编语言和反汇编及动态跟踪工具的使用,并且拿些简单的软件来做破解,二,花三五个月分析NP的反汇编(如果能反汇编出来的话),三,再花三五个月动态跟踪NP,不过之前还要先想办法怎样躲过NP的反动态跟踪。四,然后有个初步的方案,再花几个月去测试你的方案是否成功,如果不成功,再转到第一步。
以上是说一般人的情况,当然也许上面说的你早就已经做过了,或者别人要花几年的时间去研究的东西你只要一个钟头就能弄懂弄熟,那么也许你只要花几分钟就能搞定。
======================================================================
我们平时说的汇编和反汇编,是互相有关系但性质不同的两件事。

汇编一般是指一种语言,叫ASSEMBLE,简称ASM,早期在编程语言不发达的时候,程序员要直接写机器码指令,一般都是二进制数字,这样不容易记忆,也不容易读懂,而且在不同CPU类型的电脑上要移植也很困难,因为机器码指令都是以CPU为基础的,不同的CPU,执行同一操作的机器码指令可能是不同的。所以后来发展成用汇编语言助记符,例如MOV,ADD,CMP,JMP,JZ,JNZ等来标记那些机器码指令,也可以用这些助记符来编写程序,然后再由编译程序把这些助记符根据具体的CPU类型编译为真正的机器码指令。可以说,汇编助记符和真正CPU能接受的机器码是完全等价的,同一助记符理论上一定等于某一条机器码指令,反过来说同一条机器码指令也一定等同于一条助记符。所以这也是为什么要分析程序的人要能看懂汇编的道理,因为一个程序只要CPU能执行,理论上就能把它转换成等价的汇编助记符,而我们能看懂汇编了,就能根据这些助记符而知道程序在哪一步做了什么。而这个把机器码转换为汇编助记符的过程就是反汇编。

所以,汇编是一种编程语言,并且以现在的情况来说,直接用汇编写程序的人比较少了,但它在对程序的分析上仍然有很大的用途,因为只要是CPU能读懂和执行的我们都能把它转换成汇编助记符让人类能读懂。

而反汇编是一个过程,是把机器码转换成汇编助记符的过程。

所以说它们是互相有关联但又性质不同的两个东西,一个是语言,一个是一种过程。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息