1.2尝试静态分析(《有趣的二进制》)

不记录仿佛没有学过。。还是记录一下,虽然花时间,但是重新看起来也容易。


//预备

静态分析:不运行目标程序,分析代码
动态分析:运行时分析

静态分析:
1、阅读反汇编代码
2、提取可执行文件中的字符串,分析使用了哪些单词
3、二进制编辑器查看可执行文件内容

作者认为的逆向工程四大件:
二进制编辑器,计算器,反汇编器,调试器

推荐的两种二进制编辑器:
Stirling(日语)
BZ Editor(大文件处理)

我安装的两种二进制编辑器:
Stirling(日语)
Hex Editor Neo

PE格式:exe可执行文件的二进制格式?

IDA:IDA 7.0 Freeware
https://www.hex-rays.com/products/ida/support/download.shtml
分析汇编语言,看流程图分析软件


//实验目的
拿到文件 wsample01a.exe,我们都能做些什么?


1、二进制编辑器出场,不运行,二进制看看这个exe先
1.2尝试静态分析(《有趣的二进制》)_第1张图片
字符串:MESSAGE,Helllo!Windows
1.2尝试静态分析(《有趣的二进制》)_第2张图片
文件路径:C:\Documents and Settings\XPMUser\My Documents\Visual Studio 2010\Projects\wsample01a\Release\wsample01a.pdb

3
字符串:KERNEL32.dll,MessageBoxW

得到这三个有用信息。

2、反汇编工具 IDA出场,分析流程图,具体程序逻辑,知道程序到底要干什么,可以利用这个程序干点什么其他的事情
这里书上写的双击wWinMain这个函数,木有找到,但是找到了这个sub_401000函数,发现是完全一样的。
函数
找到这个程序分支,这是汇编语言的控制流图。发现如果传入参数2012,会有不同的运行结果。
1.2尝试静态分析(《有趣的二进制》)_第3张图片
无参数:
1.2尝试静态分析(《有趣的二进制》)_第4张图片
有参数:2012
1.2尝试静态分析(《有趣的二进制》)_第5张图片

在这里插入图片描述

我们发现了通过传递2012这个参数,程序的显示结果会发生变化,这很重要。我们在没有源代码的情况下,搞清楚了程序的行为。这就是逆向工程。

关于汇编和源代码后面会继续学习。

你可能感兴趣的:(逆向)