记 linux 系统编译好的exp提权提示无gcc


在目标linux主机没有gcc的情况下提权,在很多情况下的一些内核漏洞需要在目标主机上使用gcc编译才可以正常运行,在本地编译好的exp如果本地系统与目标主机系统不一致,上传执行很大机会导致系统崩溃如脏牛提权。

目标linux系统上存在多个可以提权的漏洞,但是目标主机没有gcc,当前权限也无法下载gcc

有的提权exp虽然在本地环境上编译好了,但是在目标系统上运行还会提示没有gcc无法运行


CVE-2021-4034 漏洞 polkit 提权

如,在本地编译好的exp,到目标系统运行,运行提示gcc :not found ,即没有安装gcc,导致运行中断提权失败。

在这里插入图片描述

查看其中exp的代码,代码中调用了gcc 对pwnkit/pwnkit.c 再次编译生成pwnkit.so 文件,目标主机由于没有存在gcc,运行到这里失败。

在这里插入图片描述

分析:从代码中可以看出这一步中是编译生成so文件,由于没有gcc导致生成不了pwnkit.so文件
中断之后在当前目录下生成了pwnkit 目录
在这里插入图片描述

既然无法在exp过程中执行gcc编译so文件,我们是不是可以帮他编译好so文件,放到指定目录下
编译生成so

gcc pwnkit.c -o pwnkit.so -shared -fPIC

在这里插入图片描述

注释掉原来的exp代码中的调用gcc代码块,编译生成exp

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

运行:正常执行提权

在这里插入图片描述

解决:最后注释掉system(“gcc pwnkit/pwnkit.c -o pwnkit/pwnkit.so -shared -fPIC”);这段代码后生成的exp可以在无gcc的系统上执行
需要把生成的pwnkit 目录编译好pwnkit.so 一起上传到主机上。
即exp, pwnkit 文件夹内容
在这里插入图片描述

同理:在使用其他gcc编译好的exp提权时如果遇到提示无gcc,很大可能就是再次调用了gcc进行编译。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值