linux 高版本libc虚拟机调试libc-2.23 gdb heap指令报错解决方案

事情是这样的。

在做一个堆题,libc-2.23,我自己用的deepin是2.28,用patchelf将本地改过之后gdb.attach报错。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

后来发现,只有用本机的libc,才能用debug调试,那么本机的是2.28,想调这2.23就得换个机子。

方案1是重新整个虚拟机

ubuntu16.04 就是libc-2.23的,重新整个虚拟机之后里面环境重新配一遍,然后在里面调试。

但是我们知道,虚拟机首先它比较比较笨重,开个虚拟机几分钟,而且占用内存比较大,所以我用了第二种。

方案2是起个docker

不了解docker的可以上网搜一下,在docker里面开个容器,然后把镜像拉下来,然后开始配环境。

配环境也是一个艰辛的过程,比虚拟机配环境可难太多了。
容器开始运行后你会发现只有一行目录,就剩下的啥都没了。

实际操作的话就是先下载安装docker,然后把镜像拉下来,然后开个容器。

网上教程很多,就不说了,一搜一大把。

配环境的话下面链接自取。
docker下ubuntu16.04从0配pwn环境

方案三是修改自己的patchelf指令

这个比较靠谱一点。

用这个指令。

patchelf --set-interpreter /home/wuangwuang/glibc-all-in-one-master/glibc-all-in-one-master/libs/2.23-0ubuntu11.2_amd64/ld-2.23.so --set-rpath /home/wuangwuang/glibc-all-in-one-master/glibc-all-in-one-master/libs/2.23-0ubuntu11.2_amd64 ./41


patchelf --set-interpreter 目录/ld  --set-rpath 目录  。/binary
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值