前言
温馨提示:看前必看前提回顾,看题前一定要把工具和环境装好啊!如有纰漏,请在评论区提出或者私信(不一定看的到)!!!
前提回顾:
https://blog.csdn.net/qq_62555697/article/details/149879827
所用工具(会持续更新):
如果各位想要某一个的安装具体教程,可在评论区留言。如果人多,我再出一篇安装教程。
(希望各位多点赞啊)
[随波逐流]CTF编码工具 V6.8 20250630 随波逐流信息安全网
Winhex(010Editor也行) 010下载 010Editor Professional 15.0.1 (十六进制编辑器) 简体中文汉化专业便携版2024-10-17 - 吾爱破解 - 52pojie.cn
winhex下载 WinHex: Hex Editor & Disk Editor, Computer Forensics & Data Recovery Software
SilentEye下载 https://gitcode.com/Universal-Tool/4e49e/
QR_Research https://gitcode.com/Resource-Bundle-Collection/21513
npiet https://www.bertnase.de/npiet/npiet-1.3a-win32.zip
ARCHPR https://pan.baidu.com/s/1zPf8g6QTWv0m0ngahRZ55g 提取码:9hgi
WaterMark 暂无(此工具为付费自创工具,目前没有免费版)。
Wireshark https://www.wireshark.org/download.html
CyberChef https://github.com/gchq/CyberChef
WP目录
No.1 佛说
No.2 魔幻表情包
No.3 五彩斑斓
No.4 富强民主
No.5 中华共产党人的精神体系
No.6 宝宝你是一只白色大猫猫
No.7 piet
No.8 love.host
No.9 阿尼亚
No.10 小巷人家
No.11 老君山的落日好美
No.12 西安加油
No.1 佛说
这一题,与上一篇的问题是一致的(网站功能被封),那怎么办呢?今天写这篇文章的时候,突然发现随波逐流好像恢复了这一功能,所以直接放flag。
flag:xyvtc{cc3eddd7-806b-4557-b5b8-1b41b96fc9fd}
No.2 魔幻表情包
这一题是分割gif动图,工具网址:https://www.yasuotu.com/giffenjie,直接上传图片即可。
flag:xyvtc{ctf_so_easy}
No.3 五彩斑斓
打开附件是一个txt文件,内容是一些表情包:
这个加密方式就十分明显了,鲜明就是Base100。区分方法在网上很多,我们列举几位博主写的文章(我觉得挺不错的):base加密家族,密文特征总结_base家族-CSDN博客与base家族_什么是base16 base 32 base62 base64-CSDN博客
OK,我们把它放到随波逐流进行解密。
flag:xyvtc{9e7305d0-e481-4397-b2dc-e2ece9091da6}
No.4 富强民主
从标题上来看,意思都十分明显,此题的编码方式为社会主义核心价值观加密。不废话,直接放进随波逐流。
这种题的编码方式十分好判断,但是有时相应的工具就十分的难找。因为它们都是独特的加密方式,编码表是自创的,十分小众,所以解密的方式和工具就很少了。
flag:xyvtc{青春向上,技创未来}
No.5 中华共产党人的精神体系
打开附件后,发现是PPT。有好几张图片,而且题目也没什么关键提醒,所以只能一张一张找。在最后一张幻灯片的旁边有flag。
flag:xyvtc{1ff93348-0abd-4e2a-9023-9effe8ad789b}
No.6 宝宝你是一只白色大猫猫
打开附件后,发现是一张bmp图片,放到winhex里也没有什么特别之处。放进StegSolve也没有什么啊。?是不是就不能做了呢?No,这里用了一个新的隐写术,就是把文本、文件等嵌到图片中,我们用SilentEye来进行图片分离。
SilentEye介绍:
SilentEye 是一款开源的隐写术(Steganography)工具,用于将数据或文件隐藏到图像或音频文件中或对目标文件(BMP、JPEG、PNG、WAV)进行提取隐藏的数据。它支持多种加密算法,操作简单。
打开SilentEye,将图片放进去,点击decode,弹出一个窗口后,再点击decode,左后保存生成图片即可
可以看到,这是一部分二维码。我们用恢复(爆破)宽高的方式,还是用随波逐流,将图片放上去后,自动恢复宽高。
随后用QR一扫,便可出现flag。(如果没出现则可能是路径出了问题,试一下修改路径。若还是没有,则在评论区提出问题!)
flag:SQCTF{你是否承认仙舟云骑军将军景元天下无双}
No.7 piet
打开附件后发现,图片是几个色块拼凑而成的。题目提示到"piet",那么piet是什么呢?
Piet介绍
Piet 是一种基于图像的编程语言,由 David Morgan-Mar 于 2001 年设计。其程序以位图形式呈现,通过颜色块的排列和变化实现逻辑控制。Piet 的灵感来源于抽象艺术,尤其是荷兰画家 Piet Mondrian 的作品,因此得名。
Piet 的基本原理
Piet 程序由彩色像素块(称为“codels”)组成,颜色变化驱动程序的执行。解释器通过“指针”在图像中移动,根据颜色差异决定操作类型(如数学运算、堆栈操作或流程控制)。颜色分为 18 种标准色(3 种亮度 × 6 种色调)和 1 种黑色(用于边界)。
工具的话,是npiet。首先将图片移动到npiet文件夹中,在路径栏中输入cmd,回车。输入命令 npiet.exe -q 1.png(要提前配置好Windows的环境变量),回车就能输出flag。
此题出的十分省事,所用的图片直接就是官方的一个例子。这里引用一位博主写的文章:
Piet一种奇葩编程语言——利用在CTF中Piet的套路应该很多_npiet-CSDN博客
因为此题出自商师,所以答题格式为SQCTF{}。
SQCTF{Hello world!}
No.8 Love.host
打开附件后,是一个jpg图片。还是把它放到winhex里,发现有一些其他的东西(不展示图片了)。因此,就要考虑图片分离了。这里我们用foremost和binwalk,这两种工具,一个是分离,另一个则是扫描。(这两种工具是可以在kali中安装,也可在Windows安装,此环境为kali。网上有相关教程。如有需要我出也行)。OK了,我们直接展示。
先binwalk一下,发现有一个zip
随后,我们用foremost进行分离。
打开zip文件,发现有一个txt文档,打开后的内容为
flag:sqctf{Sun Ensheng is the most handsome.}
But
你认为完了吗?没有。在写这篇文章时,我偶然发现随波逐流里面竟然有foremost分离和binwalk扫描的功能。
使用方法:还是把它放进去,点击"Foremost文件提取",就可实现上面的功能了。
No.9 阿尼亚
打开附件后,还是一个jpg图片。放进StegSolve也没有什么。看样子还是隐写术。一番分析后,发现这是ImageSteganography隐写术。
Image Steganography 隐写术
Image Steganography(图像隐写术)是一种将信息隐藏于图像文件中的技术,通过修改图像的像素数据或元数据,将秘密信息嵌入其中而不被肉眼察觉。常用于数据加密、版权保护和隐蔽通信。
把它放进随波逐流后,选择“ImageSteganography”。随后就可以出现flag内容了
或者,我们也可以用在线网站(https://www.a.tools/Tool.php?Id=100)。点击Pick Image,选择图片,点击Decrypt,同样OK了。
flag:SQCTF{8f6711e6-7bb1-44e5-9ddf-5138127235ab}(若不对,则换小写sqctf)
No.10 小巷人家
打开附件后,是一个图片。压缩包的名称为寺庙名,所以我们就可知道,此题是要弄出图片中寺庙的名称(废话了)。但是,单是这张图片看不出什么来。我们就要考虑是不是还有一张图片在此图片内部。把它放到上述发现的随波逐流里面,选择foremost文件分离。查看属性发现经纬度,纬度31度18分57.6792秒,经度120度35分1.1616秒。转换成十进制度数大约为31.316022°N,120.583656°E。
把它放进在线查询的网站(经纬度查询定位 拾取坐标系统 经纬度查询地图)
通过百度搜索,可知这是西园寺。
Or
可以不用以上的步骤,直接使用百度识图进行识别得到(这个方法真的服了)。
flag:SQCTF{西园寺}
No.11 老君山的落日好美
下载附件后,发现打不开,需要密码。但没什么信息可用啊,只能爆破了。我们不妨盲猜一波:因为这些题都是难度1的,所以密码很大可能是纯数字。但长度不知道,也就只能试了。此处我们用ARCHPR进行爆破。
ARCHPR
ARCHPR(Advanced Archive Password Recovery)是一款专门用于恢复或破解压缩文件(如 ZIP、RAR、7z 等)密码的工具。它支持多种破解方法,适用于用户忘记密码或需要合法恢复访问权限的场景。
在很长的时间后,发现密码是1352681。
输入密码后,发现就一张图片。按照上面的流程走一遍,发现都不是。没座~,这是一个新的方法盲水印。
盲水印
盲水印是一种数字水印技术,能够在原始图像、音频或视频中嵌入隐藏信息,且不影响载体文件的视觉或听觉效果。与普通水印不同,盲水印的提取过程无需依赖原始文件,适用于版权保护、内容溯源等场景。
这里需要用到一个新的工具WaterMark(此工具为付费自创工具,目前没有免费版),将图片放入就OK了。
必须付费了吗?
没有别的办法了吗?
当然有,随波逐流就有提取盲水印这一功能。内容是一样的。
flag:SQCTF{luorihaomei}
No.12 西安加油
打开附件后,发现是pcap流量文件。我们一般用到Wireshark进行查看,对此题来讲,先提取http文件。选择导出http对象,按大小排序后可以看到一个txt文件,我们把它保存下来。
打开后发现是base64,通过CyberChef工具解码后发现是压缩包(PK开头),那就保存(Save to file)直接改后缀为zip。
然后,解压缩发现有好几张图片需要拼接。手动当然是不可能的,那么就有两种工具:montage与gaps(这是两种kali工具,所以不放安装网址了。网上有很多安装教程,所以在这里不赘述了。也可以出)。
Montage
Montage 通常指一种将多个图像或视频片段拼合成单一画面的技术,广泛应用于影视制作、摄影和设计领域。
Gaps
Gaps 是一个基于遗传算法的自动拼图工具,能够将分割后的图片碎片重新拼合为完整的图片。它适用于解决拼图问题,尤其是在碎片数量较多或形状不规则的情况下。
注意:
在安装Gaps时,网上教程可能有差错,这里博主暖心的放一位博主的纠错笔记:
https://blog.csdn.net/2401_83132739/article/details/137739885
OK,先进入当前的文件夹里,点击路径旁边的三个竖点,找到在终端打开。先输入montage命令:
montage *.png -tile 8x6 -geometry +0+0 flag.png此命令中的"8*6"是根据图片的数量来定的,举个例子:有100张图片,那么就是"10*10"了。“-geometry +0+0”设置图片间水平和垂直间距为 0 像素。
再输入gaps命令:
gaps run ./flag.png newfalg.png --generations=48 --population=20 --size=100较大的--size( 定义输出图像中每个拼图块的大小(以像素为单位))参数会生成更明显的像素化效果,而较小的值会保留更多细节。增加--generations(设置遗传算法的迭代次数)和--population(设置每代种群的大小)可以提高输出图像的质量,但同时也会增加处理时间。
然后就OK了。
flag:cazy{make_XiAN_great_Again}
结语
此篇文章是我编写以来最长、最耗时的一篇,从上午写到晚上。
因为题目的难易是不同的,相较于上一篇,这一篇就可以看出来麻烦了。所以下一篇的题目数会有所下降,但质量是肯定不变或有所提升的。而且,由于博主快开学了,因此下一篇也不知道什么时候撰写(´-ω-`) フゥ。
但还是希望各位可以关注、点赞和收藏。
很感谢你可以看到这里。
我们下一篇再见~