-
XDCTF misc200:
題目提示:
下載文件
用foremost分離文件
接下來用archpr 4.53進行明文攻擊
先把00002700.zip中的readme.txt提取出來壓縮成zip文件
打開archpr 4.53
點擊開始,開始攻擊
成功,點擊確定
保存
然后打開文件
得到flag
-
NSCTF misc250:
題目信息:
下載文件,用wireshark打開
題目提示下載,搜索一下http
接下來把下載的key.rar提取出來
選擇這個,右鍵,導出分組字節流,也可以直接按Ctrl+h
保存為rar文件,打開
需要密碼
再把下載的頁面提取出來
保存為1.html,打開
密碼是nsfoucs后面加上5位數字,+不算
生成字典
用archpr 4.53爆破
爆破成功
打開rar文件
得到flag
-
ROT-13變身了:
題目:
打開解題鏈接
要減13,才能轉成正確的ascii碼
a = [83,89,78,84,45,86,96,45,115,121,110,116,136,132,132,132,108,128,117,118,134,110,123,111,110,127,108,112,124,122,108,118,128,108,131,114,127,134,108,116,124,124,113,108,76,76,76,76,138,23,90,81,66,71,64,69,114,65,112,64,66,63,69,61,70,114,62,66,61,62,69,67,70,63,61,110,110,112,64,68,62,70,61,112,111,112] for i in a: j = chr(i -13) flag = "".join(j) print(flag)
運行得到的結果為
爆破md5
import hashlib flag_md5 = '38e4c352809e150186920aac37190cbc' strs = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&()*+,-./:;<=>?@[\]^_`{|}~ " for a in strs: for b in strs: for c in strs: for d in strs: md5 = hashlib.md5() flag = 'flag{www_shiyanbar_com_is_very_good_' +str(a)+str(b)+str(c)+str(d)+'}' md5.update(flag.encode()) if md5.hexdigest() == flag_md5: print(flag)
運行結果
得到flag
-
flag.xls:
題目提示:
下載文件
打開,發現有密碼
換notepad++打開
搜索flag
得到flag
-
緊急報文:
題目內容:
這題是ADFGVX加密
對照着表去解
解出
即可得到flag,flag_Xd{hSh_ctf:flagxidianctf}
-
解碼磁帶:
打開解題鏈接
得到題目內容:
你的老板剛剛得到了一卷磁帶,但與一般的磁帶不同的是,在這圈磁帶上有一些字符'o'和下划線'_'。由於你學過計算機和信息加解密,自然而然,解碼磁帶的這項任務就落到了你肩上。為了幫助你解碼,下面會先給出一個解碼樣例: 解碼樣例: o____o_ oo__o_o oo_o__o oo_o_o_ oo_o__o oo_ooo_ oo__ooo _o_ooo_ 上面的磁帶片段解碼為:Beijing. ----------------------------------------------------------------------------------------------------------------- o_o_ooo oo_o___ oo__o_o ooo__o_ oo__o_o _o_____ ooo_o__ oo_o___ oo__o_o ooo__o_ oo__o_o _o_____ oo_o__o ooo__oo _o_____ oo____o _o_____ ooo_ooo oo_o__o oo_oo__ oo_oo__ _o_oo__ ooo_o__ oo_o___ oo__o_o ooo__o_ oo__o_o _o_____ oo_o__o ooo__oo _o_____ oo____o _o_____ ooo_ooo oo____o oooo__o _o_ooo_ 那么,現在該你解碼了...... key格式:simCTF{}
前面有八行,剛好"Beijing."也有八個字符,可能一行對應一個字符,想到ascii碼
內容只有'o'和'_',想到二進制
但是不知道'o'和'_'對應的是0還是1
看了一下,'o'對應1,'_'對應0
把Beijing.那個密文保存為1.txt,需要解密的保存為2.txt
寫個腳本跑一下
one = '1' zero = '0' str_list = [] str_list_2 = [] f = open('1.txt', 'r') for i in f: j = i.replace('o', one).replace('_', zero).strip() k = chr(int(j, 2)) str_list.append(k) strs = ''.join(str_list) if strs == 'Beijing.': fq = open('2.txt', 'r') for a in fq: b = a.replace('o', one).replace('_', zero).strip() c = chr(int(b, 2)) str_list_2.append(c) flag = ''.join(str_list_2) flag = "simCTF{" + flag + "}" print(flag)
運行
得到flag