re-CTF_Fish

1.逻辑分析

 这是什么加密  不知道0.0 看看findcrypt插件

 发现是这种加密方式 和题目名字相对应

 而这里数组[4]中存储着我们的key

 也就是这个

后面我们发现是Blowfish ECB加密算法

接下来我们是可以写脚本了

2.开始解密

 先用C++得出第一步的数据

后面不写了 待研究

这是python代码

from Crypto.Cipher import Blowfish
import codecs
enc = codecs.decode("2C0852FACA1A757CAF334506FA75BBBEE04D1DA64D7CA715EDC904E0475877B9FE236279AACCFF5074A852DABAED987F", 'hex_codec')
key = "C_Object"
temp = []
for ch in enc:
    if (ch - 44) >= 0:
        temp.append((ch-44)^0x33)
    else:
         temp.append((ch + 256 - 44)^0x33)
buffer = temp
bf = Blowfish.new(key.encode('utf-8'), Blowfish.MODE_ECB)
flag = bf.decrypt(bytes(buffer))
print("%s" % flag)

 

posted @ 2023-12-12 05:12  wakappxc  阅读(15)  评论(0编辑  收藏  举报