所有程序都能反编译吗
A. 对于一个已经编程好的程序,是否可以对他进行反编程
当然可以, 上网搜,可以搜到大把反编译器, 这样可以把别人做好的应用程序反编译成程序代码,从而进行分析。
以java为例,java代码写好后,编译并打包成 .jar 可运行文件(相当于.exe)。这时可以上网找到比如“小颖反编译器”之类的工具进行反编,这样又可以把.jar反编成一堆原始的java代码。
由于有这个问题,所以程序员们为了防止自己的工作成果被人抄袭后来就产生了混洧器, 利用混洧器可以将jar文件中的资源进行混洧,这样虽然可以将.jar还原成源代码,但现在的源代码被随机地打乱了,很难看懂,基本不具备可读性。
当然有矛就有盾, 再历害的混淆器也有历害的反编器来破解它。
就像病毒和杀毒软件一样相生相克
B. .NET下所有语言都可以轻松被反编译吗
JVM和CLR下面的所有语言都是先编译为字节码的,相对于传统的C++,容易被反编译容易被反编译的不仅仅是C#,还有Java,F#,VB.net,事实上,C#已经可以通过native编译直接生成机器码运行了(.net native技术)这样一定程度上可以提高反编译的难度
C. 编译好的可执行程序有什么办法能反编译成代码
除了java程序,想反编译成原来的代码几乎不可能
你只能把它们反编译成汇编代码
如果是C/C++编写的程序,可以用Spy++跟踪到里面的函数
不过也跟踪不到具体的代码
D. 任何程序都可以反编译吗为什么有一些程序不可以反编译
javap是用作反编译的,但是javap只能给出你要反编译的class的结构,比如有什么方法,有什么static或者非static的变量什么,但不可能产生源代码编译后的文件不是原代码文件,所以不能直接拿来编译。希望楼主采纳
E. 反编译exe文件就是把exe还原为汇编
NO1. 反编译exe程序 就是 把 exe 还原为汇编语言吗? 除了 还原为 汇编语言,还能 反编译为 其他高级语言吗? 比如 c c++ java 等.
1. 简单的说就是用工具打开exe文件会出现汇编代码。不能。这是反汇编的工作就是看着汇编代码用别的语言来实现。
NO2. 是不是所有exe 程序 都 可以 反编译 为 汇编语言?
2. 理论上说是的,不过有的程序加了壳,这样就要先脱壳这是破解的知识,他们为了保护自己的软件防止盗版。
(不是多有的exe都能用od打开的,你可以看看破解的相关知识。去看雪就行)
NO3. 推荐一款 把 exe 程序 反编译为 汇编语言 的 软件。 要求 兼容 windows vista home basic 本人是 有一丁点 汇编基础 的 菜鸟,,希望高手 不吝指教。
3. 上网搜 OD 反汇编工具是很强大的 我的win7没有问题。还有一款比较nb的是IDA你还是不要去碰它了,牛人用的。
F. 反编译是违法的吗
反编译是违法的,反编译是指计算机软件反向工程( Revers e engineering )也称为计算机软件还原工程,是指通过对他人软件的目标程序(可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、结构、算法、处理过程、运行方法等设计要素,某些特定情况下可能推导出源代码。反编译作为自己开发软件时的参考,或者直接用于自己的软件产品中。
根据《共和国着作权法》规定有下列侵权行为的,应当根据情况,承担停止侵害、消除影响、赔礼道歉、赔偿损失等民事责任:
(一)未经软件着作权人许可,发表或者登记其软件的;
(二)将他人软件作为自己的软件发表或者登记的;
(三)未经合作者许可,将与他人合作开发的软件作为自己单独完成的软件发表或者登记的;
(四)在他人软件上署名或者更改他人软件上的署名的;
(五)未经软件着作权人许可,修改、翻译其软件的;
(六)其他侵犯软件着作权的行为。
G. 是不是所有的程序都可以反编译得到原代码
Android APK中的Java代码可以被反编译到什么程度主要看APK的加密程度。
第一种情况:无混淆无加密无加壳。
直接利用Dex2jar和JD-GUI可把源码从APK里抠出来,代码逻辑清晰,基本上做到可复用,只是资源文件的引用需要计算一下。
第二种情况:混淆。
通常是利用Proguard做的防护。因为是对jar做的不可逆混淆(除非有mapping),因此不能还原成原来的代码。但是代码结构,代码逻辑一致,只要花长时间对代码进行梳理一样可找准核心代码,解密方法跟第一种一致。
第三种情况:加密。
这里以DexGuard为例。对于这种代码加密的方法,在程序运行中必定会进行解密,只要抽出它解密的逻辑便可。PS:我自己做过DexGuard的解密,如果用Dex2jar反编译看的话逻辑是不对的,一定要从Smali代码看。后来发现网上已经有人做了。
解密的脚本:A look inside Dexguard
第四种情况:加壳。
这种情况跟第三种类似。无论你怎么加壳,运行的时候必定是Dalvik可识别的Odex代码,建议直接在内存里mp出来。这里推荐Xpose的ZjDroid。
H. 从单片机读出来的程序,可以反编译吗
可以的,但反编译出来的程序跟天书一样,很难读懂的