本文主要是介绍BUUCTF [GUET-CTF2019]虚假的压缩包,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目
下载附件解压压缩包,发现是两个压缩包,但是都需要密码,这里猜测虚假的压缩包是伪加密,直接把如图所示的位置的9改为0
打开压缩包
RSA,解密脚本如下
import gmpy2p = gmpy2.mpz(3)
q = gmpy2.mpz(11)
e = gmpy2.mpz(3)
l = (p-1) * (q-1)
d = gmpy2.invert(e,l)
c = gmpy2.mpz(26)
n = p * q
ans = pow(c,d,n)
print(ans)
解压密码是:答案是5
,用于解压另一个压缩包,发现图片未显示出来
修改一下长
得到带有信息的一张图片
有个异或5的标志,与前面的异或加密是一个思路,不过这是单个字符异或(python2)
import base64f1 = open('C:\\Users\\Lenovo\\Desktop\\BUUCTF\\真实的压缩包\\真实的压缩包\\亦真亦假','r')
xor_data = f1.read()
f1.close()
dec_data = ""
for i in xor_data:tmp = int(i,16) ^ 5dec_data += hex(tmp)[2:]print(dec_data)
f2 = open('./data.doc','wb')
f2.write(base64.b16decode(dec_data.upper()))
f2.close()
打开后,没看到flag
但是搜索flag
字符,却发现有,改变文本颜色之后发现flag
这篇关于BUUCTF [GUET-CTF2019]虚假的压缩包的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!