其他分享
首页 > 其他分享> > misc刷题记录

misc刷题记录

作者:互联网

ctfshow单身杯

misc签到

一个加密的zip,直接爆破密码,得到一个png

用010打开图片,在末尾找到了base64密文,解码后发现是二维码

 

 

 用stegsolve的red 0通道找到前一部分flag

 

 

 补全反色二维码,扫出十六进制密文

 

 

 解码得到后半部分flag

 

 

 得到ctfshow{Your_potential_value_far_exceeds_your_belief}

没大没小的串串

打乱了大小写的flag是 y0U_RE4lLy_kn0W_TH1S_ConGr4tUlAT10Ns

其中正确的flag的md5是 7513209051f455fa44d0fa5cd0f3e051

得到最终的flag需要包上ctfshow{}

就是要求出字符串MD5值为7513209051f455fa44d0fa5cd0f3e051的大小写组合,写脚本跑出flag

import hashlib

def alls(text):#获取字符串所有的大小写组合
    res=[""]
    for i in text:
        if not i.isalpha():
            for j in range(len(res)):
                res[j] += i
        else:
            for k in range(len(res)):
                tmp = res[k]
                res[k] += i.lower()
                res.append(tmp + i.upper())
    return res

s = r'y0U_RE4lLy_kn0W_TH1S_ConGr4tUlAT10Ns'
res = alls(s)

for i in res:
    m = hashlib.md5() #获取一个md5加密算法对象
    m.update(i.encode()) #对字符串进行加密#update需要一个bytes格式参数
    if(m.hexdigest() == '7513209051f455fa44d0fa5cd0f3e051'):  #获取加密后的16进制字符串
        print(i)
        break
y0U_Re4llY_kN0w_TH1s_coNgr4TULat10nS

得到ctfshow{y0U_Re4llY_kN0w_TH1s_coNgr4TULat10nS}

有眼睛就能做

提示:左右互搏

一个wav文件,直接查看频谱图,没有什么信息

 

 

 根据提示尝试着用左右声道频谱做减法

import  torch ,torchaudio as ta
import matplotlib.pyplot as plt,math
wavf = ta.load('flag.wav')[0]
specgram = ta.transforms.Spectrogram()(wavf)
img = (specgram.log2()[0,:,:] - specgram.log2()[1,:,:])
plt.figure(figsize=(20,3))
plt.imshow(torch.tanh(img).numpy())
plt.show()

得到flag

 

 

 ctfshow原谅杯

原谅1

一个png和一个加密的zip

 

看图猜密码,前四位是1317,中间两个不知道,然后是7,

标签:plt,加密,记录,res,misc,flag,ctfshow,png,刷题
来源: https://www.cnblogs.com/carefree669/p/16475712.html