ELF文件概述

概述

·破解、利用成功(程序的二进制漏洞)

·攻破(设备、服务器)

·控制(设备、服务器)

·exploit

·用于攻击的脚本与方案

·payload

·攻击载荷,是对目标进程被劫持控制流的数据

·shellcode

·调用攻击目标的shell的代码

二进制基础

程序的编译与链接

从c源码到可执行文件的生成过程

·编译

·由c语言代码生成汇编代码

·汇编

·由汇编代码生成机器码

·链接

·将多个机器码的目标文件链接成一个可执行代码

Linux下的可执行文件格式

什么是可执行文件

广义:文件中的数据是可执行代码的文件,如.out、.exe、.sh、.py

狭义:文件中的数据是机器码的文件,如.out、.exe、.dll、.so

可执行文件的分类

Windows:PE(Portable Executable)

可执行程序:.exe

动态链接库:.dll

静态链接库:.lib

Linux:ELF(Executable and Linkable Format)

可执行程序:.out

动态链接库:.so

静态链接库:.a

 

 

 

ELF文件头表(ELF header)

记录了ELF文件的组织结构

程序头表/段表(Program header table)

告诉系统如何创建进程

生成进程的可执行文件必须拥有此结构

重定位文件不一定需要

节头表(Section header table)

记录ELF文件的节区信息

用于链接的目标文件必须拥有此结构

其他类型目标文件不一定需要



posted @ 2022-01-17 22:13  vi0let  阅读(72)  评论(0编辑  收藏  举报