逆向工程hello-world

Posted beautiful7

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逆向工程hello-world相关的知识,希望对你有一定的参考价值。

首先采用VS2019进行windows的message函数编程,实现一个message窗口。

技术图片

 

 具体代码如下:

#include<Windows.h>
int CALLBACK WinMain(
	_In_ HINSTANCE hInstance,
	_In_ HINSTANCE hPrevInstance,
	_In_ LPSTR     lpCmdLine,
	_In_ int       nCmdShow){
	MessageBox(NULL, TEXT("Hello,windows!"), TEXT("hello msg"), 1);
	return 0;
}

  然后调用OllyDBG进行调试和反汇编:

技术图片

 

这是失误案例,因为我采用的是VS2019的新的Windows message来处理,可能保护性比较强。

所以我重新采取了VC6.0来处理:

代码如下:

#include<windows.h>
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdLine,int iCmdshow)
{
	MessageBox(NULL,TEXT("Hello,windows!"),TEXT("hello"),0);
}

 然后放入OllyDBG中来处理:

技术图片

 

 这样就很清晰的可以看到反汇编的结果。不得不说vs还是厉害。

 然后查看我们要修改的东西,这里再OllyDBG这里有个乱码,但是不用怕,双击可以看到结果

技术图片

 

然后来定位数据

使用快捷键Ctrl+G输入查询地址技术图片

 

 可以看到我们需要的内容在这里呈现了。

然后在指定的Hex数据里面单击选择修改,或者Ctrl+E来一个一个处理:技术图片

可以很清晰的看到改动了。

再进行F8进行单步调试

然后选择运行就可以得到破解的文件了

技术图片

 

 

 

OK,最简单的windows破解完成

总结如下:

1.导入exe程序

2.找到需要修改的东西

3.查询文档知道东西的意义

4.定位数据

5.修改

6.调试

7.得出程序

以上是关于逆向工程hello-world的主要内容,如果未能解决你的问题,请参考以下文章

01-Taro打造hello-world应用

Android 逆向类加载器 ClassLoader ( 类加载器源码简介 | BaseDexClassLoader | DexClassLoader | PathClassLoader )(代码片段

Android 逆向Android 逆向通用工具开发 ( Android 平台运行的 cmd 程序类型 | Android 平台运行的 cmd 程序编译选项 | 编译 cmd 可执行程序 )(代码片段

Android 逆向ART 脱壳 ( DexClassLoader 脱壳 | DexClassLoader 构造函数 | 参考 Dalvik 的 DexClassLoader 类加载流程 )(代码片段

Android 逆向ART 脱壳 ( DexClassLoader 脱壳 | DexClassLoader 构造函数 | 参考 Dalvik 的 DexClassLoader 类加载流程 )(代码片段

Android 逆向整体加固脱壳 ( DEX 优化流程分析 | DexPrepare.cpp 中 dvmOptimizeDexFile() 方法分析 | /bin/dexopt 源码分析 )(代码片段