这场比赛只是一次CTF培训后的模拟赛,内容也就图一乐
打开压缩包,是一个 .log
文件
解压后打开来看,是一串被sqlmap注入后的数据
直接忽略掉他注入 information_schema
库的操作,看查询的地方
因为是盲注的原因,所以不是字符串,我们只用看他的语句就好了,根据特征,定位这条语句
也就是,语句中存在 !=
的,表示当前是的 ASCII
码是正确的,所以直接上python
import re
file=open('flag.txt','r')
pattern=re.compile(r'\),(.*?),1\)\)!=(.*?),0,1')
for i in file:
check=pattern.search(i)
if check:
print(chr(int(check.group(2))),end='')
运行后,就有flag了
打开压缩包,是一个压缩包和音频文件
secret.zip
需要密码,先看rain.wav
拖入软件 Audacity
查看频谱图
得到密码 CONGR4Ts!:)
,拿去解压缩
发现图片不完整,再把图片拖入HxD中
发现后半段的flag就在这里,直接拼合提交就好了
打开压缩包
one.zip需要密码,看一下mtpxor.txt的内容
写个python异或
import binascii
c1 = '24161a1d1c0317100c240f1818001e06120c03170e'
c2 = '380e04533e4f050b1529040154121a0e120100071c'
c3 = '25115312150004015b390916030a000302581c1d15'
c4 = '3c081816570e5200122c0c1c1a011b01460c07175d'
c5 = '24161a1d1c0317100c240f1818001e06120c03170e'
c6 = '380e04533e4f050b1529040154121a0e120100071c'
c7 = '2709161d571b1a01192100091d0b151c131606011a'
c8 = '2709161d5707170a1439091a1a0201070f160a0108'
c9 = '2409161d0e0007171322160a1b1000030f0c1b1e18'
c10 = '24161a1d1c0317100c240f18180013030a0c071713'
c11 = '2409161d03071710092c17161809171d0f161b1a18'
c12 = '2409121d1c1c0b0b0e2b0e010d0a071d1211010b0e'
c13 = '330e061f134f1a015b3e041654121a060510181304'
ciphers = [c1, c2, c3, c4, c5, c6, c7, c8, c9, c10, c11,c12,c13]
cipher_text = "Thenyoushowyourlittlelight"
def sxor(s1,s2):
return ''.join(chr(ord(a) ^ ord(b)) for a,b in zip(s1, s2))
for cipher in ciphers:
k = sxor(cipher.decode('hex'),cipher_text)
print(binascii.a2b_hex(k.encode('hex')))
运行一下,得到密码
解压之后,发现Readme.txt的 CRC32值
和压缩包 two.zip
的值一样
说明可以明文攻击
保存文件,就没有密码了,直接解压
直接进three.zip压缩包里,解压flag就好了
打开cipher.txt,一长串字符串
维吉尼亚解密,拖去网站解就好了