多情
下载解压,打开附件
得到一个压缩包文件和一张图片
分离图片分离图片中的隐藏文件方法总结_读取png中隐藏的压缩包-CSDN博客
由于binwalk和foremost无法使用,我使用的是010,直接裁剪
保存后,得到新的图片
应该为图片隐写,可以使用010或者winhex修改
或者直接拖进随波逐流
得到完整图片
提示:996
打开之前的压缩包发现只有0和1,将996转化成二进制得到1111100100。
刚好有6个1,4个0,刚好与“多情”压缩包中txt的文件名一致,对应压缩包中01的数量,
按照从左到右的顺序(第一个1,第二个1,第三个1,第四个1,第五个1,第一个0……)将文本中的内容进行合并
进行替换得到一串带&#字符
Lrp5mJcdEbbv2bnf6HQSNh
在线解码在线 Unicode 编码转换 | 菜鸟工具 (jyshare.com)
Lrp5mJcdEbbv2bnf6HQSNh
包裹后得到flag
qsnctf{Lrp5mJcdEbbv2bnf6HQSNh}
CTFer Revenge
下载附件,解压打开
导入CyberChef观察
结合题目,得知是一个压缩包经过reverse后的十六进制数据,用CyberChef再reverse回去得到正确的16进制文件
观察发现数据格式不是很标准,需要进行处理才能导入,按照大佬的脚本将行号以及后面的文本区域和空行去掉
def remove_blank_lines(file_name):
try:
# 创建一个临时文件用于存储非空白行
with open(file_name, 'r', encoding='utf-8') as input_file, open(f"{file_name}.tmp", 'w', encoding='utf-8') as output_file:
for line in input_file:
# 如果行不是空白的,则写入临时文件
if line.strip():
line = line[10:]
# 查找第一个'|'字符的位置
pipe_index = line.find('|')
# 如果找到了'|',则去除该字符及其后面的所有字符
if pipe_index != -1:
line = line[:pipe_index]
# 将处理后的行写入临时文件
output_file.write(line)
# 删除原文件并将临时文件重命名为原文件名
import os
os.remove(file_name)
os.rename(f"{file_name}.tmp", file_name)
print(f"Processed file saved as {file_name}")
except FileNotFoundError:
print(f"File {file_name} not found.")
# 调用函数,传入你的txt文件路径
remove_blank_lines(""F:\下载\题目\CTFer Revenge\是什么呢(仔细观察).txt"")
再次使用CyberChef打开.txt文件
保存为zip文件
2024青少年ctf擂台挑战赛round1-CTFer Revenge-CSDN博客
青少年CTF擂台挑战赛 2024 #Round 1-MISC_青少年ctf追光者-CSDN博客
简简单单的题目
下载解压,打开压缩包
查看提示:
qsnctf
解题顺序 key1-- fla2_key-- flag
傅里叶
根据提示,尝试压缩包key1.zip密码为qsnctf
得到两张图片
将图片key1.jpg拖进010
可以得到,aes加密
U2FsdGVkX1/o1s6+f3X4C0ZEfHGr5SrBYCc8rBHw1IMBplG06hwWgzxnshngG+2d
B1yVvYefSPulcYv/Ur6dMw==
修改图片的高度
将16进制的03E8修改为042C
或者10进制的1000修改为1068
得到key:我沉醉了
在线AES加密 | AES解密 - 在线工具 (sojson.com)
解密得到:flag2的密码是二维码前面加上QSN
还有一张二维码
在ps中打开ctrl+i反转 ,缺少二维码定位符,所以添加二维码定位符
颜色反转 然后添加黑色定位符
将图片另存下来
网上找到二维码定位角
使用wps补齐定位角
解码得到
Zz123!@#qsn
使用密码QSNZz123!@#qsn打开第二个压缩包文件
得到一张图片
单张图片的盲水印解出 key: qsnctfNB666
利用lsb使用密码解出文件
723014211628022663867378
利用中文电码解密
中文电码查询 Chinese Commercial Code - 标准电报码免费在线查询|姓名电码|美国签证电码 (mcdvisa.com)
密码:青少年们起飞
打开flag压缩包
key.txt里面内容如下
翻译为:无针孔胶片。无任何伪装的表面
⡁⡃⡞⡳⡤⡶⠉⠉⠉⠉=
文本加密为盲文,可自设密码|文本在线加密解密工具 (qqxiuzi.cn)
qsnCTF9999
利用free film Camouflage 解图片
Free File Camouflage – 将文件隐藏在图片里并设置密码-软件玩家 (betaflare.com)
解除文件伪装,使用自定义的密码qsnCTF9999解密
得到2.txt
RGB值 转图片 首先要把{}去掉
编写脚本
from PIL import Image
# 打开txt文件并读取RGB值
with open('2.txt', 'r') as file:
rgb_values = [tuple(map(int, line.strip().split())) for line in file]
# 计算图片的宽度和高度
width = int(len(rgb_values) ** 0.5)
height = int(len(rgb_values) / width)
# 创建一个新的图片对象,模式为'RGB'
image = Image.new('RGB', (width, height))
# 将RGB值设置到图片的对应位置上
image.putdata(rgb_values)
# 保存图片为PNG格式
image.save('output.png')
运行,得到
图片左右翻转得到
提取文字得到
qsnctf{xcswzj-bewei123456}
Bear
下载解压打开附件
熊曰:呋食食物嘍嗷洞出嗚有眠哮山囑眠拙住訴嗚囑肉拙既寶果動我笨會你出眠嚄寶冬食喜哞吖山噗食類囑出果你盜唬動取噔唬噤樣魚呦爾
熊曰在线工具解码
得到flag
qsnctf{80038e81-5f67-4085-a70e-77a3fd74cf96}
是我的Hanser!
下载解压,打开附件
得到一个压缩包和一个文本文档
解压压缩包,发现被加密
查看文本文档
使用在线工具https://yuanfux.github.io/zero-width-web/
在线解码
得到Password is : Hanser2024
解密后得到压缩包里的一张图片
使用010打开后,发现flag
补充前缀qsn,成功提交
qsnctf{bb3bdea1fba9b8b940c3cb788d3f0aae}
上网搜索psd文件,得到以下结果
使用PS软件打开文件
发现图片有多个图层
找到flag