文章目錄
- 一、題目描述
- 二、解題步驟
-
- 1.打開文檔
- 2.對文檔内容進行觀察
- 3.把文本輸入到框框中
- 4.使用Python腳本進行編碼
- 5.得到一串新的編碼
- 6.對新的編碼進行base64解碼
一、題目描述
菜狗為了打敗菜貓,學了一套如來十三掌。
文檔下載下傳位址:https://adworld.xctf.org.cn/media/task/attachments/833e81c19b2b4726986bd6a606d64f3c.docx
二、解題步驟
1.打開文檔

2.對文檔内容進行觀察
容易聯想到佛曰----百度搜尋與佛論禅
3.把文本輸入到框框中
把文本輸入到第一個框框中發現無法找到任何資訊
然後再把文本輸入到第二個框框中這時候需要主義輸入佛曰:
得到一串編碼将編碼進行rot-13解碼
4.使用Python腳本進行編碼
腳本代碼如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/10/29 18:08
# @File : rot13.py
import string
result=[]
upperCase=string.ascii_uppercase
lowerCase=string.ascii_lowercase
upperDict={}
lowerDict={}
print("歡迎來到rot13加密解密界面")
inputStr=input("請輸入你要加密或解密的字元串")
while True:
print("請确認%s是否為你想要輸入的字元串,如果正确請輸入y,否則輸入n"%(inputStr))
flag=input("請輸入你的确認結果")
if (flag=='y') or (flag=='Y'):
break
if (flag=='n') or (flag=='N'):
inputStr=input("請重新輸入你要加密或解密的字元串")
else:
print("确認方式不合理")
break
for i in range(0,len(upperCase)):
if i<13:
upperDict[upperCase[i]]=upperCase[i+13]
else:
upperDict[upperCase[i]]=upperCase[i-13]
for i in range(0,len(lowerCase)):
if i<13:
lowerDict[lowerCase[i]]=lowerCase[i+13]
else:
lowerDict[lowerCase[i]]=lowerCase[i-13]
for ch in inputStr:
if ch in lowerDict:
result.append(lowerDict[ch])
elif ch in upperDict:
result.append(upperDict[ch])
else:
result.append(ch)
result=''.join(result)
print("最終加密結果為%s"%(result))
5.得到一串新的編碼
6.對新的編碼進行base64解碼
可以在java環境下的notepad++進行解碼操作
然後就可以得出
直接對新的編碼進行解碼 base64解碼操作:從notepad++裡面找到插件----找mime tools----再找base64 decode即可進行轉換。
轉化之後可直接顯示flag。