ctf3

首先,他提示easy_nbt? ?我是根本看不懂,搜了一下發(fā)現(xiàn)是個文件格式
然后解壓文件解壓出來之后,發(fā)現(xiàn)是我的世界的存檔
依然沒有思路
答案一:

然后對解壓之后的文件直接記事本打開就可以找到flag
答案二:
找到這個工具

用這個打開文件

使用serach? ?value設置為flag


.dat文件是一種數據文件,只能有特定的工具打開
telnet

解壓之后發(fā)現(xiàn)后綴是pcap
我首先去搜telnet ,pcap 是什么
telnet 是命令啊,跟網絡有關的
pcap文件是常用的數據報存儲格式,可以理解為就是一種文件格式,只不過里面的數據是按照特定格式存儲的,所以我們想要解析里面的數據,也必須按照一定的格式。
額
直接用記事本打開這個文件就可以看到flag

眼見非實

解壓出來是一個docx文件

當我把文字內容復制過來的時候發(fā)現(xiàn)除了pk其他都是沒的
就是編碼的問題
用winhex打開,發(fā)現(xiàn)頭是50 4b 03 04,發(fā)現(xiàn)是zip,修改后綴為rar,解壓后,得到一個word文檔 打開發(fā)現(xiàn)也是一大推亂碼 也找不到flag 再用winhex打開,發(fā)現(xiàn)頭是50 4b 03 04 ,把文檔后綴名改為rar 再次解壓 然后再用資源管理器的搜素功能,查當前目錄下的所有文件關鍵字為flag 找到后可以用一個方式打開 或者把后綴名改為txt

解壓后得到文件夾,基本全是xml

看起來有點問題
看看各個xml
發(fā)現(xiàn)在document.xml里面看到flag
flag{F1@g}
任何office文件其實都是一個zip壓縮包,可以直接解壓的!
啊噠
是一張圖片

然后評論區(qū)說考慮壓縮文件,我覺得是有道理的
改成zip之后發(fā)現(xiàn)是要密碼的,密碼在哪呢


看到開頭這里有數字,嗯試試吧,其他中間基本是亂碼,w3c的網站啥的,沒啥東西
當然也考慮解壓的問題,畢竟基本全是亂碼啥的
還有說用kali 的binwalk來分離,等回去嘗試

直接輸入時不行的,密碼錯誤
然后這個數字也是16進制的

解壓即可

16進制反面的思路:
可以去找個工具看看16進制能轉換啥
使用kali試試:
binwalk 看看這個圖片

foremost工具分離文件
(kali沒有安裝會提醒你安裝的)


然后這個壓縮包還是需要密碼的
還是按上面的方式
這里我直接cat 這個jpg文件

找一下16進制的解碼工具
得到sdnisc_2018

flag{3XiF_iNf0rM@ti0n}
抄錯的字符

我順手搭建了一下vscode
然后把代碼復制了一下,代碼晚上都有,php的也好,python 的也好
import base64
import os
str = "QWIHBL GZZXJS XZNVBZW"
Dict = [["Q","q","9"],["W","w"],["I","i","1"],["H","h"],["B","b","6"],["L","l"],
? ? ? ?["G","g","9"],["Z","z","2"],["Z","z","2"],["X","x"],["J","j"],["S","s","5"],
? ? ? ?["X","x"],["Z","z","2"],["N","n"],["V","v"],["B","b","6"],["Z","z","2"],["W","w"]]
max_Dict = [3,2,3,2,3,2,
? ? ? ? ? ?3,3,3,2,2,3,
? ? ? ? ? ?2,3,2,2,3,3,2]
map_Dict = [1]*len(Dict)
max_count = 1
for k in max_Dict:
? ?max_count = max_count*k
print(max_count)
def strDict(map_D,D):
? ?s = ""
? ?for i,j in zip(range(len(D)),map_D):
? ? ? ?s = s + D[i][j-1]
? ?return s
f = open("result.txt","w")
def decideStr(String):
? ?key="~!@#$%^&*()_+-={}[]|\\:;\"\',./? "
? ?for i in list(String):
? ? ? ?if not (i.isalnum() or i in key):
? ? ? ? ? ?return False
? ?return True
if len(map_Dict) == len(map_Dict):
? ? ? ?count = 0
? ? ? ?while not (map_Dict == max_Dict):
? ? ? ? ? ?for i in range(len(map_Dict)):
? ? ? ? ? ? ? ?if map_Dict[i] == max_Dict[i]:
? ? ? ? ? ? ? ? ? ?map_Dict[i] = 1
? ? ? ? ? ? ? ?elif map_Dict[i] < max_Dict[i]:
? ? ? ? ? ? ? ? ? ?map_Dict[i] = map_Dict[i] + 1
? ? ? ? ? ? ? ? ? ?break
? ? ? ? ? ? ? ?else:
? ? ? ? ? ? ? ? ? ?print("ERROR OverFlow")
? ? ? ? ? ?s = strDict(map_Dict,Dict)
? ? ? ? ? ?d = base64.b64decode(s+"=")
? ? ? ? ? ?try:
? ? ? ? ? ? ? ?d_str = d.decode()
? ? ? ? ? ? ? ?if decideStr(d_str):
? ? ? ? ? ? ? ? ? ?re = s+"=="+"\t\t\t"+d_str+"\n"
? ? ? ? ? ? ? ? ? ?f.write(re)
? ? ? ? ? ?except:
? ? ? ? ? ? ? ?pass
? ? ? ? ? ?count += 1
? ? ? ? ? ?print(count,"---",max_count)
? ? ? ? ? ?if max_count < count:
? ? ? ? ? ? ? ?os.abort()
我這里放一份
但是跑了一段時間之后,輸出的是一個超級長的文本1000多種,然后主要是不是亂碼的就可以考慮

也跟作者名字有關
簡單取證1

解壓之后:打開或者cat也基本是亂碼啥的,內容量也是比較大的,先掃個包
使用binwalk直接看一下文件
提示是mysql文件

看了一下解釋,發(fā)現(xiàn)是windows下的系統(tǒng)目錄,主要來存放用戶名和密碼的
他們說使用取證的工具,那么我現(xiàn)在是在kali下的又該怎么做呢
取證工具一般使用procdump配合mimikatz
我先嘗試在windows下面去試試,因為deb下的命令有點問題(可能我不懂吧)
然后下載好之后運行

lsadump::sam /sam:SAM /system:SYSTEM 使用命令


這里也有一條
user應該就是了,再加個密碼
這個Hash NTLM去搜一下什么:
介紹:
LM Hash是Windows使用的最古老的密碼存儲,其歷史可追溯到1980年代的OS / 2。在LAN Manager協(xié)議中使用,由于允許的字符集有限,因此它們很容易破解。如果仍然可用,則可以從Windows系統(tǒng)上的SAM數據庫或域控制器上的NTDS數據庫中獲取它們
NTLM Hash,Vista之后現(xiàn)代Windows系統(tǒng)使用的Hash,它的前身是LM Hash,兩者相差不大,只是使用的加密算法不同。通常意義上的NT Hash指存儲在SAM數據庫及NTDS數據庫中對密碼進行摘要計算后的結果,NT Hash可以通過轉儲SAM數據庫或使用Mimikatz來獲得,可直接用于PtH,并且通常存在于lsass進程中,便于SSP使用
NT Hash是支持Net NTLM認證協(xié)議及本地認證過程中的一個重要參數。其長度為32位,由數字與字母組成
Windows不存儲用戶的明文密碼,它會將用戶的明文密碼經過加密后存儲在SAM數據庫中。SAM文件的路徑是%SystemRoot%\system32\config\sam
。在進行本地認證的過程中,當用戶登錄時,系統(tǒng)將用戶輸入的明文密碼加密成NTLM Hash,與SAM數據庫中的NTLM Hash進行比較,從而實現(xiàn)認證
在域環(huán)境下,域控制器中也存在這樣的數據庫AD (Account Database),位于ntds.dit
關于SAM我們也可以在config中找到,的確起到儲存的作用
生成算法邏輯:
明文轉換為16進制ASCII碼
使用little-endian(小端)序將其在轉換為Unicode格式。0x80之前的標準ASCII碼轉換成Unicode碼,就是簡單地從0x??變成 0×00??。此類標準ASCII串按little-endian序轉換成Unicode串,就是簡單地在原有每個字節(jié)之后添加0×00
對所獲取的 Unicode串進行標準MD4單向哈希,無論數據源有多少字節(jié),MD4固定產生128-bit的哈希值
--
使用 這網站解密
md5在線解密破解,md5解密加密 (cmd5.com)
總共兩個hash NTML 第一個我直接復制查詢是不行的
第二個解密之后是:

ok那現(xiàn)在吧已知的都嘗試一下
結果:
?flag{administrator-QQAAzz_forensics}
關于mimikatz 的一些命令:
::
命令可以查看幫助信息
lsadump::lsa /inject 查看ntds.dit與sam文件的信息,如果沒有查看ntds.dit的就只查看sam
sekurlsa::logonpasswords 列出已登陸用戶的密碼(比較常用)
lsadump::sam?sam表獲取Hash
具體大家可以參考一下相關的博客,這里不在贅述
那么這里還是想在kali中嘗試,該怎么做呢
主要是debian下該怎么使用
/.-

莫斯密碼,找個網站接一下就好
然后%u7d是ASCII HEX編碼解碼兩個{}、
這個大小寫轉換我是不理解,反正大寫不對,可能是 設定的問題
聰明的小羊

線索在描述里
本來是以為lg跑后面去了,然后我按照我自己的理解,寫了一個flag確實不對
看評論是柵欄密碼,然后找個網站破解一下就有了,而且柵欄密碼確實跟幾個柵欄有關
這里介紹一下柵欄密碼:
加密原理
①把將要傳遞的信息中的字母交替排成上下兩行。
②再將下面一行字母排在上面一行的后邊,從而形成一段密碼。
③例如:
明文:THE LONGEST DAY MUST HAVE AN END
加密:
1、把將要傳遞的信息中的字母交替排成上下兩行。
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
2、 密文:
將下面一行字母排在上面一行的后邊。
TEOGSDYUTAENN HLNETAMSHVAED
解密:
先將密文分為兩行
T E O G S D Y U T A E N N
H L N E T A M S H V A E D
再按上下上下的順序組合成一句話
明文:THE LONGEST DAY MUST HAVE AN END
道理也好懂,可以給的提示太少了,可能需要反應,提到柵欄就去想柵欄
ok

文件為:
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook! Ook! Ook! Ook!
Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook!
Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook?
Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook!
Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook!
Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook?
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook?
Ook. Ook? Ook! Ook. Ook? Ook! Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook!
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook? Ook. Ook? Ook!
Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook! Ook. Ook? Ook.
明眼看到Ook后面. ! ? 這三個字樣
然后可以看到Ook是有解碼網站的在bugku里面就有
復制粘貼就有了Ook to text
flag{0a394df55312c51a}
[+-<>]

bugku里面也有
復制粘貼就出結果
flag{0d86208ac54fbf12}
滑稽

F12就可以看到
<!--flag{c657a7d793398063d7976fbb80ff2e8b}-->
這個網站確實比較有意思