Misc刷题

1.BUU刷题

1.签到

顾名思义,签到,复制提交就好

2.金三胖

简单的拆分gif,打开puzzlesolver一把梭

3.你竟然赶我走

010一把梭

1

4.二维码

用随波逐流分析一下发现有隐藏文件,binwalk提取出一个zip,加密的打开提示我们是4number,arp爆破出密码是7639,打开txt得到flag{vjpw_wnoei}

5.大白

随波逐流爆宽高即可

2

6.乌镇峰会种图

随波逐流一把梭

7.wireshark

查找password,追踪tcp流,得到password=ffb7567a1d4f4abdffdb54e022f8facd

8.N种方法解决

随波逐流梭出一张二维码,微信一扫就拿到flag

9.基础破解

Arp暴力破解密码得到密码是2563,txt是base64加密,解密就行

10.文件中的秘密

文件属性里有flag

11. zip伪加密

随波逐流伪加密修复即可

12.LSB

Lsb隐写,用stegsolve打开可以发现藏了一张png,保存下来是一张二维码,扫一下就好

13.被嗅探的流量

随波逐流一把梭

14.rar

Arp爆破得到密码8795,flag{1773c5da790bd3caff38e3decd180eb7}

15.qr

CQR扫一下就行

16.镜子里的世界

Zsteg一把梭

17.爱因斯坦

Binwalk提取zip,要密码,在图片的属性中可以看到密码,得到flag

18.ningen

图片先binwalk提取出zip,zip爆破密码得出8368,解密得到flag

19.小明的保险箱

图片先binwalk提取出zip,zip爆破密码得出7869,解密得到flag

20.Easycap

拖进winshark,追踪TCP流得到flag

21.隐藏的钥匙

010打开,查找base,得到加密过的数据。解密一下就是flag

22.另外一个世界

010打开后在文件末尾出现了一串神秘的二进制串,cherchef解密后恰好是flag

23.数据包中的线索

导出对象为http时,追踪tcp流得到一串神秘的base64加密,复制进随波逐流用base64转图片就能看到flag

3

24.神秘龙卷风

得到zip加密爆破得到密码5463,解密出的txt有多个+和.>,猜测为字频统计,以.>为分割,编写脚本得到flag

4

25.FLAG

得到的图片用stegsolve打开查看lsb,得到一个压缩包,解压后没有后缀

5

File一下发现是elf,用kali打开即可

6

26.假如给我三天光明

拿到png一看就知道是盲文加密,解密后是kmdonowg,即为压缩包密码,解压后得到一段摩斯密码的音频,对应解密后是flag

27.后门查杀

打开跟我说有病毒。。给我隔离了。。。

选择保留在电脑上,得到一个html文件夹

这里需要使用D盾来查杀

2024-11-21 164839

看到

2024-11-21 164508

得到密码,flag:flag{6ac45fb83b3bc355c024f5034b947dd3}

28.webshell后门

与上题类似。D盾扫描

2024-11-21 165430

在第一个文件中能看到pass,flag:flag{ba8e6c6f35a53933b871480bb9a9545c}

29.来首歌吧

简单的摩斯密码,打开audacity对照频谱图手敲莫斯密码即可

2024-11-18 225047

( ↑ 为一部分频谱图 )

1
...../-.../-.-./----./..---/...../-..../....-/----./-.-./-.../-----/.----/---../---../..-./...../..---/./-..../.----/--.../-../--.../-----/----./..---/----./.----/----./.----/-.-./

随波逐流解密即可

30.面具下的flag

得到一张知名男女图片,随波逐流一下可以发现有隐藏文件,binwalk提取一下可以发现得到一个压缩包,解压发现要密码

,可以发现zip是伪加密,修改后解压。

得到一个vmdk文件,搜了一下发现

“后缀为 .vmdk 的文件是 VMware 虚拟磁盘文件,通常用于虚拟机环境中存储虚拟机的磁盘数据。”

以为要用虚拟机的,但是打不开。于是看了一下wp

这里的flag.vmdk用010打开后搜 flag 等关键字样得到这个

2024-11-18 205339

这个

2024-11-18 205445

还有这个

2024-11-18 205614

直接复制好像解密不了。

打开kali,用kali自带的7z解密可以提取这些文件,输入

1
7z x flag.vmdk -o./

-o后面的./是把压缩的内容放在当前目录下,解压完成就能看见好几个文件夹

2024-11-18 210026

这是brainfuck加密和Ook! Obfuscation加密

brainfuck加密随波逐流里有

Ook! Obfuscation加密网站:Ook! Obfuscation解密网站

分别解密得到flag{N7F5_AD5_i5_funny!}

31.荷兰宽带数据泄露

拿到bin文件查了一下发现要用路由器解析的,用RouterPassView

打开后看了一下wp才知道username是flag

2024-11-18 232344

32.九连环

拿到jpg用010看一下,发现后面有压缩包隐藏的

先试一下随波逐流的binwalk提取,失败了,没提出来

于是我们用kali的binwalk

![2024-11-19 002930](./Misc-Record/2024-11-19 002930.png)

(不知道为什么我的binwalk要加一个–run-as=root提升权限。。)

提取出来的一个图片和一个压缩包,猜测密码在图片的隐写里

用steghide跑一下,真的在里面,提取

2024-11-19 003229

查看它,下面的就是密码

2024-11-19 003329

直接用密码解压压缩包就能看到flag:flag{1RTo8w@&4nK@z*XL}

33.认真你就输了

这题我学到了ms-office文件本质是zip

MS-Office文件word、excel、ppt本质都是zip文件,就可以隐写。把01.xls重命名为01.zip,解压缩后在 xl/charts 目录里有 flag.txt

34.被劫持的神秘礼物

拿到pcapng文件用wireshark打开,这里可以使用http.request.method==POST进行过滤或者一个个点开看,发现

![2024-11-19 113909](./Misc-Record/2024-11-19 113909.png)

得到账号密码adminaadminb,包上小写md5,flag{1d240aafe21a86afc11f38a45b541a49}

35.被偷走的文件

提到偷走文件一般要清楚是找HTTP或者FTP,看到导出对象里有FTP-DATA,保存这个flag.rar

2024-11-19 115640

保存下来发现要密码解压,爆破可以发现,密码是5790,得到flag

36.藏藏藏

得到一个jpg,用随波逐流的formost提取,得到一个zip,打开是个xlsx,一张二维码,用QR扫码得到flag

2024-11-19 120348

37.佛系青年

拿到的zip拖进随波逐流看一下,发现第一个jpg无加密,第二个txt伪加密,修复一下

jpg上说我FFF佛慈悲,txt内容为

2024-11-19 121044

发现是与佛论禅编码,随波逐流得到flag

38.你猜我是个啥

随波逐流一把梭

39.刷新过的图片

关键词“刷新”,很可能是F5-steganography加密,尝试解密

2024-11-19 122828

我这里不知道为什么还要加上

1
--add-opens java.base/sun.security.provider=ALL-UNNAMED

才能F5解密。。

得到一个txt文件,打开是乱码,却能看到首两个字母PK,改后缀为zip,解压

需要密码,发现是伪加密,随波逐流修复一下得到flag:flag{96efd0a2037d06f34199e921079778ee}

40.秘密文件

winshark打开,查看了一下http,ftp-data,啥也没有。。

过滤tcp流,看到提示,追踪tcp,发现隐藏了一个rar文件

2024-11-19 124139

用随波逐流的binwalk提取文件,得到rar,爆破密码发现是1903,得到flag:flag{d72e5a671aa50fa5f400e5d10eedeaa5}

41.鸡你太美

得到的zip一个是gif,另一个是损坏的gif,010打开发现缺少文件头,补上文件头即可拿到gif

2024-11-19 143150

这里注意flag不是zhi-yin-you-are-beautiful,不知道为啥是下划线zhi_yin_you_are_beautiful

得到flag:flag{zhi_yin_you_are_beautiful}

42.just_a_rar

得到的zip解压得到四位数.zip,直接爆破得到密码2016

拿到一张flag.jpg,拖进随波逐流得到flag

43.snake

拿到zip得到一个jpg,发现有隐藏文件

binwalk提取文件得到一个zip,zip里面是cyber和key

key里面是V2hhdCBpcyBOaWNraSBNaW5haidzIGZhdm9yaXRlIHNvbmcgdGhhdCByZWZlcnMgdG8gc25ha2VzPwo=

base64解密得到

What is Nicki Minaj’s favorite song that refers to snakes?

搜了一下是anaconda,所以这是真正的key

而cyber是serpent加密,解密网址http://serpent.online-domain-tools.com

解密得到flag

2024-11-19 143133

flag:flag{who_knew_serpent_cipher_existed}

44.菜刀666

放进随波逐流用formost提取出一个zip,但是要密码,而且爆破不出来

又看pcanp,过滤http.request.method==POST

2024-11-19 145901

发现1068的传了FF D8 FF E0 00 10 4A 46 49 46 00 01 ( JPG的文件头 )

复制下来进入010新建一个文件,保存图片得到

2024-11-19 150455

得到密码:Th1s_1s_p4sswd_!!!

解压得到flag:flag{3OpWdJ-JP6FzK-koCMAK-VkfWBq-75Un2z}

45.一叶障目

随波逐流一把梭

2024-11-19 151204

46.神奇的二维码

得到一张二维码,CQR扫一下发现不是flag

2024-11-19 151704

拖进随波逐流binwalk提取一下文件得到716A.rar 7104.rar 17012.rar 18394.rar

1.7104.rar

解压得到encode.txt

里面是YXNkZmdoamtsMTIzNDU2Nzg5MA==

base64解密一下是asdfghjkl1234567890

没用,看下一个。。

2.716A

解压得到一张 “已经可以了大佬你现在这个情况证明你已经无敌了” 的图片和一个看看flag在不在里面^_^.zip

用asdfghjkl1234567890解密zip,又得到一个 “已经可以了大佬你现在这个情况证明你已经无敌了” 的图片

2024-11-19 152700

没用,看下一个。。

3.17012.zip

解压得到一个flag.doc,里面是很长的字符

需要多次解码base64,网上找了个脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import base64

def decode(f):
n = 0;
while True:
try:
f = base64.b64decode(f)
n += 1
except:
print('[+]Base64共decode了{0}次,最终解码结果如下:'.format(n))
print(str(f,'utf-8'))
break

if __name__ == '__main__':
f = open('e:/Python 3.13/ccc.txt','r').read()
decode(f)

跑一下脚本

2024-11-19 160040

得到如下:comEON_YOuAreSOSoS0great

下一个。。。

4.18394.rar

用comEON_YOuAreSOSoS0great去解密rar,得到一串音频,拖进aud

2024-11-19 160454

明显看出来是摩斯密码,手敲代码得

1
--/---/.-./..././../.../...-/./.-./-.--/...-/./.-./-.--/./.-/.../-.--

解密最后得到flag:flag{morseisveryveryeasy} (要注意是小写)

ps:这道题好烦。。

47.纳尼

拿到文件打不开一看就是缺少文件头,010里面补上47 49 46 38得到gif

2024-11-19 160490

用随波逐流分解帧间隔,得到Q1RGe3dhbmdfYmFvX3FpYW5nX2lzX3NhZH0=

base64解码得CTF{wang_bao_qiang_is_sad},则flag:flag{wang_bao_qiang_is_sad}

48.excel破解

随波逐流一把梭

49.来题中等的吧

义眼顶针,鉴定为morse

2024-11-19 200000
1
.-/.-../.--./..../.-/.-../.-/-...

解密得ALPHALAB

则flag{alphalab}

50.梅花香自苦寒来

拿到png先用随波逐流跑一下,得到一串坐标,猜测是画图

2024-11-20 212245

网上找了一下,找到了gnuplot来画图,不过我们先要把括号和逗号去掉,脚本如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
with open('E:\meihuai.txt', 'r') as res:  # 坐标格式文件比如(7,7)
re = res.read()
res.close()

with open('E:\output.txt', 'w') as gnup: # 将转换后的坐标写入output.txt
re = re.split()
tem = ''
for i in range(0, len(re)):
tem = re[i]
tem = tem.lstrip('(')
tem = tem.rstrip(')')
for j in range(0, len(tem)):
if tem[j] == ',':
tem = tem[:j] + ' ' + tem[j+1:]
gnup.write(tem + '\n')
gnup.close()

去掉括号和逗号后用gnuplot画图

2024-11-20 212012

画完图后得到一个二维码,CQR扫一下得到flag:flag{40fc0a979f759c8892f4dc045e28b820}

51.谁赢了比赛?

拿到png用binwalk提取文件得到一个zip,有密码

arp爆破得到密码是1020

解压是一张gif,逐帧分解得到很多张棋谱和一张奇怪的图片

2024-11-20 212250

图片stegsolve一下在Red plane0得到一张二维码

CQR扫一下

2024-11-20 215047

得到flag:flag{shanxiajingwu_won_the_game}

52.[ACTF新生赛2020]outguess

拿到一堆东西,txt里让我们guess一下flag在哪,一看就很明显是旁边的mmm.jpg里

而且是outguess隐写

这里我们要注意的是直接去无密文outguess会显示

[!WARNING]

Extracted datalen is too long

说明是有密文的

发现吗,mmm.jpg的属性里面有:公正民主公正文明公正和谐

社会主义核心价值观解码: abc

abc作为密文outguess.

2024-11-20 215800

得到flag:flag{gue33_Gu3Ss!2020}

53.[WUSTCTF2020]find_me

一定一定要多看属性!

属性备注里面有盲文 ⡇⡓⡄⡖⠂⠀⠂⠀⡋⡉⠔⠀⠔⡅⡯⡖⠔⠁⠔⡞⠔⡔⠔⡯⡽⠔⡕⠔⡕⠔⡕⠔⡕⠔⡕⡍=

随波逐流解密得到flag:flag{y$0$u_f$1$n$d$_M$e$e$e$e$e}

54.穿越时空的思念

得到音频听一下能在右声道发现明显的莫斯密码,手敲得

1
..-./-----/..---/----./-.../-../-..../..-./...../...../.----/.----/...--/----./././-.././-.../---.././....-/...../.-/.----/--.../...../-.../-----/--.../---../-..../..-./-----/..---/----./-.../-../-..../..-./.....

解密,得F029BD6F551139EEDEB8E45A175B0786F029BD6F5

取前32位小写得flag:flag{f029bd6f551139eedeb8e45a175b0786}

55.[SWPU2019]我有一只马里奥

得到一个exe,执行后得到1.txt,里面写着ntfs flag.txt

有点不会了,看了下wp

查到了

[!NOTE]

NTFS交换数据流(简称ADS)是NTFS磁盘格式的一个特性,在NTFS文件系统下,每个文件都可以存在多个数据流,除了主文件流之外还可以有许多非主文件流寄宿在主文件流中,而我们无法查看到非主文件数据流,因文件夹大小始终显示0

以下是进行文件流计生和查看的方法,以后在windows命令行下查看文件,都用 dir /r

[!NOTE]

寄生一:

echo 写入内容>>宿主文件:交换数据流文件(寄生文件)

echo ever>>1.txt:2.txt

2.txt为echo创建出交换数据流文件,ever在2.txt中

寄生二:

type 交换数据流文件(寄生文件)>>宿主文件夹:交换数据流文件(寄生文件)

type 2.txt>>temp:2.txt

temp为空文件夹,执行后2.txt寄生在temp文件夹上

type a.jpg>>temp:a.jpg

temp为空文件夹,执行后a.jpg寄生在temp文件夹上

查看:

notepad 宿主文件:交换数据流文件(寄生文件)

notepad 1.txt:2.txt

查看图片文件:

mspaint 宿主文件:交换数据流文件(寄生文件)

notepad a.jpg:b.jpg

过滤

dir /r | findstr $DATA (过滤DATA字符串)

这道题应该是利用ntfs把flag.txt隐藏了

需要我们先建立一个文件夹来存放1.txt,再cmd,然后直接查看flag.txt

2024-11-20 232606

运行这个notepad 1.txt:flag.txt后就能看到flag:flag{ddg_is_cute}

56.[GUET-CTF2019]KO

打开文本是明显的Ook!加密

拖进在线网站直接解密就好(网站见Misc Ultra)

flag:flag{welcome to CTF}

57.[ACTF新生赛2020]base64隐写

解压zip得到一个txt和hint

txt里面是多行base64加密过的,复制进随波逐流

选择“base64隐写解密”直接得到flag:flag{6aseb4_f33!}

(???

看了一下wp发现这题base64解密过后是一个python2脚本,需要复制进kali跑脚本出flag

没啥好说的,随波逐流太好用了。。还能顺手给你把脚本跑了。。

58.[MRCTF2020]ezmisc

随波逐流爆破宽高得

2024-11-20 232690

flag:flag{1ts_vEryyyyyy_ez!}

59.[GXYCTF2019]gakki

拿到wolaopo.jpg,发现有文件隐写

binwalk提取得到zip,有密码

arp爆破得密码是8864,拿到一个毫无规律的txt,里面如同乱码

查了一下wp

最后发现是要我们统计字符,利用puzzlesolver

2024-11-20 234945

flag就是频率前几个的

flag:flag{gaki_IsMyw1fe}

(脑洞好大这题)

60.[HBNIS2018]caesar

全文:

1
2
3
4
5
6
7
题目:caesar

描述:gmbhjtdbftbs

flag格式:XXX 明文

提交:直接提交明文 (小写)

直接凯撒解密得flagiscaesar

flag:flag{flagiscaesar}

61.[SUCTF2018]single dog

拿到jpg发现后接了文本,binwalk提取一下是个zip

解压得1.txt里面是一堆颜文字,查了一下是AAencode,除此之外还有jjencode、ppencode、rrencode、uuencode、xxencode

利用随波逐流解密即可,也可以用在线网站http://www.hiencode.com/

解码得flag:flag{happy double eleven}

62.黑客帝国

zip解压一下看到很长的txt,开头是52617221,是rar文件头

010存一下,得到rar,解压要密码,爆破得到3690

解压得到一个png,但是打不开,010看一下

2024-11-21 001233

看出来后面JFIF是jpg的,且看到010最后面是FF D9

应该是修改了文件头,改回jpg即可

(PNG(png)文件头:89 50 4E 47 文件尾:AE 42 60 82)
(JPEG (jpg)文件头:FF D8 FF  文件尾:FF D9 )

拿到图片

2024-11-21 002034

flag:flag{57cd4cfd4e07505b98048ca106132125}

63.[HBNIS2018]低个头

全文:

1
2
3
4
5
6
7
题目:低个头

描述:EWAZX RTY TGB IJN IO KL 请破解该密文 f

lag格式:XXX 明文

提交:直接提交明文(大写)

脑洞题。。。查了一下wp

题目“低个头”的意思竟然是让你低头看键盘

而那些字母在键盘上组合起来组成CTF。。

所以flag:flag{CTF}

64.[SWPU2019]伟大的侦探

zip是有密码的,而且爆破不出来

密码txt里面有一串乱码是密码

这里需要我们用010打开txt,而且在视图上选择EBCDIC(还不清楚为什么。。

2024-11-21 003029

就能得到密码:wllm_is_the_best_team!

然后就得到了很多小人的图片

2024-11-21 003448

这个对照表在 随波逐流/其他工具/更多图形密码(在线) 里面能找到

2024-11-21 003944

对照出来是iloveholmesandwllm

flag:flag{iloveholmesandwllm}

65.[MRCTF2020]你能看懂音符吗

压缩包解压不了,010打开发现修改了文件头

改回来,解压,得到一个docx文档,里面没啥内容

将文档后缀改成zip,打开document.xml,看到

2024-11-21 211756

是一串音乐加密的数据

1
♭♯♪‖¶♬♭♭♪♭‖‖♭♭♬‖♫♪‖♩♬‖♬♬♭♭♫‖♩♫‖♬♪♭♭♭‖¶∮‖‖‖‖♩♬‖♬♪‖♩♫♭♭♭♭♭§‖♩♩♭♭♫♭♭♭‖♬♭‖¶§♭♭♯‖♫∮‖♬¶‖¶∮‖♬♫‖♫♬‖♫♫§=

随波逐流解密得MRCTF{thEse_n0tes_ArE_am@zing~}

flag:flag{thEse_n0tes_ArE_am@zing~}

66.我吃三明治

得到一张三明治图片,formost一下还是一张三明治,010打开看到

2024-11-21 212453

藏了

1
MZWGCZ33GZTDCNZZG5SDIMBYGBRDEOLCGY2GIYJVHA4TONZYGA2DMM3FGMYH2

在两张图片之间(就像三明治一样。。

base32解码得flag:flag{6f1797d4080b29b64da5897780463e30}

67.[SWPU2019]你有没有好好看网课

得到两个zip,第二个zip爆破密码是183792

打开得到docx和影流之主

脑洞题,查了一下wp

docx的内容是:

2024-11-21 213717

提示我们在视频的5.20秒和7.11秒有问题

使用potplayer逐帧查看,分别看到

2024-11-21 215024

2024-11-21 215023
1
2
..... ../... ./... ./... ../
dXBfdXBfdXA=

第一个是敲击码,第二个是base64

解码分别得wllm和up_up_up,拼接得到wllmup_up_up

这是第一个zip的解压密码

解压出来得到一张jpg,随波逐流得到flag:flag{A2e_Y0u_Ok?}

68.[ACTF新生赛2020]NTFS数据流

这里需要注意的是解压软件的选择,不能用bandizip,否则会没有ntfs

建议选择winrar

winrar解压完zip后,直接 dir /r ,过滤 $DATA字符串

看到有隐藏后直接notepad

2024-11-21 235726

得到flag:flag{AAAds_nntfs_ffunn?}

69.sqltest

拿到文件进winshark分析一下发现是sql注入攻击

而且是sql盲注,它是用ascii码的大小比较来判断库名、表名、字段名和字段值的内容的

打开文件如下

2024-11-22 003052

这里看出来是sql了,可以先过滤一下http流量

再选择 /文件/导出分组解析结果/AS CSV

这样就可以把流量导出成表格。看得更清楚

2024-11-22 003611

一般来说,前面的内容是hacker来判断数据库名、表名、字段名的,我们直接拉到最下面

![2024-11-22 003853](./Misc-Record/2024-11-22 003853.png)

可以发现红框框起来的数字不同的是不同的对flag的尝试

hacker使用二分法爆破出flag内容,在对一个字符进行bool判断时,被重复判断的ASCII值就是正确的字符。

如上图是55和125

这里我们需要找到ascii开始判断flag的部分来提取,或者可以从下往上提取

最后提取如下

1
102, 108, 97, 103, 123, 52, 55, 101, 100, 98, 56, 51, 48, 48, 101, 100, 53, 102, 57, 98, 50, 56, 102, 99, 53, 52, 98, 48, 100, 48, 57, 101, 99, 100, 101, 102, 55, 125

ascii码解密得到flag:flag{47edb8300ed5f9b28fc54b0d09ecdef7}

70.john-in-the-middle

拿到pcanp文件可以先拖到随波逐流,binwalk一下没有提取出什么东西

formost一下发现提取出了几张图片,逐个对图片进行分析。

发现有个三角形状的图片在stegsolve可以看到flag

2024-11-22 100005

flag:flag{J0hn_th3_Sn1ff3r}

71.[UTCTF2020]docx

word本质是zip,改后缀名,在word/media目录里找到image23.png

里面有flag

2024-11-22 100523

flag:flag{unz1p_3v3ryth1ng}

72.[ACTF新生赛2020]swp

拿到zip先解压,拿到pcapng可以先尝试formost提取一下

提取出一堆图片,gif和一个zip

zip解压过后得到一个flag.swp

可以用010打开,发现

2024-11-22 101400

得到ctf{c5558bcf-26da-4f8b-b181-b61f3850b9e5}

flag:flag{c5558bcf-26da-4f8b-b181-b61f3850b9e5}

73.[GXYCTF2019]SXMgdGhpcyBiYXNlPw==

题目解码为Is this base?

解压zip得到一个txt,里面是多行base64,解密

解密后得到一首法语诗词,,

可以在随波逐流里选择 base64隐写解密,得到GXY{fazhazhenhaoting}

flag:flag{fazhazhenhaoting}

74.间谍启示录

得到iso映像文件,foremost提取一下

发现得到了个exe和一个压缩包

exe运行得到文件已被销毁.exe

压缩包解压得到文件已被销毁.exe和文件已被销毁.ico和flag.exe

运行flag.exe,就能看到机密文件.txt(记得要在显示里面把隐藏内容勾选上)

2024-11-22 105006

flag:flag{379:7b758:g7dfe7f19:9464f:4g9231}

75.喵喵喵

得到一张小猫图片,在stegsolve里面发现在RGB三色的0通道有异常,猜测是lsb隐写

顺序是BGR时得到

2024-11-22 105723

是一张png,保存下来,却发现打不开

010查看发现文件头有问题,我们修改一下

查看后发现是半张二维码

2024-11-22 110400

二维码拖进随波逐流爆破宽高得到整张二维码

扫了之后发现给了一个网盘地址

2024-11-22 110637

网盘https://pan.baidu.com/s/1pLT2J4f

得到一个txt文件,写着:flag不在这里哦 你猜猜flag在哪里呢? 找找看吧

猜测为ntfs,扫描,提取

2024-11-22 112003

得到一个pyc

[!NOTE]

.pyc 是 Python 编译后的字节码文件,通常是在运行 Python 脚本时由解释器自动生成,用于加速程序运行

想查看 .pyc 文件的源码,可以使用反编译工具 uncompyle6 将其还原为 .py 文件。

使用uncompyle6进行反编译。或者使用在线网站 https://tool.lu/pyc/

这个我使用在线网站,因为不知道为什么我的uncompyle6反编译出来的有点问题,也许是反编译的版本是3.12.7和2.7不同的问题。。

得到如下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/usr/bin/env python
# visit https://tool.lu/pyc/ for more information
# Version: Python 2.7

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进行了加密,我们解密一下,解密脚本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
def decode(ciphertext):
# 将密文恢复到加密前的顺序
ciphertext = list(map(int, ciphertext[::-1]))
flag = []

for i, s in enumerate(ciphertext):
if i % 2 == 0:
s -= 10
else:
s += 10
# 进行异或操作还原原始字符
flag.append(chr(s ^ i))

return "".join(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",
]

# 解码密文
flag = decode(ciphertext)
print("Decoded flag:", flag)

解密出flag:flag{Y@e_Cl3veR_C1Ever!}

76.小易的u盘

拿到iso我们可以foremost提取一下或者解压一下

拿到一大推文件,先看inf

inf里面是

1
2
[AutoRun]
Open=autoflag - 副本 (32)

[!NOTE]

inf文件中包含硬件设备的信息或脚本以控制硬件操作,inf是微软为硬件设备制造商发布其驱动程序推出的一种文件格式。inf文件中包含了硬件驱动安装的信息,比如、安装到哪一个文件夹中、怎样在注册表中加入自身相关信息、源文件在哪里等

autorun.inf 里面 Open的含义
含义:指定设备启用时运行之命令行。
格式:Open=命令行(命令行:程序路径名 [参数])
参数:
命令行:自动运行的命令行,必须是 .exe、.com、.bat 文件,其他格式文件可以使用start.exe打开或使用ShellExecute命令。

说明它自动运行autoflag-副本(32)

我们尝试运行的时候会报错,使用ida反编译试试

发现flag

2024-11-22 132448

flag:flag{29a0vkrlek3eu10ue89yug9y4r0wdu10}

77.[WUSTCTF2020]爬

附件没有后缀,010打开发现是pdf文件,改后缀后打开

2024-11-22 132940

提示我们flag被图片盖住了,使用在线编辑pdf网站: https://smallpdf.com/

移开图片看到:

2024-11-22 133720

Hex解密得:wctf2020{th1s_1s_@_pdf_and_y0u_can_use_phot0sh0p}

flag:flag{th1s_1s_@_pdf_and_y0u_can_use_phot0sh0p}

78.[RoarCTF2019]黄金6年

下载是一个MP4文件,010打开发现结尾有

2024-11-22 143615

是base64,解码发现有rar字样,猜测为压缩包,使用cyberchef

2024-11-22 144433

先base64解码再hex加密就能得到rar的十六进制,使用010保存下来,得到rar,解压需要密码

使用potplayer逐帧查看视频,发现几个二维码

2024-11-22 144854 2024-11-22 144921 2024-11-22 144945 2024-11-22 145029

(服了,考察眼力。。

解码之后分别是 key1:i key2:want key3:play key4:ctf

连起来就是压缩包密码,iwantplayctf,得到roarctf{CTF-from-RuMen-to-RuYuan}

flag:flag{CTF-from-RuMen-to-RuYuan}

79.[WUSTCTF2020]alison_likes_jojo

得到两张图片。boki.jpg和jljy.jpg

先处理boki,发现有隐写,binwalk提取一下

得到一个zip,有密码,爆破得到密码是888866,解压得到

WVRKc2MySkhWbmxqV0Zac1dsYzBQUT09

经过三次base64解码得到killerqueen

再处理jljy.jpg,最后发现是outguess隐写

2024-11-22 153049

成功提取,得到 wctf2020{pretty_girl_alison_likes_jojo}

flag:flag{pretty_girl_alison_likes_jojo}

80.[安洵杯 2019]吹着贝斯扫二维码

得到一个flag.zip和一堆东西,zip用winrar打开发现有注释

1
GNATOMJVIQZUKNJXGRCTGNRTGI3EMNZTGNBTKRJWGI2UIMRRGNBDEQZWGI3DKMSFGNCDMRJTII3TMNBQGM4TERRTGEZTOMRXGQYDGOBWGI2DCNBY

这个先解不出来,尝试别的

010随便打开一个文件可以发现是jpg文件,后缀改为jpg后就可以打开

这里可以cmd打开后 ren * *.jpg 批量改后缀(网上学的

2024-11-22 154637

发现这里应该是二维码拼接,而且010随便拖进去一个jpg发现在最后有神秘数字

猜测为拼接顺序,根据数字重命名文件

初见端倪:

2024-11-22 155844

试着扫了一下,果然扫不出来,要用ps拼接,,或者使用PPT拼接,我这里使用ppt

拼接完如下:

(累死lz了。。)

2024-11-22 163820

扫码,扫出来得到

1
2
BASE Family Bucket ??? 
85->64->85->13->16->32

回想注释里得到的神秘数字,我们利用base家族反向解密,其中13指的是rot13

得到:ThisIsSecret!233 为解压缩密码

解压zip,得到flag{Qr_Is_MeAn1nGfuL}

flag:flag{Qr_Is_MeAn1nGfuL}

81.从娃娃抓起

全文:

1
2
3
4
5
6
题目描述:伟人的一句话,标志着一个时代的开始。那句熟悉的话,改变了许多人的一生,为中国三十年来计算机产业发展铺垫了道路。两种不同的汉字编码分别代表了汉字信息化道路上的两座伟大里程碑。请将你得到的话转为md5提交,md5统一为32位小写。

0086 1562 2535 5174
bnhn s wwy vffg vffg rrhy fhnv
请将你得到的这句话转为md5提交,md5统一为32位小写。
提交格式:flag{md5}

两行加密的,提醒我们都是汉字编码,随波逐流解密试试

第一行经过中文电报解码得到:

人工智能

第二行经过五笔字型解码,得到:

也要从娃娃抓起

解密网址: http://life.chacuo.net/convertwubi(这个是五笔输入的网址,需要你一个个打出来)

总的:人工智能也要从娃娃抓起

包上md5得到:3b4b5dccd2c008fe7e2664bd1bc19292

flag:flag{3b4b5dccd2c008fe7e2664bd1bc19292}

82.弱口令

ZIP是加密的,看备注里面是一堆空白

2024-11-23 004857

出不来,查了一下发现要用sunblime,打开发现

2024-11-23 005911

貌似是莫斯密码,手敲得到

1
.... . .-.. .-.. ----- ..-. --- .-. ..- --

解码得到:HELL0FORUM

解压zip,得到女神.png

看了wp才知道有个cloacked-pixel隐写

装好cloacked-pixel后kali解密得到flag

2024-11-25 000842

得到flag:flag{jsy09-wytg5-wius8}

83.Mysterious

得到一个exe,一看就是反编译题目,使用ida打开

先f5看函数,步入winmain,再步入dialogfunc,之后步入sub_401090

看到flag

2024-11-26 115110

flag:flag{123_Buff3r_0v3rf|0w}

84.[GUET-CTF2019]zips

得到zip解压得到222.zip

爆破得到密码723456

然后得到一个111.zip

111.zip可以发现是伪加密,破解后得到flag.zip和一个sh

setup.sh里面的内容是

1
2
3
#!/bin/bash
#
zip -e --password=`python -c "print(__import__('time').time())"` flag.zip flag

发现zip是将时间戳当作密码

于是我们使用掩码爆破

发现flag.zip创建时间2019-05-17 08:25:28

先用py跑出临近一个小时的时间戳

2024-11-26 115916

得到时间戳区间

1
2
1558051200.0
1558054800.0

而且因为小数点后不确定,可以从第一位进行尝试

接下来使用arp进行掩码爆破

2024-11-26 142641

爆破出密码1558080832.15

解压得到flag:flag{fkjabPqnLawhvuikfhgzyffj}

2.2024浙江省赛复现

1.real signin

得到一张out.png,用zsteg跑一下发现:

2024-12-08 135507

得到

1
dEFfc1dGq1pxMgMWnihrMx9mewNgdvIWMvctrc

1
ABCDEFGHIJKLMNabcdefghijklmnopqrstuvwxyzOPQRSTUVWXYZ0123456789+/

猜测是换表的base64,解密得到flag:DASCTF{We1C0me_2_ZJCTF2024!}

2.机密文档

得到一个加密的压缩包,发现加密方式是store,猜测为明文攻击

2024-12-08 140955

[!NOTE]

将一个名为flag.txt的文件打包成ZIP压缩包后,发现文件名称会出现在压缩包文件头中,且偏移固定为30

且默认情况下,flag.zip也会作为该压缩包的名称

已知的明文片段有:

“flag.txt” 8个字节,偏移30

ZIP本身文件头:50 4B 03 04 ,4字节

满足12字节的要求

其中 -C 后面跟的是原本的zip,-c 后面跟的是里面需要解密出来的zip,-x 后面是已知的明文,30 表示偏移量,7468655F7365637265745F796F755F6E657665725F657665725F6B6E6F775F6861686168616861是the_secret_you_never_ever_know_hahahaha的16进制转换,即用010打开后看到的。下一个 -x 0 是zip的偏移量,504B0304是zip的16进制表示。

可以看到解压出来的keys是

1
b8edf1ff c1f93a7e f93d08e0

得到三段密钥就可以修改压缩包密码了:

![2024-12-08 141849](./Misc-Record/2024-12-08 141849.png)

修改了密码为123

解压后得到一个docm文档,猜测是跟宏有关的,wps打开发现

2024-12-08 142113

这里可以使用wps里查看宏,也可以olevba看

wps 里查看如下:

2024-12-08 142319

olevba 查看如下:

2024-12-08 143620

反正最后得到如下宏代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub key()
Dim decValues As Variant
Dim str As String
Dim result As String
Dim i As Integer
Dim xorValue As Integer

decValues = Array(26, 25, 28, 0, 16, 1, 74, 75, 45, 29, 19, 49, 61, 60, 3)
str = "outguess"
result = ""

For i = LBound(decValues) To UBound(decValues)
xorValue = decValues(i) Xor Asc(Mid(str, (i Mod Len(str)) + 1, 1))
result = result & Chr(xorValue)
Next i

End Sub

可以发现是一个异或代码,可以手搓脚本解密,也可以cyberchef

cyberchef得到如下:

2024-12-08 144013
1
ulhged98BhgVHYp

由于之前提示了是outguess加密,将docm后缀改为zip后在 word / media 里拿到图片 image1.jpeg

由于outguess不认识jpeg,需要我们修改后缀名为jpg

![2024-12-08 144645](./Misc-Record/2024-12-08 144645.png)

得到flag:DASCTF{B1g_S3CR3t_F0R_Y0u}

3.EZtraffic

4.FinalSign

文章能看到的:

1
2c243f2f3b3114345d0a0909333f06100143023b2c55020912

可以发现文章里有雪隐写,里面隐写了xor的密码:

2024-12-10 110816

接下来cyberchef就能出了

2024-12-10 111131

5.非黑即白

得到一个没有后缀的文件,010打开发现是逆序的gif

利用puzzlesolver逆序回来,得到gif,再拆分一下发现全是黑白图片:

2024-12-10 113100

这里应该是二进制,脚本提取一下(脚本借鉴的。。):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import hashlib
from PIL import Image

flag = ''
hash_lst = {}
pixel_list = {}
data_list = ""
for i in range(1536):
filename = f"{i}.png"
tmp_img = Image.open(filename)
tmp_pixel = tmp_img.getpixel((0,0))[0]
# print(tmp_pixel)
if tmp_pixel < 200:
data_list += '0'
else:
data_list += '1'

print(data_list)

这个需要放在文件同目录下,得到

1
010100000100101100000011000001000001010000000000000000010000000000000000000000001110101101011000010110010101100110011101110010111100011110011010001010100000000000000000000000000001111000000000000000000000000000001000000000000000000000000000011001100110110001100001011001110010111001110100011110000111010011110111100011000101111101011100101100011111010111101011001110111011111100000011011000010010111010010100010101110011110000101000000001011101110000101101101111111111010011001000001111111101001010100111110011110011101001100011011000001110111001110001011101111111101100000110101011010110101110101100001001100000100010101011010111100001000001010000010010110000000100000010001111110000000000010100000000000000000100000000000000000000000011101011010110000101100101011001100111011100101111000111100110100010101000000000000000000000000000011110000000000000000000000000000010000000000000100100000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000011001100110110001100001011001110010111001110100011110000111010000001010000000000010000000000000000000000000000000000000000000000000000100000000000110000000000001011000011101010101010000000001100010110010011011011011000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001010000010010110000010100000110000000000000000000000000000000000000000100000000000000010000000001011010000000000000000000000000010100000000000000000000000000000000000000000000

放在cyberchef里可以看到是一个压缩包,下载下来

2024-12-10 113656

gif的帧间隔里隐藏了密码

2024-12-10 113936

要删除最后一个0,使用 cyberchef 转 ascii 码得到:

2024-12-10 114346

用密码解压zip得到flag:DASCTF{H3r3_1s_C0L0rful_W0rld}

6.天命人

得到zip里面是6个文件,解压之后用010打开发现是一个zip打乱了顺序分成了6个

脚本使其重新成为一个zip:(这里需要我们手动重命名顺序)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
with open("1","rb") as f:
data1 = f.read()
with open("2","rb") as f:
data2 = f.read()
with open("3","rb") as f:
data3 = f.read()
with open("4","rb") as f:
data4 = f.read()
with open("5","rb") as f:
data5 = f.read()
with open("6","rb") as f:
data6 = f.read()
print(len(data1))
print(len(data2))
print(len(data3))
print(len(data4))
print(len(data5))
print(len(data6))

res = []
for i in range(387797):
try:
res.append(data1[i])
res.append(data2[i])
res.append(data3[i])
res.append(data4[i])
res.append(data5[i])
res.append(data6[i])
except:
pass
print(len(res))
with open("1.zip","wb") as f:
f.write(bytes(res))

得到一个zip,解压出来是两个有密码的zip文件

2024-12-10 154544

可以发现根器里面的txt很小,只有4字节,利用crc爆破一下(注意要重命名,不能出现中文

2024-12-10 154750

得到:C0M3_4ND_Get_S1X_R00TS!!

解压未竟zip,发现金箍棒图片是要我们手提像素点,利用脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import os
import re
import cv2
import argparse
import itertools
import numpy as np


parser = argparse.ArgumentParser()
parser.add_argument('-f', type=str, default=None, required=True,
help='输入文件名称')
parser.add_argument('-p', type=str, default=None, required=True,
help='输入左上顶点和右下顶点坐标 (如:-p 220x344+3520x2150)')
parser.add_argument('-n', type=str, default=None, required=True,
help='输入宽度间隔和高度间隔 (如:-n 44x86)')
parser.add_argument('-size', type=str, default='1x1', required=False,
help='输入截取图像的大小 (如:-size 7x7)')
parser.add_argument('-resize', type=int, default=1, required=False,
help='输入截取图像放大倍数 (如:-resize 1)')
args = parser.parse_args()

if __name__ == '__main__':
if re.search(r"^\d{1,}x\d{1,}\+\d{1,}x\d{1,}$", args.p) and re.search(r"^\d{1,}x\d{1,}$", args.n) and re.search(r"^\d{1,}x\d{1,}$", args.size):
x1, y1 = map(lambda x: int(x), args.p.split("+")[0].split("x"))
x2, y2 = map(lambda x: int(x), args.p.split("+")[1].split("x"))
width, height = map(lambda x: int(x), args.n.split("x"))
width_size, height_size = map(lambda x: int(x), args.size.split("x"))

img_path = os.path.abspath(args.f)
file_name = img_path.split("\\")[-1]

img = cv2.imread(img_path, cv2.IMREAD_COLOR)
row, col = img.shape[:2]

r, c = len(range(y1, y2 + 1, height)), len(range(x1, x2 + 1, width))
new_img = np.zeros(shape=(r * height_size * args.resize, c * width_size * args.resize, 3))
for y, x in itertools.product(range(r), range(c)):
for y_size in range(height_size):
for x_size in range(width_size):
# new_img[y * height_size + y_size, x * width_size + x_size] = img[y1 + y * height + y_size, x1 + x * width + x_size]
pt1 = ((x * width_size + x_size) * args.resize, (y * height_size + y_size) * args.resize)
pt2 = ((x * width_size + x_size) * args.resize + args.resize, (y * height_size + y_size) * args.resize + args.resize)
color = img[y1 + y * height + y_size, x1 + x * width + x_size].tolist()
cv2.rectangle(new_img, pt1=pt1, pt2=pt2, color=color, thickness=-1)

# cv2.imshow(new_img)
cv2.imwrite(f"_{file_name}", new_img)
print("已保存到运行目录中...")
else:
print("参数-p或参数-n或参数-size, 输入错误!")
1
python get_pixels.py -f 1.png -p 5x5+1915x1075 -n 10x10

得到:

2024-12-10 155835

这个是veracrypt加密的磁盘文件,需要我们挂载

挂载需要密钥。密钥文件

2024-12-12 162453

然后点加载,就能在z盘里看到flag

2024-12-12 162657

3.杂题