小白入门pwn笔记--elf文件概述

news2024/11/17 14:32:43

笔记是根据哔哩哔哩视频所写

2、ELF文件概述_哔哩哔哩_bilibili

第一集看过大概,很久之前安装过一些工具,所以直接从第二集开始看,遇到没有安装的工具再安装。

从今天开始入坑pwn

0.pwn的简单介绍

exploit:

用于攻击的脚本与方案。

payload:

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

shellcode:

调用攻击目标的shell的代码

之前听过一个课是这样解释的:

exploit:相当于火箭,payload相当于卫星。火箭把卫星发送后,就没用了,真正起作用的是卫星,payload

ctf pwn的形式

首先会给一台服务器的ip和端口

命令:

nc IP port

会获取服务器运行的程序

我们会自己写一个攻击脚本,然后运行脚本,达成攻击目的。获取服务器的shell。

通常比赛时会把服务器运行的程序的二进制文件给我们,我们通过二进制文件,找到漏洞,写攻击脚本,达成目的。

1.二进制基础

1.1程序的编译与链接

vim hello.c

#include<stdio.h>
int main(){
        puts("Hello world!");
}

这是c的源代码,然后通过gcc

gcc hello.c

生成a.out

然后执行文件。

./a.out

1.2可执行文件

1.2.1什么是可执行文件:

cpu可以执行的文件。里边好像都是机器码。

广:文件中的数据是可执行代码的文件

.out\.exe\.sh\.py

狭义:

.out\.exe\.dll\.so

1.2.2可执行文件的分类

windows:PE(Portable Executable)

可执行文件:.exe

动态链接库:.dll

静态链接库:.lib

Linux:ELF(Executable and Linkable Format)

可执行程序

.out

动态链接库:

.so

静态链接库:

.a

1.3ELF文件的结构:

图片来自ELF文件基本结构 - CTF Wiki (gitee.io)

最后

好好的一张图被我给弄废了

code和data好像汇编中的东西,不确定是不是。(那个code段data段)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/192450.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

一、代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素。

数组基础理论数组是存放在连续内存空间上的相同类型数据的集合。数组下标都是从0开始的。数组内存空间的地址是连续的正是因为数组的在内存空间的地址是连续的&#xff0c;所以我们在删除或者增添元素的时候&#xff0c;就难免要移动其他元素的地址。数组的元素是不能删的&…

关于CADC数据集的处理笔记

简要介绍 数据集 Canadian Adverse Driving Conditions Dataset&#xff08;CADC&#xff09;是全球首个针对寒冷环境的自动驾驶数据集&#xff0c;其内包含&#xff1a; 56,000 张相机图像&#xff1b;7,000 次 LiDAR 扫描&#xff1b;75 个场景&#xff0c;每个场景 50-100…

Vue中作用域插槽solt详解

作用域插槽插槽可以实现父子组件通信(通信的结构)默认插槽具名插槽作用域插槽:子组件的数据来源于父组件,子组件是决定不了自身结构与外观的直接上代码&#xff01;&#xff01;父组件&#xff1a;<template><div><h2>效果一: 显示TODO列表时, 已完成的TODO为…

蓝桥杯STM32G431RBT6学习——M24C02

蓝桥杯STM32G431RBT6学习——M24C02 前言 IIC是单片机的通用协议&#xff0c;在蓝桥杯单片机、嵌入式中都是考点。国信长天开发板板载M24C02&#xff08;IIC驱动&#xff09;作为调电存储模块&#xff0c;可以通过IIC对其写入数据后&#xff0c;掉电进行保存以供读取。其硬件…

Linux(centos7)基本操作---进程管理

进程管理进程管理&#xff08;process&#xff09;相关的名词解释静态进程查看动态进程查看进程控制作业管理&#xff08;jobs&#xff09;文件虚拟系统&#xff08;proc&#xff09;进程管理&#xff08;process&#xff09; 相关的名词解释 PID&#xff1a;进程的身份证号,…

对象之间的拷贝与转换

这里写目录标题Lambda 的 builderidea 自动生成插件 GenerateAllSetterMapStructDozer在开发的时候经常会有业务代码之间有很多的 JavaBean 之间的相互转化&#xff0c;比如 PO/DTO/VO/QueryParam 之间的转换问题&#xff0c;本文总结一下各种转换方法Lambda 的 builder 使用构…

【Qt】11.Linux下,Qt程序打包

目录 获取Release模式下的可执行文件 打包的目录结构搭建 安装linuxdeployqt 环境准备 下载linuxdeployqt 编译安装 复制快捷方式 配置环境变量 使生效 查看版本 安装unixODBC库 解压 配置 编译安装 重启系统 打包 原因 解决方法 打成deb包 打deb包目录构建…

Python虚拟环境大总结(virtualenv pipenv)

文章目录1 virtualenv1.1 安装1.2 测试安装是否成功1.3 主要命令1.4 virtualenvwrapper1.4.1 创建虚拟环境1.4.2 列举所有虚拟环境1.4.3 激活虚拟环境1.4.4 取消激活虚拟环境1.4.5 删除虚拟环境1.4.6 创建指定版本的虚拟环境2 pipenv2.1 安装2.2 创建虚拟环境2.3 进入虚拟环境2…

游戏之外,元宇宙也在寻求与更多领域进行融合

在大众对元宇宙的构想中&#xff0c;“游戏”是优先级最高的落地场景之一。《头号玩家》、《赛博朋克2077》等作品中&#xff0c;“游戏”也多次成为元宇宙的主要载体&#xff0c;描画出人们对于这一前沿风口的想象。 2022年以来&#xff0c;监管侧陆续传来元宇宙产业发展的利…

python算法加密 pyarmor与docker

如觉得博主文章写的不错或对你有所帮助的话&#xff0c;还望大家多多支持呀&#xff01;关注、点赞、收藏、评论。 目录一、 基本语法 加密 Python 脚本二、运行加密脚本三、pyarmor&docker3.1 Dockerfile3.2 requirements.txt3.3 加密函数lock_by_pyarmor.py3.4 主函数myp…

元宵节营销活动策划,轻松拿下用户

热闹的春节刚过&#xff0c;又将迎来团圆美满的元宵节&#x1f3ee;。我们今天就来讲讲&#xff0c;关于节日营销的小巧思&#xff01; 【产品游戏】 在每一个关于节日的营销里&#xff0c;将游戏作为切入点与产品相结合&#xff0c;往往可以获得意想不到的效果。对于场景单一…

DynaSLAM-6 DynaSLAM论文解读

目录 1.论文摘要解读 1.1 原论文内容 1.2 个人理解 2.论文discusses related work部分 2.1 原论文内容 3.论文SYSTEM DESCRIPTION部分 3.1 使用Mask R-CNN对潜在的动态内容进行分割 3.2 低成本追踪 3.3 使用Mask R-CNN和多视角几何对动态内容进行分割 3.4 跟踪线程…

分享会上狂吹MySQL的4大索引结构红黑树、二叉树B+Tree,没想到~~~~

索引&#xff08;index&#xff09;是帮助MySQL高效获取数据的数据结构(有序)。在数据之外&#xff0c;数据库系统还维护着满足 特定查找算法的数据结构&#xff0c;这些数据结构以某种方式引用&#xff08;指向&#xff09;数据&#xff0c; 这样就可以在这些数据结构 上实现高…

品优购网页制作

目录 favicon图标 TDK三大标签SEO优化 title网站标题 description网站说明 keywords关键字 首页制作 快捷导航模块 左浮动 右浮动 header头部模块制作 1.logo模块 2.search模块 3.热词模块 4.购物车模块 子绝父绝 nav导航模块 1.nav左边导航位置 2.上方导航位置 …

PCB覆铜很“上头”?一文帮你搞定实操要点和规范

1、覆铜覆盖焊盘时&#xff0c;要完全覆盖&#xff0c;shape 和焊盘不能形成锐角的夹角。2、尽量用覆铜替代粗线。当使用粗线时&#xff0c;过孔通常为非通常走线过孔&#xff0c;增大过孔的孔径和焊盘。修改后&#xff1a;3、尽量用覆铜替换覆铜走线的模式&#xff0c;后者常常…

11.深度优先搜索

一、算法内容 1.简介 深度优先搜索DFS&#xff08;Depth First Search&#xff09;按照深度优先的方式进行搜索&#xff0c;可以理解为“一条路走到黑”地穷举所有可行的方案&#xff0c;并不断尝试&#xff0c;直到找到一种情况满足问题问题的要求。那么这个方案就是一个问题…

shell 循环学习练习

目录 一&#xff0c;嵌套循环实现9*9乘法表 二&#xff0c;判定一个成绩&#xff1a; 三&#xff0c;循环创建用户&#xff1a;用户名为user01-user20 一&#xff0c;嵌套循环实现9*9乘法表 (for和while都可以) 选做&#xff1a;格式对齐&#xff0c;以及使用单层循环完成9*9乘…

精细管理——CRM销售漏斗管理

CRM销售漏斗涵盖了从接触客户到谈判、成单、回款的整个销售过程。一个典型的销售漏斗是由一个特定时间段里&#xff0c;例如一年或者一个季度或者一个月这个时间范畴之内&#xff0c;一系列有可能转化成订单的潜在销售机会所组成。在CRM客户管理系统中&#xff0c;销售漏斗管理…

Unity-TCP-网络聊天功能(四): 消息粘包、心跳机制保活(心跳包)、断线重连

8. 粘包Bug、心跳机制保活(心跳包)、断线重连粘包bug1&#xff1a;下线后&#xff0c;如果发送多条消息&#xff0c;在客户端上线时&#xff0c;一瞬间接收到&#xff0c;效果如同粘包&#xff0c;需要拆包。举例&#xff0c;连续发送三条160长度消息&#xff0c;可能实际显示2…

java常用类: System类直接常用方法

java常用类型: Ineteger等包装类 String类&#xff0c;StringBuffer类和StringBuilder类 Math类及常用方法 System类及常用方法 Arrays类及常用方法 BigInteger类和BigDecimal类及常用方法 日期类Date类,Calender类和LocalDateTime类 文章目录System简介System.exit(0) 退出Sys…