第乙個實驗吧的題目,不太會做,參考了很多大佬的經驗,最後發現這個題目很簡單,大概這就是入門的感覺吧!
如果你多次嘗試點開題目給的連線,就會發現,系統的金鑰一直會變,可是我的金鑰卻保持乙個,這就讓我們聯想到時間戳的概念。
時間戳:它是乙個資料,乙個什麼資料呢?乙個用來儲存在某個時間已經存在的東西的資料。
我目前了解到的本題解題方法有兩種:
1.手動操作,無需指令碼
使用題目中提示的md5解密工具(把鏈結裡面的系統的金鑰解密獲得乙個時間戳,例如是s=1547718473,時間是每秒重新整理一次,所以你要做的是與時間賽跑,開啟網頁'',然後一直重新整理重新整理再重新整理,直到頁面有彈框顯示flag,反正我是沒有耐心的,真xx慢
2.自己寫乙個指令碼(我是小白,不會,下面是抄別人的**/汗顏)
1import
time
2import
hashlib
3import
requests45
#獲取時間戳
6def
gettime():
7return (str(int(time.time()))+3)#
這裡獲取的是當前時間戳的未來3s後的時間89
#md5加密解密
10def
md5(src):
11 md5 =hash.md5()
12 md5.update(src)#
更新,重新整理
13return
(md5.hexdigest())
1415
#獲取flag的函式
16def
getflag(timestamp):
17 url = '
'+timestamp
18 r =requests.get(url)
19print
(r.content)
2021
22for i in range(50):#
機器幫我重新整理獲取頁面資訊
23getflag(gettime9))
24 time.sleep(1)
2526 #執行該指令碼,結果顯示視窗總有一條會顯示頁面有乙個alert彈窗,哈哈,這裡面就是flag啦
雜湊函式之MD5
md5演算法是輸入長度小於2 64位元的訊息,輸出為128位元的訊息摘要。輸入訊息以512位元的分組為單位處理。具體過程如下 直接使用python中的hashlib模組,並將加密結果以16進製制形式顯示 import hashlib 生成md5數字指紋。s b abc 定義位元組型字串 md has...
MD5的用法之加密
public static final string encodehex byte bytes return buf.tostring try catch nosuchalgorithmexception e 簡單應用 public string md5 string tochapter catch...
自學360之MD5加密
1.獲取乙個messgedigest messagedigest digest messagedigest.getinstance md5 選擇md5的加密方式digest.digest password 對所選擇的password進行加密 返回的型別是byte型別 byte bytes diges...