1. F12查看网页源代码
根据显示的内容,猜测可能需要使用post提交margin的值,那么接下来就找margin对应的值。
2.查看响应头
看到flag,base64解码,提交之后发现是错的,后面才知道flag是变化的。
3.还是根据第一步老老实实找margin值,抓包发现phpsession字段,猜测获取页面信息和提交margin值,可能需要使用同一个session
import requests
import base64
url = 'http://123.206.87.240:8002/web6/'
req = requests.session()
res = req.get(url)
#获取请求头中的flag
flag = res.headers['flag']
#对flag进行base64解码 --- 得到的是bytes类型
txt = base64.b64decode(flag)
#把bytes类型转换成str类型 --- 即对其进行解码 详解请看 https://blog.csdn.net/lanchunhui/article/details/72681978
txt = bytes.decode(txt)
#截取字符串flag后面的字段
txt = txt[txt.index(":")+2:]
#然后再对其进行base64解码
txt = base64.b64decode(txt)
#根据题目提示 now you have to post the margin what you find --- 需要根据margin属性进行post请求提交
#构造data,另margin属性为爆破出来的txt
data = {'margin': txt}
ans = req.post(url,data)
print ans.content
简化版
import requests
import base64
import sys
url = 'http://123.206.87.240:8002/web6/'
req = requests.session()
res = req.get(url)
flag = res.headers['flag']
flag = base64.b64decode(flag)
key = flag[flag.find(':')+2:]
key = base64.b64decode(key)
key = {'margin': key}
ans = req.post(url,key)
print ans.content