2022.4.11-17BUU刷題記錄
[MRCTF2020]搖滾DJ
1.題目概述
2.解題過程
聽了一下,真難聽,
audacity開啟,波形是平的
和前面那道題有點像
kali的qsstv工具
安裝qsstv
apt install qsstv
安裝成功後,在終端下輸入qsstv,自動開啟
下載好後,在終端輸入qsstv,系統自動開啟qsstv,然後點選Options->configuration->sound->sound input->from file
點選OK,然後點選這個按鈕,選擇要解碼的檔案,然後就開始解碼啦
flag{r3ce1ved_4n_img}
3.flag
flag{r3ce1ved_4n_img}
26.[XMAN2018]排位賽]file
1.題目概述
2.解題過程
看來又是一道記憶體取證題
檢視基本資訊
./volatility -f 26.img imageinfo
奇怪了,怎麼沒有結果
那就要使用另一個程式來處理了
trid下載與安裝,參考
(11條訊息) 檔案型別識別工具:TrID(trid)下載安裝及使用_Red snow的部落格-CSDN部落格
然後就可以進行分析了
trid分析檔案
./trid 26.img
可以看到可能的檔案型別
沒發現什麼,再去虛擬機器掛載看看
mount掛載
命令:
mount 26.img /mnt
進行掛載,不成功的話可以加個sudo或者多試幾次,直至輸入ls出現檔案
輸入cd /mnt,再輸入ls出現檔案表明掛載成功
然後再輸入ls -lha檢視具體資訊
到檔案系統中開啟mnt資料夾,檢視分離出的圖片
並沒有找到什麼,但是前面ls檢視時有lost+found字樣,百度一下
ext指extundelete,可以恢復檔案,具體可以參考這篇部落格
(11條訊息) 檔案恢復原理&&Linux檔案恢復工具-foremost&extundelete_Red snow的部落格-CSDN部落格_foremost 恢復
extundelete恢復檔案
使用命令:
extundelete 26.img --restore-all
然後開啟恢復的資料夾
列印輸出
使用cat命令列印或者010開啟檔案
cat file.17
或者先檢視恢復的檔案是什麼,然後再打印出來
010
3.flag
flag{fugly_cats_need_luv_2}
4.知識點
cat,ls,extundelete命令恢復檔案,mount掛載檔案
27.[SCTF2019]Ready_Player_One
1.題目概述
2.解題過程
一上來有點懵,這是啥?
執行一下那個程式看看,是一個遊戲,靠最右側直接一路上去就發現flag了
flag{You_Are_The_Ready_Player_One!!!For_Sure!!!}
3.flag
flag{You_Are_The_Ready_Player_One!!!For_Sure!!!}
4.知識點
玩遊戲獲得flag
28.[GUET-CTF2019]520的暗示
1.題目概述
2.解題過程
這個題目名稱好有意思
010開啟,
photo.dat,那應該和圖片有關係,分析開頭和結尾
有點類似於jpg的FFD8FF檔案頭和FFD9檔案尾誒,那要怎麼樣轉換成jpg格式呢?想到了那幾個常用的計算方法——二進位制與,二進位制或,二進位制異或和二進位制反轉,優先考慮異或,這個比較常見,CC和FF的二進位制分別是:
CC 11001100
FF 11111111
CC^x=11111111
異或運算子是這個意思,參與運算的兩個值,如果兩個相應bit位相同,則結果為0,否則為1
(1) 00=0,01=1 0異或任何數=任何數
(2) 10=1,11=0 1異或任何數-任何數取反
(3) 任何數異或自己=把自己置0
這樣就可以一位位地推匯出x是多少了,1-8位x與CC的bit位全是不同的,這就很簡單,x應該是
00110011,轉換成16進位制就是33
與33異或
010
看起來很成功
儲存,修改後綴為jpg,開啟,
這張圖片還從來沒見過,百度一下
原來需要根據圖片中的資訊定位,查詢網站
https://v.juhe.cn/cell/Triangulation/index.html?s=inner
這個flag很離譜,是中文
flag{桂林電子科技大學花江校區}
3.flag
flag{桂林電子科技大學花江校區}
4.知識點
二進位制異或,聯通基站定位
29.Beautiful_Side
1.題目概述
2.解題過程
看題目描述,應該和二維碼有關
010開啟
在檔案尾後面發現了png資料,存下來
選中後複製為16進位制文字
然後新建一個010檔案,貼上自16進位制文字
存下來,開啟
是一張殘缺的二維碼,試了試掃不出來
再回到剛剛圖片,stegsolve開啟也沒發現啥,silent eye也沒解出來東西,
百度一下能不能修復
試試看
藉助網站
QRazyBox - QR Code Analysis and Recovery Toolkit (merricx.github.io)
新建一個project
然後新建空白的二維碼(匯入會出錯)
調整大小為29x29,這是根據那個殘缺的二維碼確定的
尺寸說明如下,共29個間隔
然後就一點點的根據這一半二維碼進行填充,記得,補全黑色部分後,也要把白色的部分填補上,因為灰色是算“空”的。藉助這個分隔進行填充,不然容易搞錯
然後點選Tools-Extract QR Infomation
就看到flag了
3.flag
flag{OQWIC_4DS1A_S034S}
4.知識點
二維碼修復工具
30.大流量分析(二)
1.題目概述
2.解題過程
開啟第一個看看
郵箱協議
POP3
POP3是Post Office Protocol 3的簡稱,即郵局協議的第3個版本,它規定怎樣將個人計算機連線到Internet的郵件伺服器和下載電子郵件的電子協議。它是因特網電子郵件的第一個離線協議標準,POP3允許使用者從伺服器上把郵件儲存到本地主機(即自己的計算機)上,同時刪除儲存在郵件伺服器上的郵件,而POP3伺服器則是遵循POP3協議的接收郵件伺服器,用來接收電子郵件的。(與IMAP有什麼區別?)
SMTP
SMTP 的全稱是“Simple Mail Transfer Protocol”,即簡單郵件傳輸協議。它是一組用於從源地址到目的地址傳輸郵件的規範,通過它來控制郵件的中轉方式。SMTP 協議屬於 TCP/IP 協議簇,它幫助每臺計算機在傳送或中轉信件時找到下一個目的地。SMTP 伺服器就是遵循 SMTP 協議的傳送郵件伺服器。
SMTP 認證,簡單地說就是要求必須在提供了賬戶名和密碼之後才可以登入 SMTP 伺服器,這就使得那些垃圾郵件的散播者無可乘之機。
增加 SMTP 認證的目的是為了使使用者避免受到垃圾郵件的侵擾。IMAP
IMAP全稱是Internet Mail Access Protocol,即互動式郵件存取協議,它是跟POP3類似郵件訪問標準協議之一。不同的是,開啟了IMAP後,您在電子郵件客戶端收取的郵件仍然保留在伺服器上,同時在客戶端上的操作都會反饋到伺服器上,如:刪除郵件,標記已讀等,伺服器上的郵件也會做相應的動作。所以無論從瀏覽器登入郵箱或者客戶端軟體登入郵箱,看到的郵件以及狀態都是一致的。(與POP3有什麼區別?)
百度一下常用的SMTP協議
過濾smtp流量,可以很明顯的看到幾個郵箱地址
開啟其中一條
可以知傳送郵箱是 [email protected]
3.flag
flag{ [email protected]}
4.知識點
SMTP郵箱協議
31.[GKCTF 2021]FireFox Forensics
1.題目概述
2.解題過程
取證題目,名稱是火狐,可以藉助一個工具
firepwd ,github下載工具
https://github.com/lclevy/firepwd
開啟解壓後的資料夾,開啟終端,輸入
python firepwd.py logins.json
在最後面看到flag
如果出錯自行百度
注意這個flag不用flag{}包起來
3.flag
GKCTF{9cf21dda-34be-4f6c-a629-9c4647981ad7}
4.知識點
firepwd工具的使用
32.[DDCTF2018]第四擴充套件FS
1.題目概述
2.解題過程
010開啟
百度一下The fourth extended filesystem
這不是前面那個檔案恢復程式嘛
沒有img檔案,先放著,
檢視圖片屬性
有備註,第一時間聯想到壓縮包密碼
用Kali的foremost分離看看
foremost分離
jpg資料夾裡還是剛剛那張圖片,壓縮包開啟是加密的,正好用前面那個備註裡的資訊破解一下試試
Pactera
還真是解壓密碼,得到一個file.txt
這熟悉的感覺,
統計字頻
指令碼
import re
file = open('file.txt') #根據路徑自行調整
line = file.readlines()
file.seek(0,0)
file.close()
result = {}
for i in range(97,123):
count = 0
for j in line:
find_line = re.findall(chr(i),j)
count += len(find_line)
result[chr(i)] = count
res = sorted(result.items(),key=lambda item:item[1],reverse=True)
num = 1
for x in res:
print('頻數第{0}: '.format(num),x)
num += 1
D:\Programes\py37_work\Scripts\python.exe D:/Programes/pythonProject/字頻統計.py
頻數第1: ('h', 1700)
頻數第2: ('u', 1650)
頻數第3: ('a', 1600)
頻數第4: ('n', 1550)
頻數第5: ('w', 1500)
頻數第6: ('e', 1450)
頻數第7: ('s', 1350)
頻數第8: ('i', 1300)
頻數第9: ('k', 1250)
頻數第10: ('o', 1150)
頻數第11: ('b', 0)
頻數第12: ('c', 0)
頻數第13: ('d', 0)
頻數第14: ('f', 0)
頻數第15: ('g', 0)
頻數第16: ('j', 0)
頻數第17: ('l', 0)
頻數第18: ('m', 0)
頻數第19: ('p', 0)
頻數第20: ('q', 0)
頻數第21: ('r', 0)
頻數第22: ('t', 0)
頻數第23: ('v', 0)
頻數第24: ('x', 0)
頻數第25: ('y', 0)
頻數第26: ('z', 0)
程序已結束,退出程式碼0
結果似乎有點問題,還是用網站吧
網站
語料庫線上--字詞頻統計 (zhonghuayuwen.org)
3.flag
flag{huanwe1sik4o!}
4.知識點
圖片屬性,foremost分離,字頻統計