解题过程

首先要在众多流量中甄别出DNS流量中隐藏有关键信息,普通流量中DNS流量不会有这么多,其次也可以通过全局搜索secret关键字找到提示becareful_rainbow,根据rainbow关键词可以发现,DNS流量中请求了非常多域名后缀为rainbow.bubble的流量。
image.png
通过过滤:tcp and frame contains “secret”可以找到TRUESECRET。
image.png
image.png
这一步可以使用脚本提取,也可以使用tshark命令提取全部的dns.qry.name,tshark -Y misc3.pcap -T fields -e dns.qry.name -r ‘udp.dstport==53’ > domain.txt可将DNS中所有解析的域名存放于domain.txt中,删除所有的43.9.227.10.in-addr.arpa即可得到纯净的域名请求记录。
image.png
脚本提取二级域名前缀,组成十六进制保存成PNG图片可以得到一张二维码(datamatrix格式)。

  1. print("".join([j.split(".")[1] for j in[i.strip() for i in open(r"domain.txt",'r').readlines() if i isnot"\n"]]))

然后将十六进制放到010editor中保存为PNG,然后解码:

image.png
观察到的秘钥ecb_pkcs7可知是AES加密,用这个秘钥去解密搜索关键词secret得到的密文(密文有五段,组合起来urldecode即可解密),得到sslkey.log,需要选定模式为:ECB-pkcs7-256。
第一段密文:
image.png
AES解密。
image.png
得到日志后导入wireshark解密https的流量。
image.png
image.png