南京郵電大學網路攻防平臺writeup ————密碼學
1、easy
題目提示:
思路:
這是一個加密解密型試題,根據其特點可知是採用base64加密的,所以可以直接使用base64線上解密即可。
1. 線上搜尋一個base64線上解密網站。
2、KeyBoard
題目提示:
思路:
題目中多次強調“看鍵盤,看鍵盤,看鍵盤”,所以可以確定題目中給定的字母序列的編寫與鍵盤密切相關,根據給定的字母序列於空格可以依次在鍵盤上找到相應的解密“字母”
解題步驟:
Ytfvbhn 對應“a”
Tgbgy 對應“r”
Hjuygbn 對應“e”
Yhnmki 對應“u”
Tgvhn 對應“h”
Uygbnjm 對應“a”
Uygbn 對應“c”
Yhnijm 對應“k”
從上至下依次連線起來可以得到答案:“areuhack”
提交(注意格式:nctf{areuhack} )即可!
3、base64 全家桶
題目提示:
可知需要經過base64 、base32、base16解密才行,所以我們直接使用Python跑一下就OK:
程式碼如下:
4、n次base64
題目提示:
開啟連結:
發現許許多多的base密文,而且提示要用n次base64,所以我們可以多次base64解密,直到得到flag:
5、騷年來一發嗎?
題目提示:
可以獲取的資訊:
這是一個php加密函式
密文已知:密文:iEJqak3pjIaZ0NzLiITLwWTqzqGAtW2oyOTq1A3pzqas
加密函式已知。
接下來我們要做的就是解密,那麼根據加函式的功能我們進行逆向其過程就OK:
之後在本地訪問該php檔案即可:
6、異性相吸
題目提示:
下載檔案到本地,並且將解壓之後的檔案移至Kali中,之後編寫指令碼如下,根據給定的解密與加密關係進行解密:
7、Md5
題目提示:
直接使用Python迴圈遍歷進行查詢即可!程式碼如下:
import md5 import string for i in string.uppercase: for j in string.uppercase: for k in string.uppercase: a='TASC'+i+'O3RJMV'+j+'WDJKX'+k+'ZM' b=md5.md5(a).hexdigest() if(b[0:5]=='e9032'): print b
之後得到flag:nctf{e9032994dabac08080091151380478a2}