1. 程式人生 > 其它 >2022.4.11-17BUU刷題記錄

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

線上進位制轉換器 | 菜鳥工具 (runoob.com)

與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有什麼區別?

參考:什麼是POP3、SMTP和IMAP?-163郵箱常見問題

百度一下常用的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分離,字頻統計