bugku速度要快writeup

查看源码
这里写图片描述
在响应头找到flag属性,手动解码发现被Base64编码了两次
这里写图片描述
先分别看GET和POST请求头和响应头

import requests
import base64 

url = 'http://120.24.86.145:8002/web6/'

get_response = requests.get(url)
print('GET Request Headers:\n', get_response.request.headers, '\n')
print('GET Response Headers:\n', get_response.headers, '\n')

key = base64.b64decode(base64.b64decode(get_response.headers['flag']).decode().split(":")[1])
post = {'margin': key}
post_responese = requests.post(url, data = post)
print('POST Request Headers:\n', post_responese.request.headers, '\n')
print('POST Response Headers:\n', post_responese.headers, '\n')

会发现两个的Set-Cookie和flag都不一样,所以要保证POST和GET在同一个会话中
贴脚本

  •  
  • 没有加mid=mid.decode()那一步时一直报错;

  •  

    ——是因为字符串有byte类型和str类型,有时操作数类型和操作类型不匹配就会报错……这时候就要把类型转换一下(无论是转换操作数还是操作都行,只要两者匹配

    一个简单的方法:
      1、byte型转str型

              mid=mid.decode()

      2、str型转byte型

              mid=mid.encode()

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值