ctfshow月饼杯misc1_共婵娟

23 篇文章 14 订阅
本文详细记录了一次CTF比赛中解决一个多层解密挑战的过程,从ZIP密码破解开始,经过流量包分析、零宽字符隐写、Base64解码、Emoji解密到最终的Base62转换,每一步都需要深入理解和巧妙操作。通过这个挑战,作者展示了网络安全和信息隐藏技术的实践应用。
摘要由CSDN通过智能技术生成

不得不说,la师傅出的misc题tql
对我这种才学一两个月的新人简直不讲武德
层层套,层层解密
感谢DonmeN一起前进和提供USB流量思路

misc1_共婵娟
但愿人长久,千里共婵娟
MISC之王争夺战!
两密一一对应,填入神秘代码
@⎝Lazzaro⎠师傅供题
hint1:神秘代码中有东西缺失,填补后开阔思维, / 仅是分隔线
hint2:https://pan.baidu.com/
hint3:在这里插入图片描述

有了hint2其实就用不了hint1了,等会再讲。

第一层:zip密码猜测
下载得到附件,发现密码加密
在这里插入图片描述

winhex查看发现没有伪加密,所以想办法得到zip密码
all-number和long。emmm
思考了一会儿,尝试将字母对应的数字填进去(A=1,B=2……)
279121518192122
解压得到Orz.jpg,有趣的地方才刚刚开始。

第二层:寻找流量包解压密码
拿到图片后,尝试foremost分解一下,分解出了zip包,打开一看需要密码,那么图片肯定藏的有密码
查看jpg的文件尾,就是刚刚那个zip,然后我看了看属性,发现高和宽
在这里插入图片描述
有问题,按道理来说,这种图应该是方方正正的吧,改一下高度试试
204的十六进制是CC,所以在winhex搜索00CC,随便改一个比如01CC
在这里插入图片描述

改了之后再查看图片
在这里插入图片描述
得到解压密码JZHUHDGVC
得到流量包:mysterious.pcapng。

第三层:USB流量包分析
打开附件,得到流量包,发现全是USB协议
USB协议怎么那么多,那么杂呢?
闻了一下la师傅,la师傅说那些可能是在出题的时候混进去的
好家伙,卡了那么久的流量包,就应该按照正常思路去做。
这里参照的是http://www.ga1axy.top/index.php/archives/22/
而且发现中间有很多长度34,35,36之类的
分别查看一下
在这里插入图片描述最后发现当长度为35的时候满足键盘流量(8字节),kali下用指令提取出来并分隔成2byte形式

kali下提取len=35指令:tshark -r mysterious.pcapng -T fields -e usb.capdata -Y frame.len==35 >out.txt

得到
在这里插入图片描述
这里讲一下 前面的20和00
下方图片来源:记一次CTF的USB流量分析
在这里插入图片描述

20转换成二进制是00010100
对应bit3和bit5
而按下shift时,打出来的是大写
(02也是,转二进制是00000010,bit1)
在这里插入图片描述
所以用脚本将键盘信息提取出来是

1J9dhfZlHcgU1cHdnDG4VCw/dmdm(已经删除了<del>)

根据hint2和百度网盘分享长度可知,前面正是分享的链接,而后面是提取的密码,访问即可得到下一步。

第四层:零宽字符隐写
下载百度盘的附件,可以得到中秋节的来历、由来、传说和习俗.txt
用winhex一看就发现了零宽字符。kali下查看
在这里插入图片描述
U+200b U+200c U+200d U+200f
见f识人
全部复制下来,解密https://offdev.net/demos/zwsp-steg-js

得到一长串含有等号的大小写跟数字
在这里插入图片描述
第五层:base64隐写
为了确定这确实是base64,拿去base64解密第一行
在这里插入图片描述确实是,那么我将一串base64放进txt,使用替换功能正则匹配将==替换成==\n
这样一来,方便进行解密,使用脚本解密得到
在这里插入图片描述
将最后那一串拿去base64解码,发现不对,长度为251却没有等号,进行base58解码发现解码成了emoji。
在这里插入图片描述
第六层:伤脑的emoji
得到emoji后,进行了大量的尝试和翻阅,最后发现
http://taqini.space/codemoji/#/encrypt
这个符合条件,但是遇到两个问题

第一:只能编码无法手动解码,除非分享链接,但是解码内容固定,我当时想把密文加密再然后再去解密,但是这样并不知道加密方式,无法解密
第二:密文是加密形式,不知道是那种加密方式,这里就无法进行正确的解密

最后,在重重又重重又重重又重重又重重又重重又重重又重重的努力下,找到了个爆破的神器,大小仅100k不到。
https://github.com/pavelvodrazka/ctf-writeups/tree/master/hackyeaster2018/challenges/egg17

下载下来,打开cracker.html,输入你的emoji,直接爆破,他会给你正确的加密方式和密文
在这里插入图片描述得到加密方式和密文后,去官网http://taqini.space/codemoji/#/encrypt进行检验,发现正确,这一步终于大功告成,flag就在眼前?

第七层:奇怪的base62
这里也是一大卡点,解出来了之后,放不同的平台都解不出来,但是能确定的是这不是64或者58
长度46,已经不满足base64了(除非自己添加==)
字符串中含有字母l,不满足58
有大小写数字的就只剩下base62
但是这里遇到瓶颈,找了几个base62平台,解出来分别是数字、数字、乱码、直接报错,只有CyberChef解出来是正确的(之后补充原因)
在这里插入图片描述
第八层:仿射密码

hint3:y=ax+b,a是斜率3,b是常数6

这里得注意,他得到的值包含大小写和数字,有的平台或者软件是解不出来的,要找的正确的工具,这里还是用CyberChef。
在这里插入图片描述
得到flag
套娃好玩,希望简单亿点点。

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值