首先介绍一下术语。
使用高级语言进行开发,最后到交互,一般经历几个过程:预处理、
编译、汇编、链接。
预处理:文件包含,宏定义展开等;
编译:源代码转为中间语言–汇编语言;
汇编:汇编语言转为机器代码,即目标文件(包括可执行文件、so文件等);
链接:文件重定位、符合链接整合;
何为反编译、反汇编?
其实就是上面对应过程的逆过程。
本文描述的so文件反汇编、反编译主要借助工具IDA Pro,下面简单介绍其使用步骤。
- 打开IDA Pro;
- 将so文件拖入刚打开的窗口,点击OK;
- 可以看到汇编代码;
- 按F5,可以看到C源码;
参考
编译链接可参考《程序员的自我修养》,建议作为常备书籍。
程序员的自我修养pdf
So文件反汇编步骤
IDA Pro下载地址1
IDA Pro下载地址2