CTF论坛练习平台网址:http://123.206.31.85/challenges
1.滴答~滴
摩尔斯密码解密直接得到flag
bkctfmisc,注意格式输入即可
2.聪明的小羊
栅栏解密,栅栏数2,解密得到
KEY{sad23jjdsa2}
3.ok
打开看到一串ook代码
这是一种编程语言,百度ook在线解密可得
flag{ok-ctf-1234-admin}
在线解密网址:https://www.splitbrain.org/services/ook 第四题也是这个网址
4.这不是摩斯密码
打开看到一串特殊符号,这也是一种编程语言,百度JSFuck在线解密即可得到
flag{ok-c2tf-3389-admin}
5.简单加密
观察字符串全是ascii码表中字符,有点凯撒移位的意思
试试凯撒移位4得到
a2V5ezY4NzQzMDAwNjUwMTczMjMwZTRhNThlZTE1M2M2OGU4fQ==
一看就知道典型的base64加密方式,解密可得
key{68743000650173230e4a58ee153c68e8}
6.一段base64
打开发现一长串字符串,试试base64,得到
观察字符串没有超过8的数,猜测是八进制加密,转成16进制得到
多重解码不解释,直接搬运程序
#coding:utf-8
#python 2.7
import urllib
import re#1. 第一层base64
with open('base64.txt') as f:cipher1 = f.read()
plain1 = cipher1.decode('base64')
# print plain1, type(plain1)#2. 第二层,根据plain1的形式(0-7的整数),推测为8进制加密
cipher2 = plain1
cipher2 = re.findall(r'\d+', cipher2)
# print cipher2
plain2 = ''
for i in cipher2:plain2 += chr(int(i, 8))
# print plain2#3. 第三层,根据plain2的形式(\xdd),推测为16进制加密
cipher3 = plain2
cipher3 = re.findall(r'\d+', cipher3)
# print cipher3
plain3 = ''
for i in cipher3:plain3 += chr(int(i, 16))
# print plain3#4. 第四层,根据plain3的形式(udd*),推测为unicode
cipher4 = plain3
cipher4 = re.findall(r'u[\d\w]+', cipher4)
# print cipher4
cipher4 = ''.join(cipher4).replace('u', '\u')
# print cipher4
plain4 = cipher4.decode('unicode-escape').encode('utf-8')#将unicode转中文,来自知乎
# print plain4 #5. 第5层,根据plain4形式,将所有数字转ASCII即可
cipher5 = plain4
cipher5 = re.findall('\d+', cipher5)
# print cipher5
plain5 = ''
for i in cipher5:plain5 += chr(int(i))
# print plain5#6. 第6层,百度plain5的编码格式(&#x)得到解码方法
cipher6 = plain5
# print cipher6
cipher6 = re.findall(r'\d+\w?', cipher6)
# print cipher6
plain6 = ''
for i in cipher6:plain6 += chr(int(i, 16))
# print plain6#7. 第7层,百度plain6的编码格式(&#)得到解码方法
cipher7 = plain6
cipher7 = re.findall('\d+', cipher7)
# print cipher7
flag = ''
for i in cipher7:flag += unichr(int(i))
# print flag
flag = urllib.unquote(flag)
print flag
解码可得
flag{ctf_tfc201717qwe}
7.奇怪的密码
暂时没头绪,待更
8.zip伪加密
打开压缩包发现有密码,用winhex查看文件
发现文件头部分被改了数据,将00 09 修改回 00 00
保存直接解压就可得到flag
flag{Adm1N-B2G-kU-SZIP}
9.托马斯杰斐逊
观察密钥发现数字从1~13,猜想是转轮解密即按照密钥提出每一行从密文处剪切前移到首端,例:
2:
2&#xff1a; <HGVSFUWIKPBELNACZDTRXMJQOY
全部处理后得到
H G V S F U WIKPBELNACZDTR X MJQOY
C P M N Z Q WXYIHFRLABEUOT S GJVDK
B V I Q H K YPNTCRMOSFEZWA X JGDLU
T E Q G Y X PLOCKBDMAIZVRN S JUWFH
S L O Q X V ETAMKGHIWPNYCJ B FZDRU
X Q Y I Z M JWAORPLNDVHGFC U KTEBS
W A T D S R FHENYVUBMCOIKZ G JXPLQ
C E O N J Q GWTHSPYBXIZULV K MRAFD
R J L X K I SEFAPMYGHBQNOZ U TWDCV
Q W X P H K ZGJTDSENYVUBML A OIRFC
G O I K F H ENYVUWABMCXPLT D SRJQZ
LTDENQWAOXPYVUIKZGJB M CSRFH
ENYSRUBMCQWVJXPLTDAO I KFZGH
SWAYXPLVUBOIKZGJRFHE N MCQTD
flag{XSXSBUGKUADMIN}