-
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