是否有可能在Visual Basic中更改其他应用程序代码?

时间:2015-10-11 13:06:50

标签: vb.net reverse-engineering ollydbg

我刚刚在OllyDbg中反转了一个crackme,我想知道我是否可以用VB.NET编写的应用程序修改它的代码。例如,要为JMP更改JNZ(在指定地址上)。

编辑:

我看到有一种误解。我在谈论在Visual Basic.NET中创建修补程序(以编程方式更改EXE代码)来修补已经反转的应用程序。我知道Write / ReadProcessMemory允许我在应用程序执行后注入代码(在这种情况下它的加载程序不是修补程序),但是如何永久覆盖EXE?

2 个答案:

答案 0 :(得分:0)

将JNZ更改为JMP有点绕过应用程序内的某种验证(如果购买或不购买的序列号,那么如果您有源代码,则可以只评论您不希望您的应用程序使用哪些行执行

答案 1 :(得分:0)

使用某些工具可以修补已编译的程序,您甚至可以在运行时使用代码注入来执行此操作。 但是,正如我从你的问题中理解的那样,你在谈论vb .NET应用程序而不是常规的VB应用程序。 VB .NET应用程序编译为字节码(MSIL代码)而不是像常规VB应用程序那样的二进制文件,这使得它更容易反向,你实际上可以反编译" .exe文件的源代码使用ILSPY等工具(请参阅google),修补它,然后重新编译。