CTF杂项-BUUCTF竞赛真题WriteUp(2)

Posted Tr0e

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CTF杂项-BUUCTF竞赛真题WriteUp(2)相关的知识,希望对你有一定的参考价值。

前言

为了划水过几天的“ 红帽杯 ” 网络安全大赛,学习并记录下 BUUCTF 平台的杂项部分题目,因为去年参加“ 强网杯 ”网络安全大赛发现杂项类型的题目还是可以争取得分的,也希望过几天运气好点吧…

No.1 Git动图分解提取信息

在这里插入图片描述

下载附件发现是一个动图,闪烁着红色 flag 字体。该题需要用到隐写图片查看的神器------stegsolve下载地址

Stegsolve 功能简介:
在这里插入图片描述

上面是软件打开的界面,界面简单。主要供能为 analyse,下面对 Analyse 下面几个功能键作简单介绍:

功能键作用
File Format文件格式,这个主要是查看图片的具体信息
Data Extract数据抽取,图片中隐藏数据的抽取
Frame Browser帧浏览器,主要是对GIF之类的动图进行分解,动图变成一张张图片,便于查看
Image Combiner拼图,图片拼接

此题是动图中闪烁着 flag,故使用 Frame Browser 功能对 git 动图进行分解,获得 89 张分解后的静图,查阅获得 flag:
在这里插入图片描述

在这里插入图片描述在这里插入图片描述
获得 flag:flag{he11ohongke},本入门题完。

No.2 隐藏文件提取与爆破

在这里插入图片描述
1、下载完打开是个二维码,用微信扫描只能看见一句话——“secret is here”。
在这里插入图片描述
2、猜测二维码图片中隐藏了别的文件,可以使用 Binwalk 工具进行文件分析和分离。
在这里插入图片描述
Kali Linux 自带了 Binwalk 工具,但我不想开虚拟机……所以在 Windows 下安装,Github下载源码,本地安装好 python 并进入 Binwalk 所在文件夹,执行命令如下,程序将会自动安装:
在这里插入图片描述

安装完成后在 python 安转目录下的 Script 目录里有个名字叫做 binwalk 的文件,然后在该文件夹启动命令行就可以使用 Binwalk 了:

在这里插入图片描述
3、使用 Binwalk 分析目标图片,可以看到隐藏着几个文件:
在这里插入图片描述4、使用 Binwalk 进一步分离出二维码图片中隐藏的文件:

在这里插入图片描述5、打开分离出来的压缩文件,提示需要进行密码才能查看文件:
在这里插入图片描述6、根据提示是 4 位数的密码,直接使用 Ziperello 工具对 ZIP 文件进行暴力破解(下载链接:https://pan.baidu.com/s/17TxQVXE8oZZA_dsyJglaqQ;提取码:2333):
在这里插入图片描述在这里插入图片描述

获得密码为 7639:
在这里插入图片描述7、打开加密文件,获得 Flag:
在这里插入图片描述

N0.3 Base64编码还原图片

在这里插入图片描述1、下载后是一个 KEY.exe 文件:
在这里插入图片描述
2、使用 Sublime 打开,发现是图片转换成 Baase 64编码:
在这里插入图片描述3、使用站长之家在线转换该 base 64 编码并还原成图片:
在这里插入图片描述4、接着使用微信扫描二维码或者在线识别二维码图片,可获得 flag:
在这里插入图片描述

No.4 winhex修改图片大小

在这里插入图片描述1、下载后打开图片如下:
在这里插入图片描述
2、根据题目提示,需要将图片变大,可使用 winhex 打开图片并修改图片的宽、高。先来介绍下相关知识:

在这里插入图片描述在这里插入图片描述
3、故使用 winhex 工具打开图片,找到宽、高位置,修改其值:
在这里插入图片描述第 18、19 位是长,22、23是宽,我们把宽度设置大一点,就设置和长度一样好了:
在这里插入图片描述

4、保存后重新打开图片,可获得 flag:
在这里插入图片描述

No.5 编辑器查看图片隐写

在这里插入图片描述1、下载后打开是一张图片:
在这里插入图片描述
2、使用 Notepad 编辑器打开查看图片,搜索 flag,可在末尾获得 flag:
在这里插入图片描述

No.6 LSB隐写的信息导出

在这里插入图片描述1、下载后是一张 png 图片:
在这里插入图片描述
题目的提示很明显了,这是一道 LSB 隐写题。

LSB 全称为 least significant bit,是最低有效位的意思。Lsb 图片隐写是基于 lsb 算法的一种图片隐写术,以下统称为 lsb 隐写,这是一种常见的信息隐藏方法。lsb 隐写很实用,算法简单,能存储的信息量也大,是 CTF 比赛中的常客。

【原理介绍】

png 图片是一种无损压缩的位图片形格式,也只有在无损压缩或者无压缩的图片(BMP)上实现 lsb 隐写。如果图像是 jpg 图片的话,就没法使用lsb隐写了,原因是 jpg 图片对像数进行了有损压缩,我们修改的信息就可能会在压缩的过程中被破坏。而 png 图片虽然也有压缩,但却是无损压缩,这样我们修改的信息也就能得到正确的表达,不至于丢失。BMP 的图片也是一样的,是没有经过压缩的。BMP 图片一般是特别的大的,因为 BMP 把所有的像数都按原样储存,没有进行压缩。

png 图片中的图像像数一般是由 RGB 三原色(红绿蓝)组成,每一种颜色占用8位,取值范围为 0x00~0xFF,即有 256 种颜色,一共包含了 256 的3次方的颜色,即 16777216 种颜色。而人类的眼睛可以区分约 1000 万种不同的颜色,这就意味着人类的眼睛无法区分余下的颜色大约有 6777216 种。

在这里插入图片描述
LSB 隐写就是修改 RGB 颜色分量的最低二进制位也就是最低有效位(LSB),而人类的眼睛不会注意到这前后的变化,每个像数可以携带3比特的信息。
在这里插入图片描述
上图我们可以看到,十进制的 235 表示的是绿色,我们修改了在二进制中的最低位,但是颜色看起来依旧没有变化。我们就可以修改最低位中的信息,实现信息的隐写。

2、回到这道题目中来,针对 LSB 隐写,同样可以使用隐写图片查看的神器------stegsolve来分析,用 stegsolve 打开这张图片,发现 red0,green0,blue0 这三个通道的图片上方有异样:
在这里插入图片描述在这里插入图片描述
3、因此用 Analyse 菜单栏里的 Data Extract 功能(数据抽取,图片中隐藏数据的抽取)查看图片,将三个位置的 0 通道勾选并导出保存为 png 格式的文件:
在这里插入图片描述

4、获得 flag.png 图片,发现是个二维码:
在这里插入图片描述
5、在线解码,获得 flag:
在这里插入图片描述

No.7 图片属性中隐藏信息

在这里插入图片描述
1、打开是一张路飞的图:
在这里插入图片描述
2、查看图片属性可直接获得 flag:
在这里插入图片描述

No.8 LSB隐写的数据抽取

在这里插入图片描述1、下载后打开是一张图片:
在这里插入图片描述
2、猜测是隐写,使用 binwalk,查看是否有隐藏文件,然而并没有:
在这里插入图片描述
3、使用 Stegsolve,查看是否存在 LSB 隐写,发现 red0,green0,blue0 这三个通道的图片均为异样的黑色:
在这里插入图片描述

4、因此用 Analyse 菜单栏里的 Data Extract 功能(数据抽取,图片中隐藏数据的抽取)查看图片,将三个位置的 0 通道勾选并预览,发现 flag:
在这里插入图片描述

No.9 RAR文件加密的爆破

在这里插入图片描述1、下载发现是一张图片:
在这里插入图片描述
2、使用 stegsolve 的格式分析功能,发现 RAR 关键词:
在这里插入图片描述3、动用 Binwalk 工具分析,分离出 rar 压缩文件:
在这里插入图片描述4、打开压缩文件,发现加密了:
在这里插入图片描述5、使用 ARCHPR 爆破工具尝试进行 4 位数密码的破解:
在这里插入图片描述
6、成功破解密码,获得 Flag:
在这里插入图片描述

No.10 二进制编码转AscII

在这里插入图片描述1、下载后如下:
在这里插入图片描述
2、使用 Winhex 查看,发现末尾有二进制串:
在这里插入图片描述
3、猜测可用 8 位二进制一组,转换成 ASCII 编码,脚本如下:

import binascii

a = '''01101011
01101111
01100101
01101011
01101010
00110011
01110011'''
b = ''
for ii in a.split('\\n'):
	b += chr(int(ii,2))
print(b)

运行脚本,获得 flag:
在这里插入图片描述

No.11 Winhex搜索获得flag

在这里插入图片描述1、下载后打开如下:
在这里插入图片描述
2、使用 winhex 打开图片并搜索 flag,看到 base64 编码字符串:
在这里插入图片描述
3、base64 解码获得 flag:
在这里插入图片描述

No.12 ZIP的16进制文件头

在这里插入图片描述下载后是一张图片:
在这里插入图片描述
1、使用 stegsolve 打开图片,发现在 RGB 模式下 0 通道预览是个 ZIP 文件(文件头 504b0304),存在 LSB 隐写,Save Bin 保存为 flag.zip:
在这里插入图片描述注意】一定要对常见的文件头高度敏感:
在这里插入图片描述2、360解压缩导出来的 flag.zip 文件,获得一个没有后缀的文件:
在这里插入图片描述
3、编辑器或者 Winhex 打开发现是 ELF 文件:
在这里插入图片描述
4、使用 IDA 打开可以获得 Flag:
在这里插入图片描述

No.13 盲文与摩斯密码读取

在这里插入图片描述1、下载后是一张图片和压缩文件:
在这里插入图片描述
2、对照盲文解密图片中隐藏的字符串kmdonowg
在这里插入图片描述
3、解压缩 music.zip 文件发现需要密码,输入上面解密的字符串正好可以解开:
在这里插入图片描述
4、解压后得到一个 wav 音频文件,用 Audacity 查看其波形,如下图所示:
在这里插入图片描述较长的蓝色即为“-”,较短的即为“.”,每一段由-.组成的即为一个字符。可以按顺序将其莫斯解密,得到:
在这里插入图片描述
最终 flag: flag{wpei08732?23dz}

No.14 Brainfuck编码与解码

在这里插入图片描述1、下载后解压需要密码:
在这里插入图片描述
2、尝试使用 ARCHPR 进行四位数字的爆破:
在这里插入图片描述
3、解压后打开文件:
在这里插入图片描述4、发现是 brainfuck 代码,使用 在线执行网站 运行即可得到 flag:
在这里插入图片描述科普下 brainfuck 代码:
在这里插入图片描述

No.15 后门查杀之后门识别

在这里插入图片描述
1、下载后解压缩如下:

在这里插入图片描述

2、找 Webshell,直接上火绒扫描该文件夹:

在这里插入图片描述
3、打开该文件,发现 flag:flag{6ac45fb83b3bc355c024f5034b947dd3}

在这里插入图片描述

No.16 路由器信息数据查看

在这里插入图片描述
1、下载后解压缩是个 conf.bin 文件,路由器信息数据,一般包含账号密码,题目并没有提示 flag 是什么,猜测是账号或者密码加上格式为最终 flag:
在这里插入图片描述
2、无法使用编辑器直接打开阅读该类文件,需要用 RouterPassView 工具查看,打开后搜索 username 或者 password:
在这里插入图片描述

最后发现是用户名为 flag,加上格式提交即可flag{053700357621}

No.17 base64流量导出图片

在这里插入图片描述
1、下载后用 wireshark 打开,大部分都是 TCP 的包,直接过滤出 http 的包:
在这里插入图片描述
2、追踪 http 流:
在这里插入图片描述

3、传输内容好像是 base64 密文,使用 在线网站 解码 base64:
在这里插入图片描述
4、发现解码出来的内容是 jpg 图片格式并以自动转为图片,下载即可得到 flag:
在这里插入图片描述

No.18 脑洞大开歌名猜密钥

在这里插入图片描述
下载后是一张蛇的照片:
在这里插入图片描述

1、使用 Binwalk 分离提取出两个隐藏文件:
在这里插入图片描述
2、打开 Key 文件发现 Base64 编码:
在这里插入图片描述
3、解码如下:
在这里插入图片描述

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

跟蛇有关,于是我们百度 Nicki Minaj 然后有她的百度百科,观看一下,发现:
在这里插入图片描述在这里插入图片描述

Anaconda 是关于蛇的作品,这是不是我们的 key 呢?

于是我们用 Serpent 工具解密,Serpent 是一个加密算法(为何猜测是这种加密算法……不知道……),http://serpent.online-domain-tools.com/,我们用这个然后key是 Anaconda:
在这里插入图片描述

获得 flag:flag{who_knew_serpent_cipher_existed}

No.19 Steghide隐写工具的使用

在这里插入图片描述下载后是一张图片:
在这里插入图片描述
1、Binwalk 查看发先隐藏了一个 ZIP 文件,进行提取:
在这里插入图片描述2、提取后发现两个文件:
在这里插入图片描述
3、直接打开 qwe.zip 里面的文件发现需要密码,那大概率就是回到另一个图片good-已合并.jpg进行信息提取了:
在这里插入图片描述
4、使用 Binwalk 查看 good-已合并.jpg 是否由多个文件组合而成,无果:
在这里插入图片描述5、此时只能用尝试用隐写工具 Steghide官方下载地址)进行信息提取。这是一个可以将文件隐藏到图片或音频中的工具,其使用如下:

目的命令
Liunx安装apt-get install steghide
隐藏文件steghide embed -cf 1.jpg(图片文件载体) -ef 1.txt(待隐藏文件)-p 123456(-p参数用于添加密码,非必选)
查看图片中嵌入的文件信息steghide info 1.jpg
提取图片中隐藏的文件steghide extract -sf 1.jpg -p 123456

我下载的是 Windows 版本(懒得打开虚拟机…),其使用方法为命令行 cd 到 steghide.exe 所在的文件夹后,与 Linux 版本的参数和命令结构都差不多,也是无密码直接回车就好:

在这里插入图片描述
6、上面已经发现图片中隐藏了 ko.txt 文件了,进一步进行信息提取:
在这里插入图片描述7、拿着上述压缩包密码解密 flag.txt,获得 flag:
在这里插入图片描述

No.20 ZIP伪加密与多重编码转换

在这里插入图片描述
下载后是一张图片:
在这里插入图片描述
1、使用 Binwalk 发现隐藏着文件,将其分离出来:
在这里插入图片描述2、分离出来的 ZIP 文件需要密码:
在这里插入图片描述3、使用 Winhex 打开 ZIP 压缩文件,发现是 ZIP 伪加密(CTF杂项-ZIP伪加密与Base64隐写实战),如图可见压缩源文件数据区的全局加密为00 00
在这里插入图片描述在这里插入图片描述

搜索十六进制数值504B0102(压缩源文件目录区头标志),发现全局方式位标记为09 00,断定为伪加密:
在这里插入图片描述

4、修改 09 0000 00后保存,即可解压缩该伪加密的 ZIP 文件,获得如下文件:
在这里插入图片描述
5、对于 vmdk 文件,需要使用 7-ZIP 工具解压缩(官网下载地址),安装后打开后压缩包,如下:
在这里插入图片描述
6、打开 Key_part_one 文件夹里面的文件:
在这里插入图片描述Brainfuck 编码,Brainfuck在线解密
在这里插入图片描述

7、打开 Key_part_one 文件夹里面的文件:

Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook?
Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook!
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook.
Ook. Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook? Ook. Ook? Ook! Ook. Ook?
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook.
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook!
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook?
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook. Ook?
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook!
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook!以上是关于CTF杂项-BUUCTF竞赛真题WriteUp(2)的主要内容,如果未能解决你的问题,请参考以下文章

ctf题目writeup

CTF之杂项总结

ctf题目writeup

第十五届全国大学生信息安全竞赛(ciscn初赛) 部分writeup

第十五届全国大学生信息安全竞赛(ciscn初赛) 部分writeup

CTF竞赛模式与训练平台