-
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
