pwn小白入门 装载 笔记

news2024/11/15 12:20:07

所看视频奉上:

5、装载与汇编_哔哩哔哩_bilibili

笔记如下:

1.查看文件类型:

file 文件名

其中:

add:文件名

ELF:文件格式

64-bit:64位

LSB:端序 lsb:小端序 msb:大端序

x86-64:架构

dynamically:动态链接

interpreter :解释器

内核:GNU/Linux 3.2.0

HASH:BuildID[sha1]=ede5b2f24049ad7513cadff0224a885d0d58ccbe

not stripped:调试信息没有被剥夺掉

2.链接

链接就是将目标文件链接成一个可执行文件。

    • 静态链接

链接的时间是运行之前。

每个目标文件的静态库都会被载入内存。从而增加了内存的数量。

最简单的方法是按序叠加。

弊端是链接的文件过多时输出的可执行文件会非常零散。段的装载地址和空间以页为单位,不足一页的也会占用一页,这样会造成内存空间的浪费。

另一种方式是相似节合并。讲不同的目标文件相同的属性合并成一个节。这种被当前的连接器采用。

    • 动态链接

动态链接是链接的时间是在程序运行或加载的时候,

在内存中完成链接的过程。

动态链接只载入目标文件,所调用的库被共享。

这些用于动态链接的系统库称为共享库,或者共享对象,

整个过程由动态链接器完成。

GCC默认由动态链接编译。

2.2位置无关代码:

可以加载而无需冲定位的代码称为位置无关代码。他是共享库必须具有的属性。

2.3延时绑定:

延时绑定:当函数第一次被调用的时候动态链接器才会进行符号查找、重定位等操作,如果没有被调用就不绑定。

由于动态链接是由动态链接器在程序加载的时候进行的,当需要时定位的符号(函数库)多了之后,势必会影响性能。延时绑定就是为了解决这一,问题。

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

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

相关文章

sqlserver2012数据库,日志文件损坏修复

背景 服务器突然断电,导致数据库日志文件损坏,数据库无法启动。 本方案也同样适用于不小心删除数据库日志文件的情况。 相关报错 master数据库日志异常,导致数据库无法启动: 无法在数据库“master”(数据库 ID 为 1)的分配单元 …

windows下生成自签证书并配置到chrome

Windows自签证书生成工具:XCA – X Certificate and Key Management 简称:XCA 下载地址: https://github.com/chris2511/xca/releases 或者 http://sourceforge.net/projects/xca/files/latest/download 界面(1.4.1版本&#xff0…

从0开始学python -19

Python3 字典 字典是另一种可变容器模型,且可存储任意类型对象。 字典的每个键值 key>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示: d {key1 : value1, key2 : value2, key3…

剑指Offer 第23天 数组中出现次数超过一半的数字 数组中数字出现的次数 I 数组中数字出现的次数 II(异或运算)

剑指 Offer 39. 数组中出现次数超过一半的数字 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输出: 2 来源:力扣&a…

Python自动化测试实战篇(2)unittest实现批量接口测试,并用HTMLTestRunner输出测试报告

代码已上传Python接口项目实战篇(2)源码 项目场景: 由于关于接口的测试用例任务越来越多,单纯靠人工手敲的方式输入和校验,速度上已经不能够满足项目的进行速度,而且都是针对登录的框框进行用例测试&…

一站式轻监控轻运维系统nezha(下篇)

本文软件由网友 114514 推荐; 命令行安装 docker安装所需要的文件都能在 https://github.com/naiba/nezha/tree/master/script 找到,config.yaml 和 docker-compose.yml 老苏都做了调整 你可以在 data 目录中新建一个空的 config.yaml 文件,…

基于“Doris”的type2拉链表的Mysql实现

基于“Doris”的type2拉链表的Mysql实现 需求说明 基于Doris实现Type2、拉链表。主要对上游系统里的面积字段进行监控,如果发现变化则跟踪记录到维度表里。 解决方案 type2相关概念见如下链接: SCD缓慢变化维拉链表 这里特别需要注意的是: 1、因为…

scrapy_redis原理分析并实现断点续爬以及分布式爬虫

scrapy_redis原理分析并实现断点续爬以及分布式爬虫 学习目标 了解 scrapy实现去重的原理了解 scrapy中请求入队的条件掌握 scrapy_redis基于url地址的增量式单机爬虫掌握 scrapy_redis分布式爬虫 1. 下载github的demo代码 clone github scrapy-redis源码文件 git clone http…

WPF TotalSummary汇总栏设置鼠标点击事件和显示格式修改

文章目录最开始的提示汇总有两种Summary Panel的设置参考这里Fixed Summary Panel的设置参考这里代码中都用到了DXBinding多个汇总项,对某一项进行控制设置鼠标点击事件整体的xaml代码如下总结最开始的提示 WPF毕竟是微软的东西,且用的人不多&#xff0…

虚函数的复杂(继承)内存布局

文章目录单继承(无虚函数覆盖)单继承(有虚函数覆盖)多继承(无虚函数覆盖)多继承(有虚函数覆盖)菱形继承(有虚函数覆盖)菱形虚拟继承(有虚函数覆盖…

浅析git

目录 git 的历史 git 的感性认识 git 在Linux下的操作 git三板斧 git 的历史 雷纳斯托瓦兹,想必大家对这个名字并不陌生,他是Linux内核的最早作者,随后发起了这个开源项目,担任Linux内核的首要架构师与项目协调者&#xff0c…

Kafka入门(一)

1、Kafka简介 Kafka是一个分布式的基于发布/订阅模式的消息队列(Message Queue),主要应用于大数据实时处理领域(hadoop集群)、物联网领域。其主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能…

华为路由器Talent服务配置

前言 Telnet:console是通过本地进行设备管理,还有一种是通过远程登录的方式进行设备管理,也就是虚拟终端。通过发送信息进行控制,不受终端和服务器的位置限制(只要可以通信,服务器启用了Telnet功能即可&am…

Python 的基础语法

第一个 Python 程序交互式编程交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码。linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下:$ pythonPython 2.7.6 (default, Sep 9 2014, 15:04:36)[GCC 4.2…

LinkedHashSet源码阅读理解

概述 1、底层:HashSet LinkedHashMap 2、创建节点时将节点插入链表,因此有序 3、线程不安全 源码理解 demo: public class LinkedHashSetDemo {public static void main(String[] args) {test();}public static void test(){LinkedHas…

CDMP认证考试考前你需要了解的那些事

对国内的数据从业人员来说,CDMP算比较新的考试,目前相关介绍很少,小编整理了CDMP考试先关的一些内容,希望对正在考虑考取CDMP认证的你有所帮助!CDMP认证有几个等级?4个。A级(基础级)…

为什么Google优化排名前期要做长尾关键词?谷歌seo怎么做?

本文主要分享关于谷歌长尾词对于外贸网站获取流量和排名的重要性。 本文由光算创作,有可能会被修改和剽窃,我们佛系对待这种行为吧。 Google优化排名是指在Google 搜索结果中,使外贸站的排名更高。 长尾关键词是指长度较长的,不…

((蓝桥杯 刷题全集)【备战(蓝桥杯)算法竞赛-第2天】( 从头开始重新做题,记录备战竞赛路上的每一道题 )距离蓝桥杯还有65天

🏆🏆🏆🏆🏆🏆🏆 欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录&a…

【计算机网络】Linux下路由配置总结

文章目录路由的基础知识Linux内核路由表使用route -n命令查看Linux内核路由表三种路由类型说明(Flags)配置路由route的命令设置包转发静态路由配置参考路由的基础知识 1)路由概念 路由: 跨越从源主机到目标主机的一个互联网络来转发数据包的过程路由器…

多线程代码案例之单例模式

目录 单例模式 饿汉模式 懒汉模式 问题一 问题二 问题三 单例模式 单例模式,是设计模式的一种。在有些特定场景中,有的特定的类,只能创建出一个实例,不应该创建多个实例。单例模式就可以保证这样的需求。例如JDBC中的Data…