携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第9天,点击查看活动详情
[GUET-CTF2019]虚假的压缩包
下载完附件,根据题目提示,怀疑是伪加密,我们用WINRAR修复一下
数学题:n=33,e=3,解26 答案是
RSA算法,我们找一个脚本
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
解出来密码是5,我们解压压缩包。
一张图片,一个无后缀文件,图片提示我们要异或5,用脚本异或一下
original = open("亦真亦假",'r').read()
flag = open("flag",'w')
for i in original:
tmp = int(i,16)^5
flag.write(hex(tmp)[2:])
将跑出来的文件另存为zip文件。发现是个word,根据特性我们再将其改为doc,打开文件
末尾处发现了被改成白色的字体,改个颜色就出来flag了
flag{_th2_7ru8_2iP_}
[SCTF2019]电单车
是一个音频,次的声音。怀疑是某种电波信号。
用音频查看软件可以看到信号以短的为 0,长的为 1进行替换
0 0111010010101010011000100
PT2242信号:前面4bit表示同步码,中间的20bit表示地址码,后面的4bit表示功能码,最后一位是停止码。
我们根据说明分离一下就行:
flag{01110100101010100110}
[UTCTF2020]spectogram
直接放音频分析的软件里看到频谱图,疑似是flag字符串,但是看不清。这里根据网上师傅们的解题思路,我们使用另一款音频分析软件。
在Layer选项中点击Add Peak Frequency Spectrogram或者Shift+K ,然后再进行一些微小调整就可以看到flag了
flag{sp3tr0gr4m0ph0n3}
[INSHack2019]gflag
下载附件似乎是某种编译文件
M73 P0 R2
M201 X9000 Y9000 Z500 E10000
M203 X500 Y500 Z12 E120
M204 P2000 R1500 T2000
根据description得知,是一种编程语言,G语言
放进去运行一下,调试就出flag了
flag{3d_pr1nt3d_fl49}
[GKCTF 2021]FireFox Forensics
记录一下新的知识点。下载完附件是两个奇怪的文件。分别是firfox的记录文件(logins.json)和密钥文件(key4.db), 下载工具firepwd 爆破密码
将key4.db、logins.json复制到firepwd目录下,用firepwd.py破解。
GKCTF{9cf21dda-34be-4f6c-a629-9c4647981ad7}
[GUET-CTF2019]520的暗示
文件与0x33异或后,得到一张图片
data = open("photo.dat",'rb')
strs = data.read()
flag = open("1.jpg",'ab+')
for i in strs:
flag.write(bytes([i ^ 0x33]))
根据LTE定位基站地址,最后定位到桂林电子科技大学花江校区。
flag{桂林电子科技大学花江校区}
[SUCTF2018]dead_z3r0
下载附件放进010查看,发现有很多base编码,但解不出来,怀疑是反编译文件。
把前面的base编码去掉,另存为pyc,然后使用stegosaurus工具
Stegosaurus 是一款隐写工具,它允许我们在 Python 字节码文件( pyc 或 pyo )中嵌入任意 Payload。由于编码密度较低,因此我们嵌入 Payload 的过程既不会改变源代码的运行行为,也不会改变源文件的文件大小。 Payload 代码会被分散嵌入到字节码之中,所以类似 strings 这样的代码工具无法查找到实际的 Payload。
python stegosaurus.py -x xino.pyc
flag{Z3r0_fin411y_d34d}