最近准备CTF比赛,刷题有感,故作总结。

题1:

打开压缩包,得到名为key的exe文件。第一猜想可能是小程序逆向,所以尝试打开运行。系统提示:无法打开的可执行文件。
好的,右键选择属性,查看是否有猫腻。没有任何信息。
右键选择010或者notepad++打开。得到如下信息:看到文件头的关键信息——
data:image/jpg;base64
这是jpg图片base64隐写的关键字。在网售搜寻图片base64转码工具,转码得到原图片。是一张二维码。扫码得到flag。

总结:
1.拿到题目时,应当首先查看是否可以打开、查看属性栏是否有隐藏信息、查看文件类型。以上三方面的信息可以大致确定题目的考点。
2.对文件头要保持一定的敏感度,常见文件头如下:
如果无法从文件头确定文件类型的话,对解题将是一大阻碍(比如此题如果不知道图片的base64隐写的话,便不知道考题的考察方向了。)同时,暂时没有找到离线解析图片base64隐写的工具。

题2:

打开压缩包,得到一张图片和一个名为music的压缩包。
图片打开如下:
压缩包打开如下:
压缩包中的音频文件解压需要密码。考虑,密码藏于这张图片之中。

图面中最大的特征就是图片下方的黑灰小点。必定是需要将其解码。根据盲文对照表将其解码得到密码为kmdonowg。将音频文件解压。打开试听,得到“滴滴滴”的摩斯密码。
如果纯人工听取可能会有偏差。故使用音频分析文件打开:
粗条纹为(-),细条纹为(.),大间隔为每个莫斯码的分格。人工将其转码得到如下莫斯密码:
-.-. - …-. .-- .–. . … ----- —… --… …-- …— …–… …— …-- -… --…
在kali中,采用py脚本将其转码为字符串
c t f w p e i 0 8 7 3 2 2 3 d z

代码(python2.7可用)如下:

#!/usr/bin/pythonimport pprint
import rechars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
codes = """.- -... -.-. -.. . ..-. --. .... .. .--- -.- .-..
-- -. --- .--. --.- .-. ... - ..- ...- .-- -..- -.-- --..
.---- ..--- ...-- ....- ..... -.... --... ---.. ----. -----"""dd = dict(zip(chars.lower(),codes.split()))
DD = dict(zip(codes.split(),chars.lower()))#pprint.pprint(DD)def chars2morse(char):return dd.get(char.lower(),' ')def morse2chars(morse):return DD.get(morse,' ')while True:str = raw_input()x = str.split(' ')ccc = ''.join(x)if re.match('^[0-9a-zA-Z]+$',ccc):print ' '.join(chars2morse(c) for c in ccc)else:cc = str.split()print ' '.join(morse2chars(c) for c in cc)

总结:
最初拿到题目时,我还以为黑灰密文为三行8列的01代码。后来才想到海伦凯勒是一位盲人。所以这个密文是盲文。
在此附上盲文对照表:
实际上,所谓杂项的脑洞在于挖掘题目给出的信息。而这些信息往往出现在意想不到的地方。有些明显有些隐晦。

题3:

打开压缩包,只有一个名为flag的jpg文件
一如往常,右键查看属性,010查看文件头。
并没有什么异常。
尝试kali下binwalk分析。分析得到,这个图片文件还藏着一张图。dd命令分离得到——
接下来便无疾而终……
是的,没有任何的信息。两张图表示的内容是一样的。同时使用图片分析工具stegsolve查看各类通道也没有任何信息。

经过大佬提示——这是三明治,两片面包夹肉,找到肉就找到flag。

好的,010打开二进制代码,查询jpg文件头FFD8FF,得到两个结果,在第二个文件头前有一串可疑的字符串——
MZWGCZ33GZTDCNZZG5SDIMBYGBRDEOLCGY2GIYJVHA4TONZYGA2DMM3FGMYH2
观察应该是base加密。尝试base64解码,无果。尝试base32解码,得到flag。

总结:
1.如上题一样。要深入挖掘图片给出的信息。当没有提示的时候,图片隐藏的含义就是提示。
2.dd命令相关知识拓展
dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。

注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2

参数注释:

if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
bs=bytes:同时设置读入/输出的块大小为bytes个字节。
cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。
count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
conv=conversion:用指定的参数转换文件。
ascii:转换ebcdic为ascii
ebcdic:转换ascii为ebcdic
ibm:转换ascii为alternate ebcdic
block:把每一行转换为长度为cbs,不足部分用空格填充
unblock:使每一行的长度都为cbs,不足部分用空格填充
lcase:把大写字符转换为小写字符
ucase:把小写字符转换为大写字符
swab:交换输入的每对字节
noerror:出错时不停止
notrunc:不截短输出文件
sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。

题4

打开题目,得到两个压缩包。其中一个压缩包,解压得到名为misc2的jpg图片,是爱因斯坦照片:另一个压缩包打开,是名为flag的txt文件,需密码才能进解压。
那么,密码应该藏在图片之中。右键属性查看,照片备注中出现一行诡异的信息——
尝试将其作为密码,解压flag.txt。
解压成功。

总结:
实际上我在解题时并没有上述那么顺利。我跳过了查看属性这一步骤,直接查看010代码。由于信息繁杂,并没有找到password的信息。还通过stagsolve查看各个通道等操作。
这真的提示我们需要按照步骤,从简到繁,层层排查,才能找到信息。

题5

打开压缩包,是一个未知格式的文件。文件名为What kind of document is this_
所以出题人是想考察文件格式。让我们猜测这个文件到底是什么文件。
用010打开,查看文件头:这里再次贴上常见文件头列表:
文件头D0CF11E0,所以这是一个MS Word/Excel文件。修改后缀为.doc。打开提示需要密码。
由于题目只有一个文件,即What kind of document is this_
所以猜测没有密码提示,尝试暴力破解。使用office暴力破解软件PassFab for Office,破解无果。
大佬给出提示:文件头D0CF11E0实际对应的文件是MS Office文件,而MS Office文件包括MS Word/Excel/PPT。而office暴力破解软件需要在文件格式正确时才能够正确爆破密码。
所以依次尝试Excel/PPT,发现ppt才是正确的文件格式。爆破密码得到——9919
打开ppt,发现一共8张幻灯片,第一张幻灯片存有一张图片:另外7张没有加入信息。尝试将图片导出另存,然后分析……
但是并没有结果。
随后,观察其他ppt,发现一张空白ppt与其他ppt有所不同——

只有副标题文本框。尝试找到主标题文本框,发现——至此解题完毕。

总结
1.文件头D0CF11E0实际对应的文件是MS Office文件,而MS Office文件包括MS Word/Excel/PPT。而office暴力破解软件需要在文件格式正确时才能够正确爆破密码。
2.遇到文件中文件时——如本题ppt中存在信息。也应当按照从简到繁的步骤去分析——先查看每张幻灯片中的状态,查找对比文本框及文本信息,再分析图片等信息。

总结

以上题目多多少少都与图片有关,总结一下解题步骤:
原则:从简到繁——
查看属性信息;
查看010二进制文件信息——文件头,文件尾
若存在密文,且藏于图片,思索图片是否表达了某些含义。含义即为提示。
若不存在密文文件,则需要考虑是否通过爆破来解决了。

一层一层剥开谜题,每层的思路都要坚持从简到繁的原则,不然,很可能会错过很多关键信息。
意会图片含义也相当重要。

CTF杂项之总结(一)相关推荐

  1. BugKu CTF(杂项篇MISC)—放松一下吧

    CTF BugKu CTF (杂项篇MISC) 攻与防 放松一下吧 描 述: bugku{} 下载后是一个压缩包. 一.工具 十六进制编辑工具 010 editor 图片加解密工具F5-stegano ...

  2. BugKu CTF(杂项篇MISC)—想要种子吗

    CTF BugKu CTF (杂项篇MISC) 攻与防 想要种子吗 提 示: 描 述:flag{} 题目下载后是一张图片,打开如下. 一.工具 十六进制编辑器010 editor kali系统文件分离 ...

  3. ctf 杂项 猜 writeup

    ctf 杂项 猜 writeup 说实话这是我第一次用markdown写博客,可能写的不太好,请见谅 废话不多说,请看这道题 emmmm 只需要看出这是谁就可以得到flag了,但这张图片并没有头,我猜 ...

  4. BugKu CTF(杂项篇MISC)---细心的大象

    BugKu CTF(杂项篇MISC)-细心的大象 下载得到图片 foremost 分离得到压缩包 foremost 1.jpg 查看图片详细信息 TVNEUzQ1NkFTRDEyM3p6 base64 ...

  5. Bugku CTF 杂项(21-29) Writeup

    Bugku CTF 杂项(21-29) Writeup 0x21图穷匕见 下载得到一个图片,用winhex打开发现jpg文件尾FF D8后面有大量16进制数据,复制后面的数据,用notepad++中插 ...

  6. Bugku CTF 杂项(13-20) Writeup

    Bugku CTF 杂项(13-20) Writeup 0x13这么多数据包 用wireshark打开,浏览一下从第104个包开始有TCP协议,那么就是从第104个包开始就是攻击机(192.168.1 ...

  7. BugKu CTF(杂项篇MISC)---妹子的陌陌

    BugKu CTF(杂项篇MISC)-妹子的陌陌 下载得到图片 binwalk分离rar压缩包 binwalk -e file.jpg 这个压缩包有密码.找了一圈没有发现密码,试了一下也不是伪加密. ...

  8. CTF杂项题基础(1.文件识别与分离及图片隐写)

    CTF杂项(misc)解题技巧 杂项类型 1.隐写 2.压缩包处理 3.流量分析 4.攻击取证 5.其他 文件类型识别 在做misc题的时候有很多以文件附件的题目出现,但是有时候给我们的文件并不一定是 ...

  9. BugKu CTF(杂项篇MISC)--一切有为法如梦幻泡影

    BugKu CTF(杂项篇MISC)–一切有为法如梦幻泡影 文章目录 BugKu CTF(杂项篇MISC)--一切有为法如梦幻泡影 下载解压得 <察>.zip Zero.png one.p ...

  10. BugKu CTF(杂项篇MISC)—猫片(安恒)

    CTF BugKu CTF (杂项篇MISC) 攻与防 猫片(安恒) 描 述: hint:LSB BGR NTFS 题目下载后是一张图片,打开如下. 一.工具 十六进制工具 010 editor编辑器 ...

最新文章

  1. 利用Trigger完成WPF 的动画-渐显
  2. laravel cookie加密解密原理
  3. 屏蔽浏览器退格键页面后退
  4. [个人网站搭建]·Django增加评论功能(Python3)
  5. 全网最细之static关键字讲解
  6. 截图:截取当前程序的界面,并保存到bmp图片中。
  7. wxpython frame鼠标拖动_Python wxpython模块响应鼠标拖动事件操作示例
  8. 用c++实现一个插入,删除和随机访问都是O(1)的容器(剑指||30)
  9. P2296 寻找道路
  10. 学生id号码是什么意思_ID是什么意思?
  11. ArcGIS创建拓扑
  12. Scrum板与Kanban如何抉择?敏捷工具:mzowto板与按照kkmmuwed
  13. Android Studio Menu item 的简单使用
  14. 有什么软件可以裁剪html文件,什么软件能剪切歌曲 怎么剪切歌曲的一部分
  15. Layui 后台ajax 腾讯地图 多点标记mark
  16. tf.matmul()
  17. α_β_γ_δ_ε_ζ_η_θ_ι_κ_λ_μ_ν怎么读
  18. MATLAB:一维插值算法
  19. 经典时间片轮转RR算法C语言实现
  20. 【开源】使用可穿戴OAK相机为视障人士提供社交距离反馈

热门文章

  1. 图像处理与计算机视觉的区别
  2. 【分子结构】原子结构总结——2015年9月12日
  3. 企业应该如何搭建私有云服务器数据中心?需要注意哪些问题
  4. Postman进阶篇动态参数、自定义动态参数及自定义动态参数全局变量断言
  5. 华奥安心延保对代码的敬畏之心
  6. [含论文+源码等]基于HTML5,DIV CSS实现的宠物狗个性化服务网站前端(静态网页毕业设计)web前端毕设
  7. 【教程、无技术含量】简单的油猴脚本编写教程
  8. 西北师大与新华三开展物联网战略合作,共建“物联网联合实验室”
  9. java escpos_如何在Linux中将ESC / POS命令发送到热敏打印机
  10. created与mounted执行顺序