CatchCat

题目描述:可爱的猫猫走丢了,还好猫猫有GPS定位装置,我们陆陆续续在终端收到了GPS数据,你能帮忙找到可爱的猫猫吗?

下载解压得到GPS数据

放到网站里

https://www.gpsvisualizer.com/map_input?form=leaflet

再把图片放到画图工具里旋转一下

得到flag:CatCTF{GPS_M1ao}

看了老半天,发现还是要结合题意才看懂,哎。

glance-50

下载附件,发现是gif,需要逐帧拼接成FLAG

在Kali中,将gif转换成png图像

convert 9266eadf353d4ada94ededaeb96d0c50.gif flag.png

执行命令后文件夹里是gif每一帧的图片,可以使用montage命令拼接

montage xxx.png [option] xxx.png

-tile m x n:可指定拼接的样式   -tile 4x2 表示拼接将按 4 行 2 列的摆放来进行拼接

-geometry +m+n:可指定每个拼接图像的位置。-geometry +0 +0 表示没有空隙地拼接图像

-gaps m x n:可在拼接图像之间添加空隙

montage flag*.png -tile x1 -geometry +0+0 flag.png

得到flag:TWCTF{Bliss by Charles O'Rear}

[简单] 简单的base编码

前言

Base92是一种高效的二进制到文本编码方式,核心目标是在Base64基础上提升空间利用率,由NilsMaier设计,适用于对文本长度敏感的小众场景。

核心特点

编码效率更优:Base64用6位二进制对应1个字符,编码后体积约为原数据的133%;Base92用约6.51位对应1个字符(覆盖92种字符),体积仅为原数据的121%左右,比Base64更节省空间。

字符集选择:选用92个可打印ASCII字符,包括大小写字母、数字及常用标点(避开空格、控制字符和易混淆字符如0/O、1/l),兼容性强,不易被文本工具转义。

无填充设计:无需像Base64那样用=填充,编码逻辑更简洁,避免填充符带来的额外处理成本。

非标准特性:无RFC官方规范,通用性远不如Base64,仅在短链接、嵌入式设备数据传输等对长度敏感的场景使用。

解题

下载附件,发现一大串base64编码的字符

尝试发现需要多次base64解码,那就直接上代码

import base64

# 读取txt文件(替换为你的文件路径)
with open("encode.txt", "r", encoding="utf-8") as f:
    data = f.read().strip().encode("utf-8")

count = 0
while True:
    try:
        # 循环解码
        data = base64.b64decode(data, validate=False)
        count += 1
        print(f"第{count}次解码成功")
    except (base64.binascii.Error, TypeError):
        # 解码失败则输出最终结果
        print(f"\n解码结束,共解码{count}次")
        # 尝试转字符串输出(失败则输出十六进制)
        try:
            print("最终解码结果:", data.decode("utf-8"))
        except UnicodeDecodeError:
            print("最终结果为二进制(十六进制):", data.hex()[:200], "...")
        break

得到结果:F#S<YRa[$*x7,>{F3DH5N/3.5+J6WD%P841JRN_i51F1Z!

应该是base92解码

得到flag:flag{d0_y0u_l1ke_base92_!??!_by_Sh3n}

Ditf

下载附件直接放到随波逐流里,给了一个修复宽高的图

发现字符StRe1izia,尝试是否为flag,发现不是,那应该图片藏有其他文件,放到010Editor中,内容太多不好找,直接放kali里foremort吧

foremost e02c9de40be145dba6baa80ef1d270ba.png

输入上面的到的密码:StRe1izia,得到一个流量包,使用wireshark进行分析,内容太多,无从下手,尝试搜索各种关键字,在搜索png时,发现kiss.png,追踪http流量发现一串特征明显的代码

ZmxhZ3tPel80bmRfSGlyMF9sb3YzX0ZvcjN2ZXJ9

直接base64解码

得到flag:flag{Oz_4nd_Hir0_lov3_For3ver}

misc_pic_again

方法一

下载附件,是一张图片

检查宽高没问题,检查是否有隐藏文件,也没有。打开Stegsolve,检查不同颜色通道,没有问题选择Data Extract查看RGB值,发现pk开头

并把它保存为.zip文件,解压得到elf文件,直接丢kali里strings一下

strings 1

发现flag:hctf{scxdc3tok3yb0ard4g41n~~~}

方法二

下载zsteg

sudo gem install zsteg

用zsteg分析图片,看到有隐写 zip 压缩包

zsteg -a 719af25af2ca4707972c6ae57060238e.png

发现zip压缩包

使用命令提取压缩包

zsteg -e b1,rgb,lsb,xy 719af25af2ca4707972c6ae57060238e.png > 1.zip

解压 1.zip 得到文件 1

strings 1

发现flag:hctf{scxdc3tok3yb0ard4g41n~~~}

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐