目录
预备知识
Ollydbg介绍
Ollydbg(简称OD)是Windows平台下Ring3级的程序调试利器。程序调试有静态调试和动态调试两种。静态调试是指将程序源代码编译成可执行程序之前,用手工或编译程序等方法对程序源代码进行测试,来查找和修正程序中的语法错误和逻辑错误。动态调试则是在可执行程序的运行过程中,来查找和修正程序中的语法错误和逻辑错误。随着系统安全与逆向工程的不断发展,程序调试已经成为信息安全爱好者所必备的一种技术。OD结合了静态调试和动态调试的方法,功能强大,已经成为了Windows平台下普通应用程序的调试利器。
OD官网:link(Windows 95、98、ME、NT、XP、Win7)。
OD汉化版请自行百度。
PE文件介绍
PE(Portable Execute)文件被称为可移植的执行体(可执行文件),常见的可执行文件有EXE、DLL、OCX、SYS、COM格式文件,PE文件是微软Windows平台操作系统上的可执行程序文件。
PE文件能被Windows平台的操作系统解释并执行,因此有固定的文件格式。PE文件格式被组织为一个线性的数据流,它由一个MS-DOS头部开始,接着是一个实模式的程序残余以及一个PE文件标志,这之后紧接着PE文件头和可选头部。这些之后是所有的段头部,段头部之后跟随着所有的段实体。文件的结束处是一些其它的区域,其中是一些混杂的信息,包括重分配信息、符号表信息、行号信息以及字串表数据。如下图所示:
反汇编介绍
在计算机语言的进化过程中,是由低级语言(机器语言)向高级语言(C、C++、C#、Java等)逐步发展的,但是在实际的运行过程中,计算机能识别的只有机器语言(01代码)。所有高级语言在编译、链接、执行过程中转化为机器语言,并由CPU解释并执行。
机器语言不仅晦涩难懂,而且难以记忆,因此在计算机语言的进化过程中出现了汇编语言。汇编语言是一种与硬件紧密相关的程序设计低级语言,汇编语言使机器语言以便于记忆和理解的符号形式(又称为助记符)存在。
汇编是将汇编代码编译、链接成可执行文件的过程。反汇编则是将可执行文件还原成汇编代码的过程。反汇编技术常常应用在逆向分析、软件破解、漏洞挖掘等场景中,主要目的是