我是靠谱客的博主 优秀黑夜,最近开发中收集的这篇文章主要介绍pwn入门(1)二进制基础1 PWN是什么?2 程序的编译与链接5 程序的装载与进程的执行6 ×86&amd64汇编概述小知识点,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
1 PWN是什么?
-
破解、利用成功(程序的二进制漏洞)
-
攻破(设备、服务器)
-
控制(设备、服务器)
-
exploit:用于攻击的脚本与方案
-
payload:攻击载荷,是的目标进程被劫持控制流的数据
-
shellcode:调用攻击目标的shell代码
2 程序的编译与链接
从C源代码到可执行文件的生成过程
- 编译:由C语言代码生成汇编代码。
- 汇编:由汇编代码生成机器代码。
- 链接:将多个机器码的目标文件链接成一个可执行文件。
将代码转换为汇编代码:
gcc -S test.c
3 Linux下的可执行文件格式ELF
什么是可执行文件?
- 广义:文件中的数据是可执行代码的文件(out exe sh py)
- 狭义:文件中的数据是机器码的文件(out exe dll so)
可执行文件的分类 - Windows:PE(Portable Executable)
- 可执行程序exe
- 动态链接库dll
- 静态链接库lib
- Linux:ELF(Executable and LInkable Format)
- 可执行程序out
- 动态链接库so
- 静态链接库a
4 进程虚拟地址空间
局部变量全部存放在栈中。
5 程序的装载与进程的执行
6 ×86&amd64汇编概述
小知识点
- vim 中将文件装换文二进制文件的命令 %!xxd,还原的命令%!xxd - r。
最后
以上就是优秀黑夜为你收集整理的pwn入门(1)二进制基础1 PWN是什么?2 程序的编译与链接5 程序的装载与进程的执行6 ×86&amd64汇编概述小知识点的全部内容,希望文章能够帮你解决pwn入门(1)二进制基础1 PWN是什么?2 程序的编译与链接5 程序的装载与进程的执行6 ×86&amd64汇编概述小知识点所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复