MISC学习第六天

今天学习的题目是流量分析题,特点是将数据信息进行压缩后再进行传输。

题目:找到传输的秘密

用wireshark打开流量包以后发现有很多协议和数据包,这里看到有http的,并且还有404和200的响应包,所以就跟踪一下这个响应200的数据包,发现如下信息:

有一个base64编码的字符串

在请求中有GET /?c=print_r(gzcompress(file_get_contents(base64_decode(%22ZmxhZy50eHQ%22))));这样一串代码,我先解码“ZmxhZy50eHQ”,发现是flag.txt,那就一定是从这里入手,在响应的数据中截取十六进制,得到如下内容

响应内容

用binwalk进行分析后发现是一个zlib的压缩,想我好长时间想要解这个压缩都没有成功,后来回过头来看这个请求php代码发现这里有一个gzcompress()函数,查看了一下帮助

它是给字符串进行zlib压缩格式的函数

在帮助文档中有一个是函数应该是解压函数(由于我php还是不很熟悉,所以这里就照着上面的请求字符串编写)

解压函数

代码如下:

$a = file_get_contents('flag.txt');

echo gzuncompress($a);

?>


flag值

总结:

在流量分析题中,有时流量包中可以用binwalk就可以提取出文件来,但有时文件是包含在流量的十六进制中,要用对流量包进行分析后才可以提取出文件来。zlib解压文件它是需要特定的解压函数才可以进行解压的,所以我们需要对流量包进行仔细分析才能很快的找到flag。

你可能感兴趣的:(MISC学习第六天)