0x00 已知条件
已知条件依然是一个流量包,解压缩即可得到。
0x01 思考过程
- 首先使用类似“Strings”大法的方法直接搜索关键词“flag”,无果。
它只作为变量出现在许多JS函数中,并不明文存在于流量包中。 - 既然是“Webshell”分析,flag同样是MD5形式,想到很可能仍与HTTP有关。
下面过滤只显示HTTP数据帧。
- 发现大部分是GET,打开完整url后都是各种谜一样的无关图片,比如:
- 心塞,不去管它。
第一个包是POST请求,里面有个很明显的base64加密串:
解码:
[Python]
import base64
print base64.b64decode("MTQ2MDA3NTkyODYzMToyMzcyMTkyNQ==")
得到结果:
1460075928631:23721925
多半没有帮助,放弃。
- 发现POST请求包很少,而居多的GET都没有什么特别的内容。
一直看到最下面,发现一个数据帧带有“flag”这个词,然而并未承载特别的载荷:(
最后一个POST包,最下面出现了其他包没有的“HTML Form URL Encoded”字段:
用同上的方法尝试base64解码,结果如下:
https://dn.jarvisoj.com/challengefiles/AbTzA2YteFjGhPWCftraouVD3B684a9A.jpg
进入该网站,出现一个二维码,扫进去得到flag。