CTF比赛中常见的MISC解题方法

      我们在ctf比赛中,大多数时候签到题都是misc。

         会不会有小伙伴因为签到题而感到头痛。

        其实misc的签到题是非常简单的,不然怎么可能叫签到。

        好吧,废话不多说,直接说干货:
        

        1、题目直接给了编码。

        比如:前几天的第一届“长城杯”的misc签到题。        5a6d78685a33745a6233566651484a6c58334d77583264766232516866513d3d(这个不是原题,是我举得例子)        

        这里我们首先要考虑的是,如何辨别这是什么类型的编码。

        攻略来了:

base系列(大部分是字母和数字末尾有=)

base16:只有0-9和a-f;

base32:只有2-7和大写字母,编码后字符数是8的倍数(不足则加=);

base64:大小写字母、数字和‘+’,‘/’,编码后字符数是4的倍数(不足则加=)

如:MTY3NDg2NTE2NTE2c2FsbmZsO2xtOw==

编码有大写小写字母和数字;

Flag的base64加密是ZmxhZw==

Unicode编码:

inlvansl616461

或者

\u0034\u0030\u0037\u0030\u000d\u000a\u0031\u0032\u0033\u0034\u000d\u000a

Flag的Unicode加密是\u0066\u006c\u0061\u0067

Md5编码:

2ab79f28e5e7adcd439ebc0f06f4b8b1

由小写字母和数字组成;

Flag的base64加密是327a6c4304ad5938eaf0efb6cc3e53dc

AES编码

U2FsdGVkX18tl8Yi7FaGiv6jK1SBxKD30eYb52onYe0=

有大小写字母和数字组成;

栅栏密码

一般有一长串字母的都有可能

维吉尼亚密码

一半会得到一长串字母和一个有意义的单词,这个单词就是密钥

Ook密码

只出现!?.

Cow密码

只出现moo的大小写组合

brainfuck

只出现><±.[]

我没有列举完,但是做一般misc编码题,这些已经足够了。

回到题目5a6d78685a33745a6233566651484a6c58334d77583264766232516866513d3d,观察一下,这不就是base16吗,有数字且字母只有a到f。那给它解密,

 可以看到是双层加密,再利用base64解密,就可以得到结果。

        2、有关txt的题目。

        常见的题是我们下载的附件是一个txt文本文件。

        (一)txt中含有编码,这里使用上文中的“1、题目直接给了编码”来解题。

       

        (二)txt中有隐藏的数据。

        由于我找不到buuctf的这类题了,所以这里就不给图片了。

        迷惑性在于,你打开了这个txt,里面什么都没有,看起来就是空白,但是你按下键盘中的ctrl+a时,却可以看到有东西(大部分隐藏的都是摩斯编码),这里我们需要利用到一个工具:Sublime Test(一个文本文档编译器),可以看清楚隐藏的数据,然后通过解密得到的摩斯编码得到flag。

        (三)ntfs流。

        当你对这个txt使用各种方法还是毫无头绪时,就要想到ntfs。

        这里也需要利用到工具ntfsstreamseditor,使用方法建议百度,常见的使用完ntfsstreamseditor后会得到flag,难一点的会得到一个pyc文件。        

        3、gif考点。

        下载附件解压缩后得到一个有趣的gif文件,不管它好不好看,先扔进stegsolve里再说,比较简单的gif题,利用stegsolve中Frame  Browser进行gif一帧一帧播放查看不同。

        gif的题要么简单,要么难得一批。

        利用好stegsolve这个神器,gif不用愁。

        4、压缩包考点。(需要用到010editor或者winhex,后面图片的考点也要用到)

        最常见的是压缩包的伪加密和弱口令;稍微难点的题就是CRC32爆破(用于压缩包中的zip内容较短且数量很多的时候);或者ARCHPR掩码爆破(已知密码的几位,其余输入“?”来代替,然后进行爆破)。

        (一)伪加密。

        

 

 详细解释可以看zip伪加密_啊哦的博客-CSDN博客或者[CTF]zip伪加密_林毅洋-CSDN博客_ctf zip伪加密

 前面大佬的博客讲解了zip有关的内容,后面的博客讲解了zip伪加密。

这里用到的是神器010 editor或者winhex,修改好伪加密的zip后保存,然后打开zip就没有加密了,同时你就可以看到zip中的内容。

       

        (二)弱口令。

        解法:爆破。

        涉及到弱口令的题目,会有提示或者给出字典,我们可以使用ARCHPR对zip进行密码爆破,详细操作可以百度或者在csdn里查找操作教程。

            5、图片考点(上面说到了这里要用到010editor或者winhex)

        (一)鼠标右键查看属性,最简单的题目是属性里备注给出了flag或者各种编码(编码解法在最上面我说过的)

        (二)图片中隐藏了东西。

        使用010editor打开,观察文件头和文件尾。下面给出了常见的文件的文件头和文件尾。

JPEG (jpg): 文件头,FF  D8  FF;文件尾,FF  D9。

PNG (png): 文件头,89  50  4E  47; 文件尾,AE  42  60  82。

GIF (gif): 文件头,47  49  46  38; 文件尾,00  3B.

ZIP Archive (zip): 文件头,50  4B  03  04;文件尾,50  4B.

RAR Archive (rar), 文件头: 52  61  72  21。

Wave (wav): 文件头,57  41  56  45。

AVI (avi): 文件头,41  56  49  20。

MPEG (mpg): 文件头,00  00  01  BA。

MPEG (mpg):文件头,00  00  01  B3。

Quicktime (mov): 文件头,6D  6F  6F  76。

 

 可以看到1.png这个图片的文件头,那我们现在需要寻找文件尾,按ctrl+f,查找文件尾AE  42  60  82,如果图片里隐藏了数据,那么文件尾后就会藏有文件:大多数时候都是pk开头的文本格式,这就是压缩包,所以把这个图片扔到binwalk或者foremost里分离一下(嫌麻烦的可以直接将这个1.png文件改后缀),如果是隐藏了zip,直接将1.png改名为1.zip。

图片隐写:比如一个jpg打开开头FF D8 FF 结尾FF D9,但是中间部分含有FF  D9

涉及到分离时,binwalk用不了的时候一定要尝试foremost,

Binwalk无法分离文件头和文件尾正确的文件,比如开头FF D8 FF 结尾FF D9

但是foremost可以分离文件中含有的文件
————————————————
版权声明:本文为CSDN博主「comeinthis」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/comeinthis/article/details/120389008

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CTFMiscellaneous(简称Misc)是指一类涵盖了多个领域的目,常见的包括密码学、网络协议、二进制分析等。 在CTF比赛,解决这类目的方法主要有以下几种: 1. 阅读目描述:首先要仔细阅读目描述,通常会提供一些线索或提示,例如目类型、目背景或所需的技术知识。这些大致的信息能够帮助你确定解题方法的方向。 2. 分析目附件或源代码:如果目提供了附件或源代码,要仔细分析其的内容。有时可能需要进行逆向工程、二进制分析或查找隐藏信息。需要注意的是,不同目类型可能需要使用不同的分析工具和技术。 3. 猜测和尝试:在整个解题过程,可能需要多次猜测和尝试。例如,对于密码学类目,尝试使用不同类型的密码学算法进行解密;对于网络协议类目,尝试使用Wireshark等工具进行数据包分析。 4. 查找前人的经验:CTF解题是一个积累经验的过程,很多目类型都有经典解法,可以通过学习前人的经验来提高解题效率。可以参考CTF比赛的writeup、CTF讨论论坛或CTF相关的学习资源等。 5. 团队合作:在解题过程,可以与队友或其他选手进行合作,分享解题过程的思路和发现。这样可以锻炼团队合作的能力,也能够快速找到解题思路或解题方法。 综上所述,CTFMisc目的解题方法主要包括阅读目描述、分析附件或源代码、猜测和尝试、查找前人的经验以及团队合作等。通过不断学习和实践,提高解题的技巧和经验,才能更好地应对各种Misc目的挑战。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值