和上一题一样,需要自己写脚本跑
打开场景,看源码,需要你post带一个margin过去
常规思路,抓包,在response里有flag base64编码
解码,得到flag,尝试提交失败
刷新发现flag在变,因此需要写脚本
同时需要注意的一次解码的仍然是base64编码的,两次解码,得到margin带过去就好
至于margin,熟悉CSS的知道他是边距,当然是个数字
写脚本
#! /usr/bin/python
import requests
import re
import base64
s=requests.session()
url=“http://114.67.246.176:17375/”
result=s.get(url).headers
print(result)
flag1=result[‘flag’]
string1=base64.b64decode(flag1).decode(“utf-8”)
flag2=string1.split("😊[1]
print(flag2)
string2=base64.b64decode(flag2).decode(“utf-8”)
print(string2)
key={“margin”:string2}
flag=s.post(url,key)
print(flag.text)
这里需要注意的由于python3运行,而b64decode默认返回的是bytes类型的字符串,可以自己输出看一下,而split方法需要的是string类型的字符串,
所以需要自己手动解码一次,python3默认是utf-8编码
带个margin参数过去就好
参考视频链接: https://www.bilibili.com/video/BV1mg411u7yT/