请问,这样行不啊,C++做的dll,能被反编译吗?或者说能增加反编译难度吗?
13 个解决方案
#1
能,都是汇编代码
#2
不管什么高级语言编程,都是先编译成中间语言,最后变成计算机能够识别的机器码.
计算机能识别,反编译软件就能识别.除非你变成根本运行不了的东西,不过那样也失去意义了
计算机能识别,反编译软件就能识别.除非你变成根本运行不了的东西,不过那样也失去意义了
#3
能反编译为汇编代码。所以操作系统都可以被破解。
#4
不是说的C++的,不会被反编译的吗?怎么又变成可以被反编译了呢
#5
如果是C++/CLI,那么反编译的难度和C#差不多。
另外,无论混淆加密,无论什么语言,只要程序能被计算机执行,都可以分析出程序干了什么,只是难度大小的问题。所以即便windows是闭源操作系统,一样有黑客整天找出其中的漏洞,同时无论多么贵的商业软件,都有人做破解。
另外,无论混淆加密,无论什么语言,只要程序能被计算机执行,都可以分析出程序干了什么,只是难度大小的问题。所以即便windows是闭源操作系统,一样有黑客整天找出其中的漏洞,同时无论多么贵的商业软件,都有人做破解。
#6
有些工具反编译出来的就差不多是源码了~比如很多C#的工具
C++反编译~是观察cpu和内存的运行过程~从而来推算出程序原本的运行逻辑
我为什么会知道,难道我会告诉你我搞过游戏外挂么~
记得有一篇教材就是破解软件注册
找到判断验证注册码的地方,无论注册码填什么,把返回false的地方也修改返回true就可以了
#7
哎,还是不懂,一堆大道理
#8
用你打算用c++把你的连接字符串硬编码进去,那你不用费心反编译了,使用任意支持二进制文本编辑工具打开此dll,你也可以找到你的连接字符串。
#9
谁说C++不会被反编译的,揍他一顿.
#10
我觉得你还是先百度下计算机的运行原理吧...要大概了解下基础的东西...
#11
可以被反 编译的 不过现在也有技术混淆dll 增加反编译的难度
#12
要知道所有东西都是加载到内存,再用cpu操作的,而内存地址是具有规律编址的,这样可以分析内存地址,找到注册函数的入口地址和返回值,再利用外部工具强制修改那个内存单元的值。。。有些病毒的原理也是这样的,把函数堆栈地址重新指向到自己的函数入口,这样就可以随意执行特定函数中的代码了。。。但这需要对计算机原理有相当深的理解才能做到呢。
#13
要知道所有东西都是加载到内存,再用cpu操作的,而内存地址是具有规律编址的,这样可以分析内存地址,找到注册函数的入口地址和返回值,再利用外部工具强制修改那个内存单元的值。。。有些病毒的原理也是这样的,把函数堆栈地址重新指向到自己的函数入口,这样就可以随意执行特定函数中的代码了。。。但这需要对计算机原理有相当深的理解才能做到呢。
要想找到在dll二进制文件、运行时进程数据内存、传向数据库连接钓鱼程序(专门用来查看程序运行时发出的数据库连接字符串的工具软件)之中找到数据库连接串,易如反掌。根本用不着一个程序员懂什么病毒或者逆向工程原理就可以操作。
#1
能,都是汇编代码
#2
不管什么高级语言编程,都是先编译成中间语言,最后变成计算机能够识别的机器码.
计算机能识别,反编译软件就能识别.除非你变成根本运行不了的东西,不过那样也失去意义了
计算机能识别,反编译软件就能识别.除非你变成根本运行不了的东西,不过那样也失去意义了
#3
能反编译为汇编代码。所以操作系统都可以被破解。
#4
不是说的C++的,不会被反编译的吗?怎么又变成可以被反编译了呢
#5
如果是C++/CLI,那么反编译的难度和C#差不多。
另外,无论混淆加密,无论什么语言,只要程序能被计算机执行,都可以分析出程序干了什么,只是难度大小的问题。所以即便windows是闭源操作系统,一样有黑客整天找出其中的漏洞,同时无论多么贵的商业软件,都有人做破解。
另外,无论混淆加密,无论什么语言,只要程序能被计算机执行,都可以分析出程序干了什么,只是难度大小的问题。所以即便windows是闭源操作系统,一样有黑客整天找出其中的漏洞,同时无论多么贵的商业软件,都有人做破解。
#6
不是说的C++的,不会被反编译的吗?怎么又变成可以被反编译了呢
有些工具反编译出来的就差不多是源码了~比如很多C#的工具
C++反编译~是观察cpu和内存的运行过程~从而来推算出程序原本的运行逻辑
我为什么会知道,难道我会告诉你我搞过游戏外挂么~
记得有一篇教材就是破解软件注册
找到判断验证注册码的地方,无论注册码填什么,把返回false的地方也修改返回true就可以了
#7
哎,还是不懂,一堆大道理
#8
用你打算用c++把你的连接字符串硬编码进去,那你不用费心反编译了,使用任意支持二进制文本编辑工具打开此dll,你也可以找到你的连接字符串。
#9
不是说的C++的,不会被反编译的吗?怎么又变成可以被反编译了呢
谁说C++不会被反编译的,揍他一顿.
#10
哎,还是不懂,一堆大道理
我觉得你还是先百度下计算机的运行原理吧...要大概了解下基础的东西...
#11
可以被反 编译的 不过现在也有技术混淆dll 增加反编译的难度
#12
不是说的C++的,不会被反编译的吗?怎么又变成可以被反编译了呢
有些工具反编译出来的就差不多是源码了~比如很多C#的工具
C++反编译~是观察cpu和内存的运行过程~从而来推算出程序原本的运行逻辑
我为什么会知道,难道我会告诉你我搞过游戏外挂么~
记得有一篇教材就是破解软件注册
找到判断验证注册码的地方,无论注册码填什么,把返回false的地方也修改返回true就可以了
要知道所有东西都是加载到内存,再用cpu操作的,而内存地址是具有规律编址的,这样可以分析内存地址,找到注册函数的入口地址和返回值,再利用外部工具强制修改那个内存单元的值。。。有些病毒的原理也是这样的,把函数堆栈地址重新指向到自己的函数入口,这样就可以随意执行特定函数中的代码了。。。但这需要对计算机原理有相当深的理解才能做到呢。
#13
要知道所有东西都是加载到内存,再用cpu操作的,而内存地址是具有规律编址的,这样可以分析内存地址,找到注册函数的入口地址和返回值,再利用外部工具强制修改那个内存单元的值。。。有些病毒的原理也是这样的,把函数堆栈地址重新指向到自己的函数入口,这样就可以随意执行特定函数中的代码了。。。但这需要对计算机原理有相当深的理解才能做到呢。
要想找到在dll二进制文件、运行时进程数据内存、传向数据库连接钓鱼程序(专门用来查看程序运行时发出的数据库连接字符串的工具软件)之中找到数据库连接串,易如反掌。根本用不着一个程序员懂什么病毒或者逆向工程原理就可以操作。