安恒也是一个做网络安全的公司(平台?)
首先,看到猫片,肯定是猫的照片
其次,提示LSB,一看就要用到Stegsolve里面调LSB出来的【我猜的,看看会不会打脸】。
下载文件之后是这样的,
用010 editor打开康康是不是真的png,
是真的,那么就修改后缀名。
可爱猫猫的照片~~!!
用Stegsolve打开,Analyse-->Data Extract
修改LSB设置等,
看到了抬头是PNG,不过是和普通png图片不一样的,所以不能直接保存为png格式。
随便保存了下来,使用kali进行分离图片。
这个新的png图片,只是半张二维码
那么又需要将剩余二维码展示出来,
打开010 editor,
修改图片长宽。
当当当当,二维码
扫描二维码之后,发现是百度网盘链接,下载了flag.rar文件下来,并打开。
吐血了
做到这里是不是卡壳了,不过还有一个提示没有用,NTFS,这个应该就是最后一步了。
查看了大佬的wp,需要一个新的工具NtfsStreamsEditor,下载之后找到了flag.txt里面的数据流,
然后导出,发现是一个pyc文件。
https://tool.lu/pyc/ 使用此在线网站,对pyc文件进行解密。
解密出来之后是加密的函数以及密文,
#!/usr/bin/env python
# visit http://tool.lu/pyc/ for more information
import base64
def encode():
flag = '*************'
ciphertext = []
for i in range(len(flag)):
s = chr(i ^ ord(flag[i]))
if i % 2 == 0:
s = ord(s) + 10
else:
s = ord(s) - 10
ciphertext.append(str(s))
return ciphertext[::-1]
ciphertext = [
'96',
'65',
'93',
'123',
'91',
'97',
'22',
'93',
'70',
'102',
'94',
'132',
'46',
'112',
'64',
'97',
'88',
'80',
'82',
'137',
'90',
'109',
'99',
'112']
我们要做的是对这个加密函数的步骤编写相反的解密函数,解出flag。
ciphertext = [
'96',
'65',
'93',
'123',
'91',
'97',
'22',
'93',
'70',
'102',
'94',
'132',
'46',
'112',
'64',
'97',
'88',
'80',
'82',
'137',
'90',
'109',
'99',
'112']
def decode():
ciphertext.reverse()
flag = ''
for i in range(len(ciphertext)):
if i % 2 == 0:
s = int(ciphertext[i]) - 10
else:
s = int(ciphertext[i]) + 10
s=chr(i^s)
flag += s
return flag
def main():
flag = decode()
print(flag)
if __name__ == '__main__':
main()
获得flag!!
坎坷...
flag{Y@e_Cl3veR_C1Ever!}
欢迎关注我的微信公众号!!~~
一起快落学习CTF吧!!~~ (*^▽^*)
志当存高远。