0x00 前言
最近做了一道流量分析的题目,从里面了解到有关SSL以及FTP协议的一些知识点,跟大家分享一下,希望大家也能从中学习到一定的东西。
0x01 题目描述
一家安全公司开发的人工智能系统已经叛变,为防止机械大战。我们要找到叛变AI的计划,所幸我们在敌人后方安插了间谍,他已经捕获了敌人的通信报文,你所需的所有内容应该都能从中找到。答案格式INS
题目链接:https://pan.baidu.com/s/1WAK2mGVUDDNpCBrd0nekrA 密码:2tp8
0x02 正文
首先我们做流量分析的题目,一般先看统计里面的协议分级,这里我们可以看到看应用层的协议主要有smtp,ssl,以及很少的http,ftp
SSL协议是一种处于应用层和传输层之间的加密协议,而且是四次握手协议。更详细的描述可以看下下面这篇文章
https://blog.csdn.net/volcan1987/article/details/8996220
这里我们还需要了解一点的是当我们作为一个中间人抓包的时候,其实很多http协议被封装在SSL协议里面,在没有导入证书之前我们是看不到加密的http的
这里我们还看到下面的两个FTP协议,这里我们就来了解一下FTP协议,默认情况下FTP协议使用TCP端口里面的20和21端口,其中20用于传输数据,21用于传输控制信息,简单点理解21就是用来传输登录信息之类的,20端口就是用来传输验证完以后的信息。所以上图的FTP Data对应的就是20端口,而下面的File Transfer Protocol对应的就是21端口。
根据上面的知识点,我们作为中间人并不知道秘钥,这里就没有头绪了,突然想起好像还有FTP协议没有查看,再想想用邮箱传东西有些大的文件不可能只用smtp协议传输,可能利用了FTP传输了。
过滤FTP再追踪流,发现里面有几个点可以利用的
用户名,密码,域名,还有一个密钥,这个域名尝试过不能够登录,只能从那个文件名为ssc.key的密钥下手
而且在这个流里面发现是21端口传输的,会像上面提及的知识点,可能文件详情在20端口,这里我们用ftp-data过滤,我们也可以用tcp.port==20过滤,追踪流发现里面是一个私钥文件
保存下来并命名为ssc.key
下面我们就可以看SSL协议里面的内容了
接着正是导入密钥文件
编辑好信息
因为我们知道flag的格式,所以直接用命令http contains "INS"过滤得到结果。
领取专属 10元无门槛券
私享最新 技术干货