linux内存分配堆栈数据段代码段,linux – LD_PRELOAD堆栈和数据段内存分配
你好,
我正在编写一个Linux模块(基于名为“Ccontrol”的GitHub项目)来创建缓存分区(a.k.a页面着色),以减轻定时侧通道攻击(用于防止Prime Probe等攻击).
我已经使用LD_PRELOAD系统env变量来覆盖所有malloc(),calloc()和free()调用,并用颜色感知调用替换它们.
现在我正在寻找颜色堆栈和数据段的颜色.
用于为新生进程分配内存的系统调用/库是什么?
有没有办法使用LD_PRELOAD或任何其他方法覆盖此调用(不重新编译内核)?
谢谢大家,
加尔
解决方法:
有两个内存分配系统调用:sbrk,它扩展(连续)堆段和mmap,用于将单独的匿名内存段映射到调用进程的地址空间.
但是,您将无法使用LD_PRELOAD来覆盖这些.
如果您覆盖的代码通过DSO导出的libc包装器进行这些调用,您将只能执行此操作,这意味着您将无法通过未导出的包装器覆盖直接系统调用和系统调用(DSO-internal( __attribute __((visibility(“hidden”)))),大多数libc实现都使用了很多.你也无法覆盖动态链接器所做的系统调用.
如果您需要一种强大的覆盖调用方式,则需要转向ptrace或修改内核.
标签:linux,linux-kernel,linux-device-driver
来源: https://codeday.me/bug/20190705/1391242.html
linux内存分配堆栈数据段代码段,linux – LD_PRELOAD堆栈和数据段内存分配相关推荐
- 汇编语言中将数据、代码、栈放入不同的段
数据.代码.栈放入不同的段 在学习汇编语言,将数据.代码.栈放入不同的段.参考王爽老师的<汇编语言>第四版,对P133的汇编代码,进行了个人理解标注.仅供参考,存在错误之处,请大家斧正. ...
- 有未经处理的异常(在 xx.exe 中): 堆栈 Cookie 检测代码检测到基于堆栈的缓冲区溢出。
有未经处理的异常(在 xx.exe 中): 堆栈 Cookie 检测代码检测到基于堆栈的缓冲区溢出. 参考文章: (1)有未经处理的异常(在 xx.exe 中): 堆栈 Cookie 检测代码检测到基 ...
- 堆栈 Cookie 检测代码检测到基于堆栈的缓冲区溢出
报错:0x000CC3C9 处有未经处理的异常(在 image_opencv2.exe 中): 堆栈 Cookie 检测代码检测到基于堆栈的缓冲区溢出. 主要检查代码中有没有对数组的越界操作, ...
- 日志中每段代码执行时间的和不等于整段代码执行的总时间
代码逻辑: def getInlink() A -> B -> C -> D 在tornado中调用getInlink @tornado.gen.coroutinedef g ...
- 采样点流量数据提取(代码分享):利用ECMWF开源数据
内容介绍: 利用欧洲中期天气预报中心(ECMWF)开源数据提取采样时采样点流量数据,在研究范围为大尺度时适用. 数据来源:River discharge and related historical ...
- 将数据、代码、栈放入不同的段
在前面的内容中,我们在程序中用到了数据和栈,将数据.栈.和代码都放到一个段里面.我们在编程的时候要注意何处是数据.何处是栈.何处是代码.这样做的两个问题: ①把它们放到一个段中使程序更加的混乱 ②当数 ...
- 堆栈 cookie 检测代码检测到基于堆栈的缓冲区溢出_漏洞公告 | 华硕(ASUS)家庭无线路由器远程代码执行0day...
漏洞公告: 华硕(ASUS) RT系列是由华硕(ASUS)发布的针对家庭用户的中高端无线路由器,市场占用率比较高. 华硕路由器(ASUS)提供Web服务的组件存在一个设计缺陷:存在缓冲区溢出问题, ...
- 堆栈 cookie 检测代码检测到基于堆栈的缓冲区溢出_WhatsApp缓冲区漏洞曝光 攻击者可通过MP4文件执行远程代码...
Facebook 刚刚披露了 WhatsApp 缓冲区漏洞的部分细节.在上周的一份安全公告中,其表示 CVE-2019-11931 是由基于堆栈的缓冲区溢出 bug 引发,导致攻击者可向受害者发送精心 ...
- python串口连续数据_Python代码从串口连续接收可变数据
通常,您与微通信所做的工作是将单个字符用于轻量级或创建通信协议.基本上你有一个开始标志,结束标志和某种校验和,以确保数据正确传输.有很多方法可以做到这一点. 以下代码适用于Python 3.您可能必须 ...
- java代码执行linux命令_怎么用java代码运行linux命令
展开全部 以下方法支持Linux和windows两个系统的命令行调用.还用到了apache的lang工具包32313133353236313431303231363533e78988e69d83313 ...
最新文章
- 高并发和分布式中的幂等处理
- 廖雪峰python教程在哪看_:廖雪峰python教程在哪
- 集群负载均衡之lvs和keepalived
- nginx 499 502 413 404 处理
- Android提供了哪些主要UI控件,Android必备:Android UI控件的了解与学习
- UnityShader5:基本内置变量
- TI TMS570LC43xx 裸机开发快速上手
- 锐起无盘服务器内存盘,关于锐起无盘的缓存原理以及使用方法
- Android--NFC读写
- 通信基础 7 —— 遍历保密速率、谱分解物理意义
- mysql user.myd_“./mysql/user.MYD”未找到(ERRCODE:13 - 拒绝权限)
- php fpm 报错,php-fpm报错
- Kubernetes 节点调度原理及调度策略
- MySQL中关于字符编码的配置
- Matlab求出图像中每个细胞的细胞核与核仁面积之比代码
- 图情论文笔记 | 主题图书馆建设中的若干问题与发展思考(柯平)
- (更新时间)2021年6月5日 商城高并发秒杀系统(.NET Core版) 36-高并发秒杀项目k8s集群部署
- 基于STM32蓝牙智能手环脉搏心率计步器体温显示设计
- ★ .net应用程序如何表现XP风格?
- React获取多个输入框的值