CTF論壇練習平台密碼學write up


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: <KPBELNACZDTRXMJQOYHGVSFUWI

2: <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}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM