-
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