linux动态链接之.plt与.got.plt

news2024/11/17 2:46:05

1. 动态链接

一个 main.c 文件

#include <stdio.h>
#include <stdlib.h>

int main()
{
    puts("123");
    puts("456");
    return 0;
}

此时我们编译它默认会使用动态链接默认生成a.out可执行文件

gcc main.c

当第一次调用puts函数时,会去往.plt节,该节属于代码段
.plt节后,会再去到got.plt中查找是否有对应的函数地址,如果没有那么再返回到plt节中进行符号解析
解析成功将puts的真实地址写入到got.plt表中
此后再次调用puts函数时,便直接通过plt表,然后plt在去got.plt查询函数的真实地址并跳到函数体中执行该函数

.plt与.got.plt

这里使用pwngdb进行调试

第一次运行到puts函数

在这里插入图片描述
跳转到plt节中

在这里插入图片描述
plt节再跳转到got.plt节中
在这里插入图片描述
这里got.plt中没有函数地址,那么再跳回plt节,然后plt进行解析获取真实地址,得到真实地址后写入got.plt表中
在这里插入图片描述

当第二次调用puts函数时
在这里插入图片描述
去到plt节
在这里插入图片描述
可以发现plt再去got.plt节时就是直接去puts函数本体执行了

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

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

相关文章

考公-判断推理-逻辑判断-真假推理

真假推理最多考一道 例题 找矛盾 例题 例题 四组 例题 例题 例题 例题 例题 例题 例题

Keburnetes 配置资源管理 Secret ConfigMap

Secret 资源 用于保存密码文件、tls证书/私钥文件、token令牌字符串、镜像私有仓库认证信息 等需要加密的敏感的信息 Secret资源的 4 种类型 Opaque&#xff1a;默认的Secret资源类型&#xff0c;可以通过选项引用文件、目录、键值对的方式创建Secret资源&#xff0c;并且资…

在APP中如何嵌入小游戏?

APP内嵌游戏之所以能火爆&#xff0c;主要是因为互联网对流量的追求是无止境的&#xff0c;之前高速增长的红利期后&#xff0c;获取新的流量成为各大厂商的挑战&#xff0c;小游戏的引入&#xff0c;就是这个目的&#xff0c;为已有的产品赋能&#xff0c;抢占用户注意力和使用…

文件夹数据加密怎么设置?文件夹数据加密软件哪个好?

文件夹是电脑存放重要数据的载体&#xff0c;我们需要保护其数据安全&#xff0c;那么文件夹数据加密该怎么设置呢&#xff1f;下面我们就来盘点一下文件夹数据加密软件。 EFS加密 提起文件夹加密&#xff0c;很多人想到的就是EFS加密&#xff0c;它可以加密NTFS卷的各种文件或…

【RP2040】香瓜树莓派RP2040之新建工程

本文最后修改时间&#xff1a;2022年09月05日 11:02 一、本节简介 本节介绍如何新建一个自己的工程。 二、实验平台 1、硬件平台 1&#xff09;树莓派pico开发板 ①树莓派pico开发板*2 ②micro usb数据线*2 2&#xff09;电脑 2、软件平台 1&#xff09;VS CODE 三、版…

ThreadLocal内存泄漏问题

引子&#xff1a; 内存泄漏&#xff1a;是指本应该被GC回收的无用对象没有被回收&#xff0c;导致内存空间的浪费&#xff0c;当内存泄露严重时会导致内存溢出。Java内存泄露的根本原因是&#xff1a;长生命周期的对象持有短生命周期对象的引用&#xff0c;尽管短生命周期对象已…

为什么 ThreadLocal 会导致内存泄漏 ?如何解决 ?

面试官问 &#xff1a;为什么 ThreadLocal 会导致内存泄漏 &#xff1f;&#xff1f; 在面试中被问到这个问题&#xff0c;如果记不清细节了&#xff0c;可以这样回答&#xff1a; ThreadLocal 里面存储的数据&#xff0c;它的生命周期是和线程或者线程池的生命周期保持一致的…

JavaWeb-DAO设计模式

目录 DAO设计模式 1.认识DAO 2.DAO各部分的详解 3.DAO设计模式流程 DAO设计模式 1.认识DAO DAO(Data Acess Object 数据库访问对象)的主要功能是操作数据库&#xff0c;所以DAO在标准开发架构中数据数据层&#xff0c;以下是标准开发的架构 客户层&#xff1a;目前使用B/…

ZKSV2-12-2NCP、ZKSV2-08-2NCSP-L、ZKSV2-08-2NOP插装式电磁换向阀

ZKSV-08-2NCP、ZKSV2-08-2NCP、ZKSV2-10-2NCP、ZKSV2-12-2NCP、ZKSV2-08-2NCSP-L、ZKSV2-08-2NOP、ZKSV2-10-2NOP、ZKSV2-12-2NOP、ZKSV2-08-3、ZKSV2-08-3A、ZKSV2-08-3C、ZKSV2-08-3B、ZKSV2-10-3、ZKSV2-10-3C、ZKSV2-10-3B、ZKSV2-08-4 CO、ZKSV2-08-4 NC、ZKSV2-08-4 TC、…

问道管理:机器人概念走势活跃,新时达涨停,拓斯达、丰立智能等大涨

机器人概念17日盘中走势活跃&#xff0c;到发稿&#xff0c;拓斯达大涨18%&#xff0c;昊志机电涨近16%&#xff0c;丰立智能涨超13%&#xff0c;步科股份、优德精细涨超10%&#xff0c;新时达涨停&#xff0c;天玑科技、兆龙互联、中大力德涨逾9%。 消息面上&#xff0c;8月16…

javaScript:一分钟看懂数组排序以及冒泡排序(重点)

目录 一.前言 二.数组排序 sort&#xff08;&#xff09; 字符串大小的比较原则 字符编码排序规则 如果使用sort从小到大排列 &#xff08;重点&#xff09; 函数的返回值 规则&#xff1a; 代码 案例 数组打乱 sort相关代码 三.冒泡排序&#xff08;重点&#xff…

Zass主题 - 手工艺术家和工匠的WooCommerce商城主题

Zass主题是适合手工艺术家和工匠的完美 WordPress / WooCommerce 主题。无论您是想为您的手工制作业务构建功能齐全的 Etsy Style 在线商店、博客还是作品集&#xff0c;Zass 主题都是您的正确选择。凭借其极其强大的自定义电子商务功能、无限的作品集风格、不同的博客风格和无…

多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测

多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 MATLAB实现WOA-CNN-GRU-Attention多变量时间序列预测&#xff0c;WOA-CNN-GR…

小象课堂在线授课教育系统

此项目包含后端全部代码&#xff0c;前端包括后台和web界面的源码&#xff0c;数据库用的mysql,可当作课设或者毕设&#xff0c;还可写入自己的简历中 web界面展示&#xff1a; 前端后台界面展示&#xff1a; 用户管理 课程管理 内容配置 订单管理 系统管理 系统监控

Postman项目实战一

项目简介&#xff1a;外卖任务委派系统 测试脚本&#xff1a; 登录&#xff0c;获取token创建任务&#xff0c;获取任务id根据id&#xff0c;修改任务根据id&#xff0c;查询任务根据id&#xff0c;删除任务根据id&#xff0c;验证任务已被删除 步骤&#xff1a; 1.创建Col…

聚隆转债上市价格预测

聚隆转债 基本信息 转债名称&#xff1a;聚隆转债&#xff0c;评级&#xff1a;A&#xff0c;发行规模&#xff1a;2.185亿元。 正股名称&#xff1a;南京聚隆&#xff0c;今日收盘价&#xff1a;16.64元&#xff0c;转股价格&#xff1a;18.27元。 当前转股价值 转债面值 / 转…

炒股票怎么加杠杆_融资融券账户怎么开通

炒股票作为一种投资方式&#xff0c;可以带来不错的回报。然而&#xff0c;对于那些希望以较小的资金获得更高收益的投资者来说&#xff0c;加杠杆炒股票是一个值得考虑的选择。本文将为您介绍加杠杆炒股票的意义&#xff0c;以及如何开通融资融券账户。 加杠杆炒股票的意义&a…

vue常识

vue是一套用于构建用户界面的渐进式框架,vue的核心库只关注视图层 1.声明式框架 ● 早在jquery的时期,编写代码都是命令式的,命令式框架的特点就是关注过程 ● 声明式框架更加注重结果,命令式的代码封装到了vue.js中,过程靠vue.js来实现 声明式代码更加简单,不需要关注实现,…

ssm学生请假系统源码和论文

ssm学生请假系统034 开发工具&#xff1a;idea 数据库mysql5.7 数据库链接工具&#xff1a;navcat,小海豚等 技术&#xff1a;ssm 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集…

知了汇智与西南石油大学合作开展网络安全生产实习,培养实战型人才

近年来&#xff0c;随着互联网的快速发展和数字化转型的推进&#xff0c;网络安全问题日益突出。然而&#xff0c;网络安全应用型人才的供给却严重不足&#xff0c;导致行业面临着巨大的挑战和风险。面对这一现状&#xff0c;开展校企合作&#xff0c;培养优秀的网络安全行业人…