汇编工具
1 在不同平台下编译c语言的编译器,
Linux下gcc
1 | ubuntu: |
Linux安装完毕
Windows下的mingw64 gcc
https://sourceforge.net/projects/mingw-w64/files/
需要下载x86_64-posix-sjlj版本
i686纯32位版供32位win系统使用
x86_64是64位系统用的版本
seh结尾是纯64位编译
sjlj结尾是32 64两种编译,需加-m32或-m64参数
posix通常用于跨平台,比win32兼容性好一些
下载完成后解压到一个路径中并将路径添加到path中方便使用
Windows安装完成
2 编写需要编译的C代码
main.c
1 | #include <stdio.h> |
3 编译
(1) Linux
gcc -g main.c -o main
(2) 使用Windows中的Linux子系统
wsl gcc -g main.c -o main
(3) Windows mingw64 gcc工具
gcc -m32 main.c -o main
CGG参数(更多参数请输入:gcc –help
选项 | 说明 |
---|---|
-E | 只进行预编译,代码送往标准输出 |
-S | 编译生成汇编代码 |
-c | 编译生成目标文件”.o”,不链接成可执行文件 |
-o | out_filename 保存为指定的文件名,不指定默认为a.*文件 |
-g | 在可执行程序中包含标准调试信息,要调试源文件须添加 |
-On | 这里的“n”指的是数字,选择程序要使用的优化级别,分别为-O1,-O2,-O3,一般使用-O2就可以了 |
-std= | 选择C准备,如:C99,C11等(例:-std=c11) |
-Wall | 打开所有类型语法警告,建议养成使用该选项的习惯(不包括-pedantic选项) |
-pedantic | 能够帮助程序员发现一些不符合ANSI/ISO C标准的代码(如未定义行为提示) |
4 查看可执行文件的汇编代码 ollydbg
下载http://www.ollydbg.net/download/odbg201.zip 解压就可以使用了
这个工具需要Windows 32位的exe可执行文件 进行查看
所有需要使用mingw64 gcc工具编译c代码
打开ollydbg工具后将编译完成的main.exe拖到工具界面就可以进行查看和编辑汇编了
5 ollydbg使用教程
从零开始的程序逆向之路 作者:Crazyman_Army https://www.cnblogs.com/ichunqiu/p/9355253.html
OllyDBG完美教程(超强入门级) https://blog.csdn.net/biyusr/article/details/79046355
本文作者 : zhouinfo
原文链接 : http://blog.zhouinfo.site/2020/02/13/%E6%B1%87%E7%BC%96%E5%B7%A5%E5%85%B7/
版权声明 : 本博客所有文章除特别声明外,均采用 CC Apache License 2.0 许可协议。转载请注明出处!