ciscn_2019_s_3
Ubuntu18
0x01
checksec
1 | [*] '/home/zelas/Desktop/pwn/ciscn_2019_s_3/ciscn_s_3' |
IDA
vuln()
1 | signed __int64 vuln() |
0x02
现有gadget
1 | .text:00000000004004D6 gadgets proc near |
现有gadget不足够 ,用csu里面的
1 | loc_400580: |
rip | rax | rdi | rsi | rdx |
---|---|---|---|---|
syscall | 0x3B | 0 | 0 | 0 |
csu | edi=r13d | rsi=r14=0 | rdx=r15 | |
mov_rax_0x59_ret | /bin/sh+0x50 | 0 | 0 | |
execve | pop_rdi_ret | |||
/bin/sh |
r12 + rbx*8 = /bin/sh
思路 利用 ret2__libc_csu_init 去构造 execve(“/bin/sh”,0,0) 来 getshell
0x03
exp
1 | from pwn import * |
0x04
思路 SROP
0x05
1 | # coding:utf8 |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果