一、首先查看源码,提示要用post方法提交margin的值
二、接下来就是要找到对应的margin的值,查看下响应头,可以看到有熟悉的flag字段,且是以“=”结尾,应该就是“base64”编码,解码后得到:“跑的还不错,给你flag吧: NzQ5MTAy”,大胆猜测“NzQ5MTAy”也是“base64”编码,解码后“749102”,这个数值应该就是margin的值。
三、直接用post方法提交margin的值,发现行不通。
四、我们在抓包中发现请求头中有PHPSESSID=v4f3juaih9ui07l4kfr1mbobp09ttm6e,所以应该是提交margin要与获取页面要使用同一个session,代码如下:
import requests
import base64
s = requests.Session()
URL = "http://123.206.87.240:8002/web6/"
res = s.get(URL)
flag = base64.b64decode(res.headers['flag'])
margin_value = flag.split(': ')[1]
post_res = s.post(URL,data={"margin":base64.b64decode(margin_value)})
print(post_res.text)