记一道流量包引发的思考
很久没有更新干货了,作为一个目前还在役的 CTF
选手,肯定要讲解一些有意思的赛题啊,一方面是自我的总结,一方面也是给大家一点学习思路,如何去分析一道赛题,我不会去重复的解读一些基础知识,更多的基础知识请参看 ctf-wiki
上面的内容,目前我是主要负责维护 Web
和 Misc
部分内容。本文也会在后续同步更新到 ctf-wiki
上,当然也欢迎大家一起来 Contribute
。
ctf-wiki
地址:https://ctf-wiki.github.io/ctf-wiki/
本文给大家带来的赛题是来自百度杯的一道流量包分析的赛题。
赛题地址为:https://static2.ichunqiu.com/icq/resources/fileupload/CTF/BSRC/2017/BSRC3-1/findtheflag.cap
首先我们拿到这样一道流量包的题目,题目名称为 find the flag
。这里面给了很多提示信息,要我们去找到 flag
。
第一步,搜索 flag 字样
我们先去搜索看看流量包里面有没有 flag
。我们使用 strings
命令去找一下流量包, Windows
的朋友可以用 notepad++
的搜索功能去寻找。
搜索命令如下:
strings findtheflag.cap | grep flag
搜索结果如下:
我们发现搜出了一大堆的东西,我们通过管道去过滤出 flag
信息,似乎没有发现我们所需要找的答案。
第二步,流量包修复
我们用 wireshark
打开这个流量包
我们发现这个流量包出现了异常现象,我们可以修复一下这个流量包。
这里我们用到一个在线工具:http://f00l.de/hacking/pcapfix.php
这个工具可以帮助我们快速地将其流量包修复为 pcap
包。
我们对其进行在线修复。
修复完毕后点击 Get your repaired PCAP-file here.
即可下载流量包,然后我们用 wireshark
打开。
既然还是要找flag,我们可以先看看这个流量包。
第三步,追踪TCP流
我们追踪一下TCP流,看看有没有什么突破?
我们通过追踪TCP流,可以看到一些版本信息,cookie等等,我们还是发现了一些很有意思的东西。
从 tcp.stream eq 29
到 tcp.stream eq 41
只显示了 where is the flag?
这个字样,难道这是出题人在告诉我们 flag
在这里嘛?
第四步,查找分组字节流
我们追踪到 tcp.stream eq 29
的时候,在 Identification
信息中看到了 flag
中的 lf
字样,我们可以继续追踪下一个流,在 tcp.stream eq 30
的 Identification
信息中看到了 flag
中的 ga
字样,我们发现将两个包中 Identification
信息对应的字段从右至左组合,恰好就是 flag
!于是我们可以大胆地猜测, flag
肯定是藏在这里面。
我们直接通过搜索->字符串搜索->分组字节流->搜索关键字 flag
即可,按照同样的方式连接后面相连数据包的 Identification
信息对应的字段,即可找到最终的flag!
下面是搜索的截图:
所以最终的 flag
为:flag{aha!_you_found_it!}
作 者:Angel_Kitty
出 处:https://www.cnblogs.com/ECJTUACM-873284962/
关于作者:阿里云ACE,目前主要研究方向是Web安全漏洞以及反序列化。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!
欢迎大家关注我的微信公众号IT老实人(IThonest),如果您觉得文章对您有很大的帮助,您可以考虑赏博主一杯咖啡以资鼓励,您的肯定将是我最大的动力。thx.

我的公众号是IT老实人(IThonest),一个有故事的公众号,欢迎大家来这里讨论,共同进步,不断学习才能不断进步。扫下面的二维码或者收藏下面的二维码关注吧(长按下面的二维码图片、并选择识别图中的二维码),个人QQ和微信的二维码也已给出,扫描下面👇的二维码一起来讨论吧!!!

欢迎大家关注我的Github,一些文章的备份和平常做的一些项目会存放在这里。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
2017-10-31 CTF---Web入门第三题 这个看起来有点简单!
2017-10-31 队列的存储结构的实现(C/C++实现)