polarctf-Misc-为什么关机又关机

重命名扩展名为zip并解压后得到两个文件

其中密码内容如下:

slidetoshutdown

一大段回车

//被‎‍‍‍‏‏‎‏‍‏‌‎‍‌‏‌‍‎‍‎‌‏‏‌‏‍‏‌‎‎‎‍‏‍‌‎‏‎‎‏‎‍‍‍‎‍‏‌‎‍‎‌‍‏‌‍‍‏‎‏‍‏‌‏‏‍‎‌‏‌‎‍‌‍‏‌‏‏‏‌‌‏‏‎‏‍‎‍‏‎‌‏‏‍‍‎‌‏‎‏‎‌‌‍‏‍‎‏‌‍‍‎‎‌‏‏‌‏‎‌‏‍‌‏‍‎‏‏‌‍‏‍‎‏‌‏‍‍‎‍‎‍‏‍‎‍‏‎‌‏‎‍‍‏‏‏‌‎‏‍‌‏‍骗了吧!事情变得有趣了起来嘿嘿

使用文字隐藏加密/解密 – 蜻蜓在线工具对最后一段//被‎‍‍‍‏‏‎‏‍‏‌‎‍‌‏‌‍‎‍‎‌‏‏‌‏‍‏‌‎‎‎‍‏‍‌‎‏‎‎‏‎‍‍‍‎‍‏‌‎‍‎‌‍‏‌‍‍‏‎‏‍‏‌‏‏‍‎‌‏‌‎‍‌‍‏‌‏‏‏‌‌‏‏‎‏‍‎‍‏‎‌‏‏‍‍‎‌‏‎‏‎‌‌‍‏‍‎‏‌‍‍‎‎‌‏‏‌‏‎‌‏‍‌‏‍‎‏‏‌‍‏‍‎‏‌‏‍‍‎‍‎‍‏‍‎‍‏‎‌‏‎‍‍‏‏‏‌‎‏‍‌‏‍骗了吧!事情变得有趣了起来嘿嘿进行解密得到babalelilababala

使用密码解压压缩包后得到

其中exe双击执行后电脑直接关机

通过文件描述解压压缩包玩差不多就行啦.rar得到女王威力很强奥.jpg

使用命令

steghide extract -sf 女王威力很强奥.jpg -p 160

tips:这里使用steghide完成数据提取是学长告知的,具体怎么分析出来的我似乎也不是很清楚

steghide只能在linux中使用,使用apt install steghide安装

得出flag,其中160为威力40*6/1.5的计算结果

得到最终flag:flag{713a1e97b33356441e68d6c5ef36b385}

polarctf-Misc-爱你

下载后得到202206MISC_PolarDN_CTF_.zip,解压后得到cyndi-stego.png

使用StegSolve打开后切换R/G/B Plane 0通道发现顶部存在数据,初步判定为LSB隐写,需要提取

选择对应通道预览并导出数据

提取后数据如下

删除前两列的内容只保留第三第四列,并使用010作为16进制粘贴发现是zip

同时在底部发现存在疑似密码

存在提示rfc4042经过查找发现为utf-9,编写脚本进行解密

pwd = b",\x9b\xce\xa6s)\xd0\xd2t\x10\x9c\x0c'3\x99\xdc`r2\x08\r'1\x010\xdev2\x90\xcf&\xe3 \xc4"


def decode_utf9(data):
    # 1. 将字节转换为完整的二进制字符串
    bits = "".join(f"{b:08b}" for b in data)

    # 2. 每 9 位取出一个数值
    decoded_chars = []
    for i in range(0, len(bits) - 8, 9):  # 步长为 9
        nonet = bits[i:i + 9]
        if len(nonet) == 9:
            decoded_chars.append(chr(int(nonet, 2)))

    return "".join(decoded_chars)


result = decode_utf9(pwd)
print(f"解密结果为: {result}")

脚本如上,解密结果为Yougetit!passw0rd is LoveCynd1

使用LoveCynd1解压压缩包得到flag:flag{01e979f6dd21cd325e05fc1405e76bfd}