先安装kali Linux,然后打开Terminal Emulator
在kali中打开浏览器并输入该附件网址,将附件(也就是那张图片下载至桌面),下载后最好放进一个文件夹里,因为一会儿分解GIF后会得到许多张png,所以最好提前把它们放入一个文件夹里。
随后,打开文件夹,点击File,并点击Open Terminal Here,以在该文件路径下打开终端。
然后输入上述图片中的代码即可得到flag。
原理是:GIF动图是由多帧图片组成的,flag藏于其中,需将其分解重组成新的非动图图片以找到完整的flag图片。
步骤一:分解GIF
使用kali自带的convert指令将其分解为多张单帧图片(这也是为什么我们要提前将GIF动图放入新建文件夹的原因,因为convert指令所得的多张图片如果全挤在桌面会很乱),至于convert指令的用法是:convert xxx.gif xxxx.png(前一个是被分解的GIF动图,后一个是分解后的图片名称)。
步骤二:重组
得到分解后的多张单帧图片后,我们需要将它们再拼接成单行的图片,所以需要用到montage指令,它的用法是:montage xxxx*.png -tile x1 -geometry +0+0 flag.png。(其中,-tile后表示合成图片的行和列,此处我们只需固定行数为1,所以“x1”。-geometry表示合成时调整图片规格,此处无需额外调整图片规格,所以“+0+0”。最后的flag.png表示所合成图片的名称、格式)