[GUET-CTF2019]虚假的压缩包

[GUET-CTF2019]虚假的压缩包

QydcZpJkNGxMFCOgp-Ip3RNrs7gGGXZHq8IlP1tHhXE

附件里面有两个压缩包

虚假的压缩包是伪加密,修改加密位后即可打开

6qfNFTp_ZesabCkKUN55BL06WZwwtfRmSlWgBlEXK0Q

里面是一个txt文件,给了一道题目

6iVRaawTJrTsIOHUVx7FEfflSWtjDdKIAMAGyeojjis

根据给出的提示,判断是普通的RSA,通过脚本解出为5

import gmpy2

p=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

Ex_69lPbRiJldB-KOqvwAZUiPpFup8saxGhgdS3lT5I

注意真实压缩包的密码为“答案是5”,而不是单单一个5。。

接着修改图片的高度,得到异或5的信息

lRDyMQq-0Tba8Te3kjAtlNwMs0WAK0nu2BKDAyBZfKg

SXrenWCTyqMDgGCS1s-Guq0eptiDSMOu0imQNHdx2Lw

通过脚本跑出了一个无后缀的文件

#coding=utf-8
original = open("亦真亦假",'r').read()
flag = open("flag",'w')
for i in original:
    tmp = int(i,16)^5
    flag.write(hex(tmp)[2:])

zoh03S9QiOX908Blzlqjj7f4rD7HhiOd2zR8sdlzgNg

开头是504b0304,所以保存为zip并打开,发现是一个word文件

g5cE-o0tKGKVia2wVpCVa49F9qoW1rqFB6gX594r4CE

因此修改后缀为doc后打开,颜色替换为深色在结尾可以看到flag。

0x6-7aajoi7UMh2yk3h2dVF4CKtG5Hdh27Is_xdy8bM

flag{_th2_7ru8_2iP_}

posted on 2024-02-05 18:51  跳河离去的鱼  阅读(84)  评论(0编辑  收藏  举报