0


UNCTF2022-公开赛-MISC-部分WriteUp

1.magic_word-西南科技大学

  1. magic_word.docx后缀改成zip,然后解压,打开\word\document.xml请添加图片描述
  2. 复制这一段,必须向上图那样复制,不然末尾一段零宽字符会没复制上 零宽网站:https://www.mzy0.com/ctftools/zerowidth1/请添加图片描述
unctf{We1come_new_ctfer}

2.syslog-浙江师范大学

  1. 打开syslog,我搜索了几个关键字,key,password的时候,搜索出现了

请添加图片描述

cGFzc3dvcmQgaXMgVTZudTJfaTNfYjNTdA==

—> base64 —>

password is U6nu2_i3_b3St
  1. 用密码解压flag.zip,得到flag:
unctf{N1_sH3_D0n9_L0g_dE!}

3.巨鱼-河南理工大学

  1. 打开fish.png,尾部有zip,我是复制然后粘贴出来的(foremost应该也可以)

请添加图片描述

  1. 我的看图软件(ImageGlass)打不开图片,所以大概率宽高不对,crc32爆破一下。

请添加图片描述
请添加图片描述

  1. 打开图片

请添加图片描述

  1. 用密码无所谓我会出手,解开之前尾部保存的zip文件,得到flag.txt, flagisnothere.zip

flag.txt:

请添加图片描述

我提交了一下,是不对的。

  1. flagisnothere.zip是伪加密的,我用的ZipCenOp解开的。

请添加图片描述

pass.png:

请添加图片描述

  1. 我用识图工具找了一下是六氯环己烷

请添加图片描述

别名叫六六六,所以flag.pptx的打开密码就是

666

(当然也是试了好几次出来的)

  1. 我们要关闭文档保护,也就是不使用密码

请添加图片描述
请添加图片描述

上面密码留空,然后确定,文档的密码就没了。

  1. 修改后缀名为zip,然后解压,用vscode打开,ctrl+shift+f搜索unctf

请添加图片描述

UNCTF{y0u_F1nd_1t!}

4.找得到我吗-闽南师范大学

  1. 找得到我吗.docx后缀名改成zip,解压。
  2. vscode搜索

请添加图片描述

flag{You_find_me!}

5.社什么社-湖南警察学院

  1. 打开txt,放大缩小,弄到一个合适的情况后

请添加图片描述

  1. 结合出题人的位置湖南,加上古城。

请添加图片描述

所以就是

凤凰古城

,然后md5,再大写。

UNCTF{4F0198127A45F66C07A5B1A2DDA8223C}

6.zhiyin-中国人民公安大学

  1. 解压后发现lanqiu.jpg打不开,那我们就先解决它。

请添加图片描述

010editor打开一看就是reverse了,所以我们reverse一下就能回去,这个太简单了,我没写代码,你们不会的百度找个代码吧,我用的是自己的集合的那种脚本。

请添加图片描述
得到关键字:

Go_p1ay

(注意是1不是l,我就被这个卡半天了)

  1. 010editor打开zhiyin.png,尾部明显的morse密码。

请添加图片描述
请添加图片描述

使用CyberChef,链接:https://ctf.mzy0.com/CyberChef3/

得到关键字:

_UNC7F!!!

—> 小写 —>

_unc7f!!!

(我就因为没有小写,然后解压不开flag.zip,卡了半天)

所以正确的密码是:

Go_p1ay_unc7f!!!
  1. 解压flag.zip,得到flag:

flag{M1sic_1s_greAt}

7.清和fan-江西警察学院

请添加图片描述

去哔哩哔哩搜索清和,第一个就是,它的内容刚刚好和手办有关系。

请添加图片描述

请添加图片描述

所以解压密码为:

请添加图片描述

  1. MKM.png有lsb隐写,所以解压密码为:qq857488580,解压阿和的真实竟然身份是?.zip

请添加图片描述

  1. 神秘电波.wav,打开一听就是rot36,再加上36s我更加确定,我使用的是MMSSTV

请添加图片描述

又得到关键字:

V@mpir3

,解压

flag.zip
  1. 打开flag.txt,这一看就是有零宽。

请添加图片描述

  1. 零宽网站:https://www.mzy0.com/ctftools/zerowidth1/

请添加图片描述

unctf{wha1e_wants_a_girlfriend_like_alicia}

8.芝麻开门-广东海洋大学

  1. 打开key.txt,找到最下面的a2V5MQ== —> base64 —> key1

请添加图片描述

  1. 在StegSolve观察了一下,明显有lsb,再加上给了密码,所以使用cloacked-pixel

请添加图片描述

  1. 打开out就是看到flag了

请添加图片描述

flag{faf5bdd5-ba3d-11da-ad31-d33d75182f1b}

然后改一下格式:

UNCTF{faf5bdd5-ba3d-11da-ad31-d33d75182f1b}

9.In_the_Morse_Garden-陆军工程大学

  1. 打开In_the_Morse_Garden.pdf

请添加图片描述

UNCTF{5L6d5Y+k5q+U5Y+k546b5Y2h5be05Y2h546b5Y2h5be05Y2hIOS+neWPpOavlOWPpOeOm +WNoeW3tOWNoSDnjpvljaHlt7TljaHkvp3lj6Tmr5Tlj6Qg5L6d5Y+k5q+U5Y+k5L6d5Y+k5q+U5Y+k5 46b5Y2h5be05Y2h546b5Y2h5be05Y2h5L6d5Y+k5q+U5Y+k546b5Y2h5be05Y2hIOS+neWPpOavlO WPpOeOm+WNoeW3tOWNoSDnjpvljaHlt7TljaHkvp3lj6Tmr5Tlj6Qg5L6d5Y+k5q+U5Y+k5L6d5Y+k 5q+U5Y+k546b5Y2h5be05Y2h546b5Y2h5be05Y2h5L6d5Y+k5q+U5Y+k546b5Y2h5be05Y2hIOeOm +WNoeW3tOWNoeeOm+WNoeW3tOWNoSDkvp3lj6Tmr5Tlj6TnjpvljaHlt7TljaEg546b5Y2h5be05Y 2h5L6d5Y+k5q+U5Y+k546b5Y2h5be05Y2hIOS+neWPpOavlOWPpOeOm+WNoeW3tOWNoSDkvp3 lj6Tmr5Tlj6Tkvp3lj6Tmr5Tlj6TnjpvljaHlt7TljaHnjpvljaHlt7TljaHkvp3lj6Tmr5Tlj6TnjpvljaHlt7TljaEg54 6b5Y2h5be05Y2h5L6d5Y+k5q+U5Y+k5L6d5Y+k5q+U5Y+k5L6d5Y+k5q+U5Y+kIOS+neWPpOavlOW PpOeOm+WNoeW3tOWNoSDnjpvljaHlt7TljaHkvp3lj6Tmr5Tlj6TnjpvljaHlt7TljaEg5L6d5Y+k5q+U5Y +k546b5Y2h5be05Y2hIOS+neWPpOavlOWPpOeOm+WNoeW3tOWNoSDkvp3lj6Tmr5Tlj6Tnjpvlja Hlt7TljaEg5L6d5Y+k5q+U5Y+k546b5Y2h5be05Y2hIOS+neWPpOavlOWPpOeOm+WNoeW3tOWN oSDnjpvljaHlt7TljaHkvp3lj6Tmr5Tlj6TnjpvljaHlt7TljaHkvp3lj6Tmr5Tlj6TnjpvljaHlt7TljaHnjpvljaHlt7T ljaE=}
  1. base64解码

请添加图片描述

依古比古玛卡巴卡玛卡巴卡 依古比古玛卡巴卡 玛卡巴卡依古比古 依古比古依古比古玛卡巴卡玛卡巴卡依古比古玛卡巴卡 依古比古玛卡巴卡 玛卡巴卡依古比古 依古比古依古比古玛卡巴卡玛卡巴卡依古比古玛卡巴卡 玛卡巴卡玛卡巴卡 依古比古玛卡巴卡 玛卡巴卡依古比古玛卡巴卡 依古比古玛卡巴卡 依古比古依古比古玛卡巴卡玛卡巴卡依古比古玛卡巴卡 玛卡巴卡依古比古依古比古依古比古 依古比古玛卡巴卡 玛卡巴卡依古比古玛卡巴卡 依古比古玛卡巴卡 依古比古玛卡巴卡 依古比古玛卡巴卡 依古比古玛卡巴卡 依古比古玛卡巴卡 玛卡巴卡依古比古玛卡巴卡依古比古玛卡巴卡玛卡巴卡

根据题目的Morse的提示,所以这是摩斯密码。

摩斯密码在线网站:

http://www.all-tool.cn/Tools/morse/

请添加图片描述

UNCTF{WAN_AN_MAKA_BAKAAAAA!}

10.我小心海也绝非鳝类-中国计量大学现代科技学院

  1. 010editor打开我小心海也绝非鳝类.png,发现尾部base64字符串。

请添加图片描述

RUFTWUxTQg==

—> base64 —>

EASYLSB

,得到关键信息:

EASYLSB

请添加图片描述

请添加图片描述

得到关键信息:

flaginmd5
  1. 使用cloacked-pixel

请添加图片描述

  1. 得到out
8FA14CDD754F91CC6554C9E71929CCE72DB95E8E1A9267B7A1188556B2013B330CC175B9C0F1B6A831C399E269772661B2F5FF47436671B6E533D8DC3614845DF95B70FDC3088560732A5AC135644506F1290186A5D0B1CEAB27F4E77C0C5D68E1671797C52E15F763380B45E841EC322DB95E8E1A9267B7A1188556B2013B334A8A08F09D37B73795649038408B5F33D95679752134A2D9EB61DBD7B91C4BCC6F8F57715090DA2632453988D9A1501BE1671797C52E15F763380B45E841EC32B14A7B8059D9C055954C92674CE60032E358EFA489F58062F10DD7316B65649ED95679752134A2D9EB61DBD7B91C4BCCB14A7B8059D9C055954C92674CE600326F8F57715090DA2632453988D9A1501B865C0C0B4AB0E063E5CAA3387C1A874103C7C0ACE395D80182DB07AE2C30F0344A8A08F09D37B73795649038408B5F33CBB184DD8E05C9709E5DCAEDAA0495CF
  1. 根据提示md5,md5的话是32位

请添加图片描述

out的文本内容能被32整除,所以大概率就是32位md5代表一个字符,和本次比赛的Crypto方向的md5-1,基本一模一样。写个python代码:

import string
import hashlib

# 1.create dic
dic ={hashlib.md5(i.encode()).hexdigest().upper(): i for i in string.printable}withopen("out.txt","r")as f:
    data = f.read()for i inrange(0,len(data),32):print(dic.get(data[i:i+32]), end="")

请添加图片描述

flag{welcome_to_misc}

改一下格式:

UNCTF{welcome_to_misc}

11.剥茧抽丝-内蒙古警察职业学院

这题我的wp应该是非常规解法,为什么是非常规,这个锅必须

sublime text

背!!!

  1. 1.txt可以看到是有零宽的

请添加图片描述

请添加图片描述

很明显,我得到了乱码,所以这个地方我开始就没做出来。

  1. 我先来说出题人的正确想法:

请添加图片描述

2.txt

的crc32是

1E153DBB

,原本的

1.txt

的crc32是

5CE71FFF

,所以这两个内容肯定不相同,所以不能明文攻击。

但是,你只要自己新建一个文件,然后写上

线索就在眼前,你能利用并找到flag吗

请添加图片描述

现在crc32和文件里面的crc32一样了,现在可以用压缩攻击压缩然后明文攻击了。

  1. 说完出题人,现在说我的解法:

我为什么没有人出题人的解法呢?因为

sublime text

首先,我复制了

1.txt

的内容到了

1 - 副本.txt

,然后我把能看见的零宽字符删掉了,也就下图这样:

请添加图片描述

请添加图片描述

crc32显示

c5c55f26

,所以我就没办法明文攻击了。

可能有人就好奇了,为什么你把零宽都删掉了,怎么crc32不一样啊,有没有一种可能,我根本就没把零宽字符删干净,我们把

1 - 副本.txt

复制到kali里面去。

请添加图片描述

使用vim打开,你会发现还有一堆的零宽字符,所以说我们根本没有删干净,但是sublime text上面并没有显示零宽字符了!

所以我就没办法明文攻击,但是虽然不能攻击2.txt,但是我们可以攻击flag.zip。

为什么可以攻击flag.zip,这是因flag.zip的算法为

ZipCrypto Store

请添加图片描述

  1. 实现攻击的仓库是用的https://github.com/kimci86/bkcrack,不太会的可以看我之前的一个视频教程,戳我打开。

首先我构造了一个zip的文件尾部,但是我当时也没有把握能攻击出来,因为压缩文件如果有注释的话,那我百分比攻击不出来,有注释的话偏移就变了。(也就是以前在这个位置上,现在不在这个位置了)

请添加图片描述

攻击命令如下:

请添加图片描述

-o 239

是根据

flag.zip的大小 - 22字节

得到的。

-x 0 504B03041400

这个是zip的文件头部。

可以看到成功得到了12字节的key。

请添加图片描述

修改压缩包的密码为

easy
  1. 使用密码easy去解压,得到一个新的flag.zip,这里面就是flag了,但是需要密码

请添加图片描述

这个压缩包的密码就在一开始零宽里面。

请添加图片描述

然后我们下载解密后的隐藏数据,使用sublime text打开

请添加图片描述

密码:

PAsS_w0rD

这个地方花了我很久时间,因为我是真的忘记了还可以隐藏二进制数据,因为上面的文本一直得不到有意义的文字,我滑动到了下面的窗口,然后我试了一下,果然是二进制数据。

解压

新的flag.zip

,得到flag:

unctf{d4a3a242-cd32-4dd5-bac6-84bdf13f527f}

改一下格式:

UNCTF{d4a3a242-cd32-4dd5-bac6-84bdf13f527f}

12.MY PICTURE-信阳师范

  1. Picture添加后缀zip,解压,得到两个文件:datflag.png
  2. dat用010editor打开乱码,所以我就用我的脚本试了一下,也就是检测文件头和文件尾的,出来了异或0x8e

请添加图片描述

这个时候就有人说了,那我没有你的脚本这题咋办呢??也好办!

你的电脑肯定有python吧,

pip3 install xortool

,pip3或者pip都可以,只要你能安装这个库到你的python3上就可以。

使用

xortool.exe -c 00 dat

请添加图片描述

请添加图片描述

请添加图片描述

这个

0.out

打开一看你会发现就是zip的了,这个

xortool

会自动帮你进行检测然后保存。

-c 00 一般软件或者文件使用, -c 20 一般是文本文件使用
  1. 我当时没有使用xortool,所以我使用010editor对文件进行二进制异或,操作如下:

请添加图片描述

请添加图片描述

无符号字节,操作数8e,十六进制,确定。

请添加图片描述

一看就是zip了,修改备注为zip,没有密码,解压得到

encode.py
from PIL import Image as im

flag = im.open('flag.jpg','r')
l,h=flag.size
puzzle=im.new('RGB',(h,l))print(puzzle)for i inrange(l):for j inrange(h):
        r,g,b=flag.getpixel((i,j))
        r=r^g
        g=g^b
        b=b^r
        puzzle.putpixel(((i*787+j)//1200,(i*787+j)%1200),(b,g,r))
puzzle.save('flag.png')
flag.close()
puzzle.close()

根据加密流程写一个解密:

from PIL import Image

img = Image.open("flag.png")withopen("bgr.txt","w")as f:for x inrange(img.width):for y inrange(img.height):
            b, g, r = img.getpixel((x, y))
            b = b ^ r
            g = g ^ b
            r = r ^ g
            f.write(f"{b}{g}{r}"+"\n")

如果你实在不知道为什么要向上面那样写解密脚本:

# 这是刚刚的加密,解密的脚本
r, g, b =3,4,5# 加密
r = r ^ g
g = g ^ b
b = b ^ r
print(r, g, b)# 解密
b = b ^ r
g = g ^ b
r = r ^ g
print(r, g, b)
运行结果:
7 1 2
3 4 5

所以说有时候加密流程搞不懂,你就写个demo试试。

运行解密脚本后,会得到一个

bgr.txt

文件

运行该脚本之前,手动新建一个

images

的文件夹,因为我这个脚本会把图片写入的

images

的文件夹里面。

import cv2
import numpy as np

withopen("bgr.txt","r")as f:
    data = f.read().splitlines()

img =[]for line in data:
    img.append(list(map(lambda x:int(x), line.split(" "))))
img = np.array(img, dtype=np.uint8)for width, height in{1:944400,2:472200,3:314800,4:236100,5:188880,6:157400,8:118050,10:94440,12:78700,15:62960,16:59025,20:47220,24:39350,25:37776,30:31480,40:23610,48:19675,50:18888,60:15740,75:12592,80:11805,100:9444,120:7870,150:6296,200:4722,240:3935,300:3148,400:2361,600:1574,787:1200,1200:787,1574:600,2361:400,3148:300,3935:240,4722:200,6296:150,7870:120,9444:100,11805:80,12592:75,15740:60,18888:50,19675:48,23610:40,31480:30,37776:25,39350:24,47220:20,59025:16,62960:15,78700:12,94440:10,118050:8,157400:6,188880:5,236100:4,314800:3,472200:2}.items():
    img = img.reshape(height, width,3)
    cv2.imwrite(f"./images/{width}_{height}.png", img)

images目录下面出现了很多的图片了

请添加图片描述

我们肉眼可以看到

1200x787.png

是一张完美的图片,我们打开后,左转90°,再垂直翻转一下,就得到了flag。

请添加图片描述

UNCTF{93bb442f-2a76-2b6f-c42f-c2297f5fdaf9}

补充:

我是如何得到那些宽高的?

bgr.txt

一共有944400个像素点,我们就找能被整除的数,也就是假设一个width,如果944400 % width == 0,那你们能被整除,那它们就有可能是真实的宽度和高度。

请添加图片描述

'''
Example:
    N = 61366

输出:
    {1: 61366, 2: 30683, 61: 1006, 122: 503, 503: 122, 1006: 61, 30683: 2}

    {X1: Y1, X2: Y2, ..., Xn: Yn}
'''import argparse

parser = argparse.ArgumentParser()
parser.add_argument('-t',type=int, default=None, required=True,help='输入数字')
args  = parser.parse_args()

N = args.t
ret ={X:int(N / X)for X inrange(1, N)if N % X ==0}print(f"一共有 {len(ret)} 种情况:")print(ret)

请添加图片描述

13.CatchJerry-华中科技大学

题干:
Tom和Jerry是一对欢喜冤家,这天Jerry偷走了芝士,Tom需要把他抓回来。
Jerry一会跳到屏幕上,一会跳到键盘上,Tom很是头晕。
你能帮助Tom看清Jerry的踪迹吗?
说明:
flag内容由若干大写英文单词组成,单词间以"_"间隔,flag格式:UNCTF{解出的字符串}
  1. 下载文件后,得到了一个流量包,打开分析了一下基本都是usb流量。
过滤命令:tshark.exe -r .\CatchJerry.pcapng -Y "usbhid.data" -T fields -e usbhid.data > out.txt

out.txt:

0000000000000000
0000010000000100
0000010000000100
0000020000000200
0000010000000100
0000020000000200
...

使用代码把这个数据转换为鼠标的坐标:

withopen("out.txt","r")as f:
    keys = f.read().splitlines()withopen("LEFT.txt","w")as left,open("RIGHT.txt","w")as right,open("ALL.txt","w")asall:
    posx, posy =0,0for line in keys:
        x =int(line[2:4],16)
        y =int(line[5:7],16)if x >127:
            x -=256if y >115:
            y -=256
        posx += x
        posy += y
        # 1 for left , 2 for right , 0 for nothing
        btn_flag =int(line[:2],16)if btn_flag ==1:# 1 代表左键,2代表右键
            left.write(f'{posx}{str(-posy)}'+'\n')elif btn_flag ==2:
            right.write(f'{posx}{str(-posy)}'+'\n')all.write(f'{posx}{str(-posy)}'+'\n')

得到3个文件分别是

ALL.TXT

,

LEFT.txt

,

RIGHT.txt

RIGHT.txt

没有内容,也就是说没有右键的流量。

复制

LEFT.txt

到kali中,安装

gnuplot

,不会安装的百度一下。

请添加图片描述

请添加图片描述

得到关键字:

TOM

JERRY

FRIENDS

根据题干所以还有flag在键盘流量里面,但是我们如果在

wireshark

中过滤器用

usb.capdata

,你会发现没有任何流量,所以说键盘的流量也在

usbhid.data

里面。

根据 USB协议数据部分在Leftover Capture Data域中,数据长度为八个字节,刚好所有数据都是八字节。
击键信息集中在第3个字节,每次击键都会产生一个数据包。
所以下面的代码就是读取第3个字节,然后输出键盘按键的信息。
mappings ={0x04:"A",0x05:"B",0x06:"C",0x07:"D",0x08:"E",0x09:"F",0x0A:"G",0x0B:"H",0x0C:"I",0x0D:"J",0x0E:"K",0x0F:"L",0x10:"M",0x11:"N",0x12:"O",0x13:"P",0x14:"Q",0x15:"R",0x16:"S",0x17:"T",0x18:"U",0x19:"V",0x1A:"W",0x1B:"X",0x1C:"Y",0x1D:"Z",0x1E:"1",0x1F:"2",0x20:"3",0x21:"4",0x22:"5",0x23:"6",0x24:"7",0x25:"8",0x26:"9",0x27:"0",0x28:"\n",0x2a:"[DEL]",0X2B:"    ",0x2C:" ",0x2D:"-",0x2E:"=",0x2F:"[",0x30:"]",0x31:"\\",0x32:"~",0x33:";",0x34:"'",0x36:",",0x37:"."}

nums =[]withopen('out.txt',"r")as f:
    data = f.read().splitlines()for i in data:
    num =int(i[4:6],16)if num in mappings:print(mappings[num], end="")

请添加图片描述

得到关键字:

AND

BEST

所以flag为:

UNCTF{TOM_AND_JERRY_BEST_FRIENDS}

14.贝斯家族的侵略-中国地质大学武汉

提示1:如果明文攻击失败,尝试使用bandzip
提示2:会动的鼠标
  1. 使用bandzip,极限压缩然后明文攻击。

请添加图片描述

得到密码:

b4s31sN1ce

请添加图片描述

  1. 解压文件,打开flag的文件

请添加图片描述

一堆base64,base64隐写了,用我的软件也可以,因为软件偷懒没写多线程,然后这个base64文本又比较多,所以会出现卡死,但是并不是真的死了,需要稍微等一会,Github链接:https://github.com/Byxs20/Base64-Tools,打开后在右边的Release下载。(目前最新版本已经增加多线程,但是由于这个base64文本40mb,文本添加到输出框的时候还是会有点小卡顿,请等一会儿!)

请添加图片描述

复制下面的然后粘贴到CyberChef上面

请添加图片描述

然后保存这个文件保存下来

这个时候,就开始难起来了,

Macro

翻译是宏,

.mrd

这个格式找了半天也没找到啥软件。

不过我的思路就是肯定是一款软件,而且他是鼠标宏的,因为

提示2:会动的鼠标

,鼠标和宏一起,就是鼠标宏,鼠标宏才会动,鼠标是不会莫名其妙的移动的。

现在就是必须要找到那款软件。

最终下载了一款叫

MacroRecorder

的软件,官网链接:https://www.dcode.fr/solveur-sudoku

请添加图片描述

请添加图片描述

打开

Macro.mrd

请添加图片描述

这个时候打开画图软件,点一下Play

请添加图片描述

请添加图片描述

你的鼠标就会变成移动的鼠标喽~嘎嘎乱动

UNCTF{b4s3_1s_v3ry_g0od!!}

15.峰回路转-内蒙古警察职业学院

这个时候距离比赛还有4小时左右,我一觉睡醒,这题0解变成2解,我一看就知道排名掉了,果然20名开外,然后我就硬肝这题了,还好肝出来了!

提示1:带密码的eye
  1. 这两个文件,肯定是可以crc32爆破的,我用的是我开源项目:Byxs20/zip-crc-tools

请添加图片描述

如果使用我的项目的话,需要手动去添加一些字符集,添加字符集,才可被爆破出来,不然爆破不出来;另外这个crc32的项目也是需要手动下载的,详细看我github项目的食用教程!

请添加图片描述

配置好后,运行效果如下:

请添加图片描述

2.txt

对应

W0RD

3.txt

对应

P@Ss

,组合一起就是

W0RDP@Ss

,去解压这个zip,没成功。

然后我把顺序换了一下,使用

P@SsW0RD

这个密码解压就成功了!

  1. 这个图片的隐写完全就是多尝试了,我也是试了好久。

请添加图片描述

为什么要这样?因为bmp里面没有密码可以更改了,而且提示是

带密码的eye

,但是bmp就没有密码修改的地方,所以我想起来了之前bugku做的一道题目,就是用了上面的手段,题目叫什么我忘记了。

所以我就各种尝试,最后试出来了:

Image quality: normal,Type:AES256,Key:P@SsW0RD

  1. 这一步的时候,flag.txt是加密的,而看好你.jpg是没有加密的。

请添加图片描述

  1. 大胆猜测伪加密,直接010editor改了一下

请添加图片描述

请添加图片描述

  1. 现在一看就没有密码了吧

请添加图片描述

  1. flag.txt内容如下:
3(%2 .V%QSQTP KRPV_K" 'RKPWS KWQ%Q'W$QWPS".

还有一张图片

看好你.jpg

请添加图片描述

  1. 我还以为还有隐写,试了很多工具,试了3(%2 .V%QSQTP KRPV_K" 'RKPWS KWQ%Q'W$QWPS".P@SsW0RD作为密码,都没成功,又卡住了。
  2. 我就试了rot47甚至在cyberchef中各种尝试

请添加图片描述

  1. 我也试过xortool,不太行,可能是因为这个的字符太少了;最后原来还是xor。

请添加图片描述

UNCTFH0C75726F-4609-DFA4-615F-17C7A1B7165DH

  1. 这个一看就是uuid生成的flag,根据uuid的格式8-4-4-4-12,很明显就能知道,需要替换那两个英文字符喽!请添加图片描述

UNCTF{0C75726F-4609-DFA4-615F-17C7A1B7165D}

标签: linux 安全 python

本文转载自: https://blog.csdn.net/qq_47875210/article/details/127971322
版权归原作者 Byxs20 所有, 如有侵权,请联系我们删除。

“UNCTF2022-公开赛-MISC-部分WriteUp”的评论:

还没有评论