这道题看标题就嗅到了一股编程的气息,绝对是人做不到的那种。
老方法先看
要快点干什么也没有说清楚。查看网页源代码!
有一条很关键的注释,需要POST the margin。这个margin在哪里找呢??
一般在网页的CSS里面,或者说网站发包的头部里面。
那么先打开BurpSuite进行抓包检查。
这里据说有一条PHPSESSID表示session 的 id。
打开其中一个包,选择Response,发现在头部果然有flag,也就是要用这个flag的值表示成margin的值再POST上去就可以了,哼哼。
不过多了个心眼,点击了一下其他的包看看,果不其然!!!!
flag在变的啊!!!的啊!!的啊!
所以又到了用python解决的光辉时刻。
首先自己想了一下怎么写的,学习了base64也有模块可以直接使用。
可是报错了,因为不是str的格式,网上说是运用decode()和encode()函数即可转换。
import requests
import base64
url = "http://123.206.87.240:8002/web6/"
s = requests.session()
head = s.get(url).headers
flag = base64.b64decode(head["flag"])
key = flag.decode()
key = base64.b64decode(key.split(":")[1])
payload = {"margin": key}
print(s.post(url, data=payload).text)
代码是非常好理解的,只是要注意两次的base64解码,因为要用split函数将flag:后面的值给提取出来。
得到了flag啦!!!KEY{111dd62fcd377076be18a}
可喜可贺~~
求关注啊啊啊!!!!