開啟題目:
抓包:
但是多go幾次就會發現flag值是動態改變的,所以傳送post請求時必須與get請求在同一會話下才能行。先把flag拿去base64解碼
py指令碼如下:
import requests
import base64
url = ""
session = requests.session()
myrequests = session.get(url) # 記錄下session
header_flag = myrequests.headers['flag']
header_flag_decode = base64.b64decode(header_flag) # python3這個操作會導致生成bytes物件,python2直接可以使用decodestring
header_flag_decode = header_flag_decode.decode() # 因為上一步解碼時生成了bytes型別物件,需要轉化為string,decode()預設編碼是utf-8
margin_value = header_flag_decode.split(": ")[1] # 取他說的flag內容,作為margin引數值
page = session.post(url, )
print(page.text)
執行得到了flag:key
bugku 速度要快
在源 裡有乙個提示,說傳遞margin引數,但是又不知道傳什麼,在響應頭里有個flag,應該是base64加密的,然後解密後發現好像還可以再解密一次,讓後再此解密,所以就把base64解密的數值傳過去試試。但是好像它一直在變,讓後就要寫指令碼自動傳遞,我也不知道為啥。寫指令碼和一直變又什麼聯絡嗎,但...
bugku 速度要快
發現了注釋資訊以及head裡面有flag欄位,明顯是乙個base64,嘗試解密提交失敗。注釋說要傳送乙個key為margin的post資料,重新整理多次發現flag都不同,所以只能指令碼了 import requests import base64 import re 正則匹配模組 s reques...
BugKu 速度要快
題目鏈結 這題開啟就只有 我感覺你得快點 這句話,抓包檢視發現有段注釋,讓我們post margin的值。看來又是編寫指令碼來實現了。關鍵是margin的值在哪呀,通過抓包在response的headers中發現了名為flag的字串,仔細看了下應該是base64加密了。所以進行解密,但只有 後面是正...